web-dev-qa-db-ja.com

btrfsルートファイルシステムのスナップショットを作成する方法(/のスナップショット)?

私はFedora20を持っていて、それをインストールしたとき、多くの理由で、主にスナップショットを利用できるようにするために、ファイルシステムとしてbtrfsを使用することを選択しました。

しかし、_/_のスナップショットを作成できないようです。この_btrfs subvolume snapshot /home/ /snap/home_のようにホームフォルダー(btrfsでもあります)のスナップショットを作成できますが、_/_と記述して_btrfs subvolume snapshot / /snap_のスナップショットを作成しようとすると、ERROR: incorrect snapshot name ('/')が出力されます。

/はbtrfsだと確信しています。 gparted

サブボリューム出力の一覧表示:

_# btrfs subvolume list /
ID 256 gen 9562 top level 5 path home
ID 258 gen 9562 top level 5 path root
ID 306 gen 9517 top level 258 path snap/home/2014-08-15_00:44:00
_

Btrfsを使用している場合でも、ルートフォルダーのスナップショットを作成することはできませんか?

2
lindhe

/ snapの下にスナップショットの名前を指定する必要があります。

$ btrfs subvolume snapshot / /snap/root

名前を指定しない場合、btrfsはソースサブボリュームの名前を使用します。あなたの場合、ソースサブボリュームは/と呼ばれますが、これはスナップショットの有効な名前ではありません。

usage: btrfs subvolume snapshot [-r] <source> <dest>|[<dest>/]<name>

    btrfs subvolume snapshot [-r] [-i <qgroupid>] <source> <dest>|[<dest>/]<name>

    Create a snapshot of the subvolume
    Create a writable/readonly snapshot of the subvolume <source> with
    the name <name> in the <dest> directory.  If only <dest> is given,
    the subvolume will be named the basename of <source>.

    -r             create a readonly snapshot
    -i <qgroupid>  add the newly created snapshot to a qgroup. This
                   option can be given multiple times.
7
user154424

ルートシステムを保持したい場合は、これを実行することをお勧めします

mkdir /. snapshots
btrfs subvolume snapshot / /.snapshots/24072018
nano /.snapshots/24072018/etc/fstab

UUID=XXXXXXXX     /    btrfs    defaults, subvol=root/.snapshots/24072018  0      1

最近のFedoraでは、システムをbtrfsでフォーマットしてrootというサブボリュームを作成するのが一般的です。したがって、fstabでsubvolオプションが見つからなかった場合は、subvolからrootを省略してください。

次のステップは、システムを再起動することです。システムが起動すると、grubの起動メニューが表示されます。

  • デフォルトのエントリでeを押します
  • Fedoraがサブボリュームにインストールされている場合は、subvolオプションが見つかるまで下にスクロールします。そうでない場合は、rootflagsオプションを見つけて、次のように記述する必要があります。

    • rootflags=subvol=.snapshots/24072018

      または、システムがサブボリュームにインストールされている場合:

    • rootflags=subvol=root/.snapshots/24072018

システムがサブボリュームにインストールされていない場合、grubエントリにrootflagsオプションが表示される可能性は低いため、これを機能させるには、「ro」パラメータの横にrootflagsパラメータを記述する必要があることに注意してください。

システムを正常に起動した後、ターミナルを開き、rootアカウントにログインし、変更を永続的にする場合はgrub構成を更新します。

1
AHMAD HAGAG