特定の量のディスク容量を割り当てずにbtrfsサブボリュームを使用して複数のLinuxディストリビューションを試すことはできますか?

特定の量のディスク容量を割り当てずにbtrfsサブボリュームを使用して複数のLinuxディストリビューションを試すことはできますか?

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.cfg1 つのエントリを追加します。

Debian通常、私はOpenSUSEエントリをコピーし、名前()を変更し、linuxDebianカーネルと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=

おすすめ記事