ext4などのファイルシステムを使用して新しいLinuxディストリビューションを使用する前に、既存のパーティションを縮小してからディストリビューションをインストールできるように、特定のサイズにロックされた新しいパーティションを作成する必要があります。これにはいくつかの欠点があります。
- 一定量のストレージをすぐに展開にコミットする必要があります。
- このストレージスペースを使用しないと、再割り当てが難しくなります。
- ディスク操作は少し面倒です。特に、隣接する空きスペースを作成するためにアイテムを移動することがよくあります。
BTRFSサブボリュームはこの問題を解決できますか?実際、ディスク全体をボリューム/パーティションとして持ち、ブート、スワップ、ルート、およびプライマリパーティションがサブボリュームとして存在するため、占有スペースを占有できますか?いつでもサイズがゼロに初期化された新しいサブボリュームを作成できますか?本当ですか?
ベストアンサー1
部分的にやってみました。
OpenSUSEのインストール(btrfs
デフォルトで使用されています)で、次の操作を行いました。
- サブボリューム(
btrfs subvol create /debian
)が作成されます。 - インストールする
debootstrap
、 deboostrap --arch=amd64 stable /debian http://deb.debian.org/debian/
、- で、カーネルを
chroot /debian
インストールしbtrfs-tools
てパスワードを設定してください! - OpenSUSE ルートシェルに戻り、修正し、
/boot/grub2/grub.cfg
1 つのエントリを追加します。
Debian
通常、私はOpenSUSEエントリをコピーし、名前()を変更し、linux
Debianカーネルとinitrdファイル(および行)rootflags=subvol=@/debian
を使用します。 GRUBはデフォルトのルートFSを検索するため、両方のファイルが存在します.)linux=
initrd=
/debian/boot/
再起動... Debian サブボリュームから Debian を起動する Debian ブートエントリがあります。デフォルトでは何もマウントされませんが、たとえばOpenSUSEサブボリュームをマウントしてDebianでも使用できるようにすることmount -o subvol=@/home /dev/sda2 /home
ができます。/home
もちろん編集を行うと/etc/fstab
内容は永久に維持されます。 (そしてUUIDを使用する方が良いです)。
このインストールは完全に満足できません。 Suseでカーネルを更新すると、GRUB Debianエントリが削除されます。また、Debianでカーネルを更新してもGRUB設定は更新されません。 (GRUB os-proberはサブボリュームではなくパーティションのみをスキャンします。)
ただし、私の設定は、同じパーティションに複数のLinuxインストールをインストールできることを示していますbtrfs
。
OpenSUSEはルートサブボリュームの名前を指定します@
。我々はそれを見るために使用することができますbtrfs list /
。異なるディストリビューションで異なるルールを使用しているかどうかわかりません。最初の行はbtrfs subvol show /debian
使用する名前を提供します。rootlags=subvol=