Eine ähnliche Frage existiert, aber die Lösung (mit mv
) ist schrecklich, weil sie in diesem Fall eher als "Kopieren, dann Entfernen" als als reines "Verschieben" funktioniert.
Also habe ich einen Pool erstellt:
zpool create tank /dev/loop0
und synchronisierte meine Daten von einem anderen Speicher dort direkt, so dass meine Daten jetzt in sind /tank
.
zfs list
NAME USED AVAIL REFER MOUNTPOINT
tank 591G 2.10T 591G /tank
Jetzt habe ich festgestellt, dass sich meine Daten in einem untergeordneten Dateisystem befinden müssen, nicht /tank
direkt im Dateisystem.
Wie verschiebe oder benenne ich das vorhandene Root-Dateisystem um, damit es zu einem untergeordneten Element im Pool wird?
Einfaches Umbenennen funktioniert nicht:
zfs rename tank tank/mydata
cannot rename to 'tank/mydata': datasets must be within same pool
(Übrigens, warum beschwert es sich, dass sich die Datensätze nicht innerhalb desselben Pools befinden, wenn ich tatsächlich nur einen Pool habe?)
Ich weiß, dass es Lösungen gibt, bei denen alle Daten kopiert werden ( mv
oder der gesamte Datensatz an ein anderes Gerät und zurück gesendet wird), aber sollte es keinen einfachen, eleganten Weg geben?
Ich stelle nur fest, dass ich mich derzeit nicht um Schnappschüsse kümmere (es gibt noch keine, um die ich mich kümmern muss).
quelle
Angesichts des von @USDMatt dokumentierten Problems ist das Senden / Empfangen von ZFS wahrscheinlich der beste Weg.
Achten Sie beim Ausführen von rm -rf darauf, dass Sie den Mount-Punkt nicht ändern, wenn Sie andere Dateisysteme in Ihrem Tank-Zpool haben. Sie möchten den Inhalt des neuen Dateisystems (/ tank / newname) oder anderer untergeordneter Dateisysteme (/ tank / *) nicht versehentlich rekursiv entfernen.
quelle
Ich glaube nicht, dass es einen einfachen, eleganten Weg gibt ... obwohl Sie einfach Ihren Mountpoint ändern könnten ...
Oder benennen Sie den Tank um und montieren Sie ihn dort, wo Sie ihn brauchen ...
Entweder das, oder erstellen Sie ein Dateisystem am richtigen Ort und senden / empfangen Sie cp, mv oder zfs ...
quelle