Wie mache ich einen BTRFS-Snapshot beschreibbar?

37

Gemäß dem Patch für Readonly-Snapshots von btrfs ist es möglich, "einen Snapshot im laufenden Betrieb schreib- und lesbar zu machen". Also sollte ich in der Lage sein, meinen schreibgeschützten Schnappschuss btrfs snapshot -rirgendwie beschreibbar zu machen.

Aber weder die Hilfeseite für das BTRFS-Subvolumen noch ein anderer Teil dieser Hilfeseite scheint eine Möglichkeit zu bieten, dies zu tun.

derobert
quelle
Als Workaround können Sie einen Writeble-Shapshot Ihres Readonly-Snapshots erstellen. (Ich mache das, wenn ich nicht das Internet habe, um diese Frage
nachzuschlagen

Antworten:

42

Die btrfs-Manpage kann den propertyUnterbefehl nicht dokumentieren , den ich gefunden habe, indem ich die Quelle überprüft habe. Es ist auch in btrfs --help.

Um einen Snapshot auf Lese- und Schreibzugriff zu setzen, gehen Sie folgendermaßen vor:

btrfs property set -ts /path/to/snapshot ro false

Ändern Sie dies in, um trueden Schreibschutz zu aktivieren.

Sie können auch verwenden list, um die verfügbaren Eigenschaften anzuzeigen:

btrfs property list -ts /path/to/snapshot
ro                  Set/get read-only flag of subvolume.

-tsGibt den Typ des Objekts an, an dem gearbeitet werden soll. Bedeutet Subvolume. Andere Optionen sind f(Dateisystem), i(Inode) und d(Gerät). Wenn Sie nicht angeben, werden alle zutreffenden (für Liste) angezeigt oder es wird versucht, für get / set zu raten.

Bearbeiten: In den neuesten btrfs-Tools gibt es eine btrfs-propertyHilfeseite, die diesen Unterbefehl dokumentiert, obwohl er in der Haupthilfeseite überhaupt nicht erwähnt wird. Es ist auch als btrfs-Eigenschaftsseite im Wiki verfügbar .

(Hinweis: Dies erfordert ein neues btrfs-Tool. Offensichtlich müssen Sie auf Debian Wheezy das aktualisierte von wheezy- backports installieren; danke artfulrobot ).

derobert
quelle
2
Sie werden auch feststellen, dass die Kernel-APIs zwar weiterentwickelt werden und Distributionen mit immer neueren Kerneln ausgeliefert werden, die btrfs-toolsauf einigen gleichen Distributionen gefundenen jedoch nicht immer ausgerichtet sind. So mussten Sie manchmal die neuesten btrfs-Tools aus dem Upstreams-Git-Repository kompilieren, um die btrfs-Funktionen Ihres Kernels nutzen zu können (zumindest war dies vor einigen Jahren sehr häufig der Fall).
Stéphane Chazelas
@ StéphaneChazelas Ja, auf jeden Fall. Obwohl ich in diesem Fall auf Debian-Tests bin, die btrfs-tools 3.14 haben, also nicht so wahnsinnig alt.
derobert
1
@mikeserv In der Tat scheint 3.14.2 sie aufzuteilen. Ich habe 3.14.1, das laut git von kernel.org nur ein paar Monate älter ist . Aber auch in der aktuellen Manpage werden Eigenschaften nicht erwähnt. Ich habe auch die aktuelle Version im Wiki überprüft (und verlinkt). Es stellt sich jedoch heraus, dass es sich hierbei um eine separate, nicht verknüpfte Manpage handelt .
Derobert
Ich musste btrfs-tools von Wheezy-backports installieren, damit dies funktionierte.
Artfulrobot
@artfulrobot danke, Anmerkung zur Antwort hinzugefügt.
Derobert