GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie benenne ich ein BTRFS-Subvolume um?

Nur mv es. Das ist der empfohlene Weg in der Ubuntu-Community-Dokumentation.

Und um weiter zu verdeutlichen, warum dies der richtige Weg ist, hier ein Zitat aus dem btrfs-Leitfaden für Systemadministratoren:

Schnappschüsse

Ein Snapshot ist einfach ein Subvolume, das seine Daten (und Metadaten) mit einem anderen Subvolume teilt, indem es die COW-Fähigkeiten von btrfs verwendet. Sobald ein [beschreibbarer] Snapshot erstellt wurde, gibt es keinen Unterschied im Status zwischen dem ursprünglichen Subvolume und dem neuen Snapshot-Subvolume. Um zu einem Snapshot zurückzukehren, unmounten Sie das geänderte ursprüngliche Subvolume und mounten Sie den Snapshot an seiner Stelle. An diesem Punkt kann das ursprüngliche Teilvolumen gelöscht werden, falls gewünscht. Da ein Snapshot ein Subvolume ist, sind auch Snapshots von Snapshots möglich.


Es gibt einige wichtige Dinge zu beachten. Die Namen:

btrfs Subvolume - unabhängiger Datencontainer inside Dateisystem. Es wird als Verzeichnis dargestellt des bestehenden FS. Wenn Sie ein neues Subvolume erstellen, ist es leer und bereit, den logischen Datenblock im Dateisystem zu verwenden. Sehr praktisch dort, wo Daten logisch getrennt werden sollen, z. unterschiedliche VMs oder unterschiedliche Clients auf unterschiedlichen Subvolumes. Dies erlaubt very fast Entfernung von alle logischer Datenblock mit nur dem Subvolume-Löschbefehl.

btrfs Snapshot - eine Kopie von existing Subvolume mit all seinen Daten in dem Moment, in dem der Snapshot erstellt wurde. Kann als Betriebssicherung zum Zurücksetzen von Einstellungen oder Änderungen verwendet werden, z. Subvolume-Snapshot erstellen, Änderungen vornehmen (VM oder Daten), testen, ob alles in Ordnung ist, nach einer gewissen Frist Snapshot entfernen.Wichtig zu beachten:Snapshots können nur gelesen werden (-r Schalter) und können somit als Inkrementblöcke von FS-Änderungen verwendet und möglicherweise auf ein absolut anderes BTRFS übertragen werden!

Aktuelle (2016-12-30) BTRFS-Einschränkungen:

Kopieren oder Verschieben von Daten zwischen Subvolumes, z. mv dir1/dataset1 dir_subvolume1/ erzeugt alle realen io, um Daten auf ein anderes Subvolume zu kopieren und im Falle einer Verschiebung vom Original zu entfernen. Und sehr Effizientes Kopieren von Tonnen von Daten durch einfaches Erstellen von Verweisen und somit Verwendung der COW-Funktion von BTRFS:

cp -a --reflink=always dir1/dataset1 dir_subvolume1/

und bei Bedarf:

rm -rf dir1/dataset1

Read only Subvolume-Snapshot kann umbenannt werden (verschoben mit mv ) auf der vorhandenen Verzeichnisebene, kann jedoch nicht umbenannt/in eine andere Unterverzeichnisebene verschoben werden. z.B. mv /btrfs/subvol_snap1 /btrfs/.snaphots ist nicht möglich, erzeugt wenig erklärten Fehler:mv: cannot move 'subvol_snap1' to '.snapshots/subvol_snap1': Read-only file system .Um einen solchen Snapshot verschieben zu können, müssen Sie einen neuen schreibgeschützten Snapshot eines vorhandenen schreibgeschützten Snapshots an den neuen bevorzugten Speicherort erstellen und dann den alten entfernen:

btrfs sub snap -r /btrfs/subvol_snap1 /btrfs/.snaphots/subvol_snap1
btrfs sub del /btrfs/subvol_snap1

Nur für einfacheres Leben:

btrfs sub list /btrfs

Ich hoffe, dass dies allen neuen btrfs-Fans jede Menge Zeit sparen wird :)


Wenn Sie das Root-Volume in ein verschachteltes Subvolume umbenennen möchten, müssen Sie einen Snapshot erstellen und dann find $ROOT_VOL -xdev -delete ausführen um den vorherigen Inhalt des Root-Volumes zu entfernen. Die umgekehrte Manipulation (Umbenennung eines Subvolumes in das Root-Volume) scheint nicht möglich.


Linux
  1. So benennen Sie ein Verzeichnis unter Linux um

  2. Wie benenne ich eine Datei unter Linux um?

  3. So ändern oder benennen Sie einen Einhängepunkt in Linux um

  4. Wie installiere ich regexp enabled 'rename' auf Fedora?

  5. Wie behalte oder lösche ich einen LVM-Snapshot?

So benennen Sie eine Spalte in MySQL um

So benennen Sie Dateien und Verzeichnisse in Linux um

So benennen Sie Verzeichnisse in Linux um

So benennen Sie Dateien über die Befehlszeile in Linux um

So benennen Sie eine Datei (en) in Linux um

So benennen Sie den MySQL-Datenbanknamen in Linux um