Erstellen eines btrfs-Subvolumes wie @ oder @home

11

Da ich von btrfs fasziniert war, beschloss ich, in einer VM damit herumzuspielen. Die Installation funktioniert hervorragend, solange ich daran denke, /booteine separate Partition einzurichten, und alles scheint gut zu funktionieren.

Was ich tun möchte, ist ein separates Subvolume für Massendaten mit anderen Einstellungen als Dingen wie @und zu erstellen @home. btrfs subvolume create datawerde das für mich tun, aber ich bin neugierig, warum es es immer wieder benennt @/data(oder ähnliche Dinge, wenn ich es versuche /dataoder @data). Gibt es eine besondere Art und Weise die Subvolumes wie zu erstellen @und @homeso meine Daten Subvolume wird zeigen, wie @data? (und: Was ist der genaue Unterschied zwischen den Namensschemata?)


Zusätzliche Information:

  • Ubuntu 12.04.2, läuft als KVM-Gast auf mint15-Host;
  • Kernel 3.8.0-27-generic von Ubuntu-x-swat (seltener Backport);
  • btrfs mit zwei Geräten /dev/sdaund/dev/sdb
  • /dev/sdaund /dev/sdbsind Partitionen auf einer Festplatte, die vom Host-Betriebssystem nicht verwendet werden
akaIDIOT
quelle

Antworten:

13

Seufz , anscheinend habe ich etwas zu früh gepostet, mit ein bisschen Hilfe des allmächtigen Zosma im IRC haben wir herausgefunden, wie das funktionieren soll.

Subvolumes @und @homesind untergeordnete Elemente des btrfs-Stammverzeichnisses, also /nicht das Stammverzeichnis des Dateisystems. Die UUID des btrfs-Stamms wird /etc/fstabzweimal angegeben und stellt die Bereitstellungen für /und bereit /home. Beim Mounten des eigentlichen Stammverzeichnisses des Dateisystems werden die vom Installationsprogramm erstellten Subvolumes angezeigt:

root@box:~# mkdir /mnt/btrfs
root@box:~# mount UUID=f8963df3-1320-4bc0-a125-62be185b029e /mnt/btrfs
root@box:~# ls /mnt/btrfs
@  @home

Also gingen sie dorthin! Das Erstellen eines neuen Subvolumes genau so, wie es das Ubuntu-Installationsprogramm getan hat, ist jetzt einfach:

root@box:~# btrfs subvolume create /mnt/btrfs/@data
Create subvolume '/mnt/btrfs/@data'

Da wir jetzt ein Subvolume im btrfs-Stammverzeichnis anstatt im Root-Dateisystem für die Installation erstellt haben, /data/wird es nicht von selbst angezeigt . Glücklicherweise ist es trivial, den vom Installationsprogramm verwendeten Trick zu kopieren, indem Sie /etc/fstabeinen weiteren Mount untersuchen und hinzufügen für /data:

UUID=f8963df3-1320-4bc0-a125-62be185b029e /data  btrfs  defaults,subvol=@data 0 2

Der letzte Schritt besteht darin, den Einhängepunkt zu erstellen : mkdir /data. Nach einem Neustart wird ein /dataVerzeichnis von einem separaten btrfs-Subvolume bereitgestellt.

… Gewinn!

akaIDIOT
quelle
5

Die Installation funktioniert hervorragend, solange ich daran denke, eine separate Partition zu erstellen / zu starten

Sie benötigen kein separates / boot. GRUB2 kann Linux von einem btrfs lesen und booten.

Ich möchte ein separates Subvolume für Massendaten mit anderen Einstellungen als @ und @home erstellen.

Wenn Sie über das Mounten von Subvolumes mit unterschiedlichen Mount-Optionen sprechen , beachten Sie, dass diese derzeit (November 2013) nicht unterstützt werden: Gemäß den Btrfs-FAQ " Kann ich Subvolumes mit verschiedenen Mount-Optionen mounten? ", Derzeit nur die btrfs-spezifischen Optionen werden nicht unterstützt oder nicht implementiert. Die Entwickler haben jedoch Pläne, es in Zukunft zu implementieren.

btrfs subvolume create data erledigt das für mich, aber ich bin gespannt, warum es immer wieder @ / data nennt (oder ähnliche Dinge, wenn ich / data oder @data versuche).

Standardmäßig erstellt das Ubuntu-Installationsprogramm Ubiquity Subvolumes @und @homedas Dateisystem, und Ihr Ubuntu-Stammverzeichnis befindet sich tatsächlich im Subvolume @.

Gibt es eine spezielle Möglichkeit, Subvolumes wie @ und @home zu erstellen, damit mein Daten-Subvolume als @data angezeigt wird? (und: Was ist der genaue Unterschied zwischen den Namensschemata?)

@und @homesind willkürliche Namen, die vom Installationsprogramm ausgewählt wurden und außerhalb keine Bedeutung haben /etc/fstab. Tatsächlich benenne ich sie normalerweise in spezifischere Namen um, so dass ich viele von Ubiquity installierte Distributionen auf demselben btrfs haben kann, solange ich daran denke, ihre fstabs zu aktualisieren.

Weitere Erklärungen zum Subvolumen unter Funtoo.org - BTRFS .

ignis
quelle
Vielen Dank für eine gründliche Ergänzung hier; viele nützliche Informationen :)
akaIDIOT