web-dev-qa-db-ja.com

14.04サーバーを既存のbtrfsサブボリュームにインストールする

4つのディスクで構成される既存のbtrfs raid1ボリュームがあります。これにはすでにいくつかのサブボリュームが含まれており、そのうちの1つにUbuntuをインストールしようとしています。私は次のことをしました:

mount -o subvolid=0 /dev/sda1 /btrfsroot
btrfs subvol create rootsfs /btrfsroot
btrfs subvol set-default 376 /btrfsroot
mount /dev/sda1 /rootfs   (to ensure I've set the correct id)

ただし、パーティショナーの後にインストーラーがクラッシュします(必要なファイルを/target/から削除できないと言います)。パーティション/dev/sda1/上のbtrfsとしてフォーマットせずに使用するように設定しました。

私はかなりの研究を行ってきましたが、一見すると、既存のbtrfsサブボリュームにUbuntuをインストールすることに関して、ベストプラクティスが何であるかを伝えるのは困難です。私も試しました:

  • /dev/sd[a-d]をまったくパーティション分割せず、btrfsボリュームに追加します。この方法でインストールすると、動作します(/dev/sda/target/に手動でマウントする必要があります)が、再起動時にgrubデバッグシェルでスタックします
  • /dev/sda1として)各ディスクを100メガグラム分分割し、/boot/として使用するmdadm配列を作成します(/dev/s[a-d]2としてbtrfsパーティションを使用)。ここでも、何もありませんが、必要なファイルを/target/から削除できなかったと言って、パーティション分割後にインストーラーがクラッシュします。

私は情報を読みました buntu wiki記事上 そして、Ubuntuのレイアウトを壊すset-defaultについて彼らが言及している問題にぶつかっていると推測しています。私の解釈では、それはインストール後の問題にすぎないと考えていましたが、そこまでは言えません。

ここでのベストプラクティスは何ですか?別のサブボリュームにインストールしたいのは、ドライブ上のUbuntuインストールを他のすべてと区別するためです。データを破壊する危険を冒すことなく、ルートサブボリュームにインストールすることは安全ですか?

2
JamNCheez

免責事項

btrfs RAIDを使用したことはありません。ソリューションは、単一ボリュームのbtrfsルートパーティションでのみテストされます


  1. ルートの候補に/@および/@homeサブボリュームがないことを確認してください。

  2. Ubuntuインストーラーを起動し、ディスクパーティションについて尋ねられたときにotherthingを選択します。

  3. Btrfsパーティションをルートファイルシステムとしてマークしますが、インストーラーによる再フォーマットを許可しない

  4. 必要に応じて、他のすべてのパーティションを配置します。 gptシステムで外部/bootパーティションを使用することを常に選択するため、後でより高度なもの(たとえばbcache)などに移行できます。 (gptでは、必要なだけパーティションを作成できます。そのため、専用の/bootを使用することの本当の欠点はありません。)

  5. インストールを完了します。

インストーラーは、@および@homeサブボリュームを作成します。後でそれらの名前を別の名前に変更できます。/etc/fstab/boot/grub/grub.cfgの両方の新しい名前も必ず更新してください。

Ubuntu 14.04、Mint 16、Mint 15、Ubuntu 13.10およびUbuntu 13.04でテスト済み。

2
Adam Ryczkowski