システムを準備する

システムを準備する

新しい SSD を持っていて、ルート パーティションのファイル システムとして nilfs を使用して 12.04 をインストールしたいと考えています。

それを実行する簡単な方法が見つかりません。12.04 LiveCD から起動すると、nilfs-tools をインストールできます (wget 経由でダウンロードする必要がありました。apt-get ではできなかったようです)。また、mkfs.nilfs 経由でパーティションを nilfs としてフォーマットできました。

しかし、「Ubuntu をインストール」をクリックしてインストーラーを起動し、パーティションを選択するように指示すると、パーティションを再フォーマットしようとし、他のファイルシステム (reiser、ext など) のオプションのみが表示され、nilfs は表示されません。nilfs サポートがインストールされているにもかかわらずです (パーティションに nilfs ファイルシステムを作成できました)。

何かヒントや提案はありますか?

答え1

Roland Taylor が指摘したように、まずインストーラーを使用して ext4 パーティションにインストールし、次にそれを nilfs パーティションに転送することができます。

システム用の空きパーティションを準備します。これは としてマウントされるので/、NILFS と呼びます。

Ubuntu をインストールするには別のパーティションが必要です。これは USB ディスクでも、ディスク上の別のパーティションでもかまいません。これを EXT と呼びます。

/bootUbuntu 12.04 に同梱されている grub 1.99 はすでに nilfs2 ファイル システムからのブートをサポートしているため、別のパーティションは必要ありません。

システムを準備する

通常の Ubuntu のインストールを EXT に実行します。

nilfs-tools をインストールし、空きパーティションを nilfs2 にフォーマットします。

デフォルトでは、Ubuntu の initramfs には nilfs カーネル モジュールが含まれていません。

再生成する必要があります:

sudo echo nilfs2 >> /etc/initramfs-tools/modules
sudo update-initramfs -u

システムを転送する

Ubuntu 12.04 ライブ CD を起動します。nilfs-tools をインストールします。(その前にソフトウェア センターでソースを変更する必要がありますapt-get install nilfs-tools。)

EXT と NILFS をマウントし、システムをコピーします。

sudo cp -ax /media/EXT/* /media/NILFS/*

(rsync代わりに使用することもできます。)

次に、 を編集して/media/NILFS/etc/fstab、 の行を変更します/。(uuid を ext4->nilfs2 に変更します。SSDnoatime,async,discardのマウント オプションを追加することをお勧めします。)

次に、grubの設定を編集してgrubを再インストールします。Ubuntu ウィキgrub の調整方法については、こちらを参照してください。再インストールする前に、grub の設定ファイルを変更する必要があることに注意してください。NILFS に chroot し、 を使用してdpkg-reconfigure設定の変更と再インストールを一度に実行することをお勧めします。

これで、nilfs2 ベースの Ubuntu 12.04 を再起動できます! :-)


テストはしていませんが、上記の手順でうまくいくはずです。実際、Ubuntu 10.04 を ext3 から nilfs2 に転送するのに同じ方法を使いました。Ubuntu 10.04 の grub は nilfs2 からのブートをサポートしていないため、ext2 を使っていました/boot。しかし最近、Ubuntu 12.04 のライブ CD をダウンロードして、ネットブックで 12.04 が動作するかどうかをテストしました。そこで、パーティション/boot/にコピーし直し/、grub 構成ファイルを変更し、12.04 の grub-install を使用して grub を再インストールしました。そしてうまくいきました! (だから、役に立たない分離されたブート パーティションを小さな swap パーティションに変えることができるかもしれません?)

PS この方法が気に入らない場合は、debootstrap 経由でインストールしてみてください。これも機能すると思います。

答え2

インストーラーがサポートしていないため、基本的にこれをまだ実行することはできません。

たとえば、EXT4 から NILFS にインストールを転送することは技術的には可能かもしれませんが (パーティションにインストールしてから NILFS パーティションに転送する)、別のブート パーティションも必要になります (そして、これはますます複雑になります)。

本質的に、答えは「できません」です。今のところ。また、NILFS はかなり新しいため、このような動きがサポートされる可能性は低いことに注意してください。

関連情報