Как установить 12.04 на корневой раздел nilfs?

7

У меня есть новый SSD, и я бы хотел установить 12.04 на него с nilfs как файловая система для корневого раздела.

Я не могу найти простой способ сделать это. Если я загружаюсь из 12.04 LiveCD, я могу установить nilfs-tools (мне пришлось загрузить его с помощью wget - я бы не смог его apt-получить), и я смог отформатировать раздел как nilfs через mkfs.nilfs.

Однако, когда я нажимаю «установить Ubuntu» и запускаю установщик и говорю, что хочу выбрать раздел, он хочет переформатировать его и предоставляет только параметры для других файловых систем (reiser, ext и т. д.), но не nilfs , хотя была установлена поддержка nilfs (мне удалось создать файловую систему nilfs на моем разделе).

Любые советы или предложения?

    
задан mlevin 23.03.2012 в 14:49
источник

2 ответа

7

Как указал Роланд Тейлор, вы можете сначала установить раздел ext4 с помощью установщика, а затем перенести его в раздел nilfs.

Подготовьте бесплатный раздел для системы. Он будет установлен как / , назовем его NILFS.

И вам нужен другой раздел для установки Ubuntu, он может быть USB-диском или другим разделом на диске, назовем его EXT.

Вам не нужен отдельный раздел /boot , так как grub 1.99, поставляемый с Ubuntu 12.04, уже поддерживает загрузку из файловой системы nilfs2.

Подготовьте систему

Вы делаете обычную установку Ubuntu на EXT.

Установите nilfs-tools и отформатируйте свободный раздел до nilfs2.

По умолчанию в initramfs Ubuntu нет модуля ядра nilfs.

Вам необходимо его восстановить:

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

Передача системы

Загрузитесь в Ubuntu 12.04 livecd. Установите nilfs-tools. (Вам необходимо изменить источники в Центре программного обеспечения до apt-get install nilfs-tools .)

Установите EXT и NILFS, затем скопируйте свою систему:

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

(Вместо этого вы можете использовать rsync .)

Затем отредактируйте свой /media/NILFS/etc/fstab , измените строку / . (Измените uuid, ext4- > nilfs2. Я рекомендую добавлять опции монтирования noatime,async,discard для SSD.)

Затем отредактируйте конфигурацию grub и переустановите grub. См. Ubuntu Wiki для настройки с помощью grub. Обратите внимание, что перед переустановкой вам необходимо изменить конфигурационный файл grub. Я предлагаю chroot в NILFS и просто используйте dpkg-reconfigure для изменения конфигурации и переустановки сразу.

Теперь вы можете перезагрузиться в Ubuntu 12.04 на основе nilfs2! : -)

Хотя я не тестировал его, но приведенные выше инструкции должны работать. Фактически, я использовал тот же метод для переноса моего Ubuntu 10.04 с ext3 на nilfs2. Поскольку grub Ubuntu 10.04 не поддерживает загрузку с nilfs2, я использовал ext2 как /boot . Но в последнее время я загрузил Ubuntu 12.04 live cd, чтобы проверить, работает ли 12.04 на моем нетбуке. Так что теперь я скопировал /boot/ обратно в раздел / , изменил свой файл конфигурации grub и использовал grub-install 12.04 для повторной установки grub. И это сработало! (Может быть, я могу превратить бесполезный разделенный загрузочный раздел в небольшой раздел подкачки?)

P.S. Если вам не нравится этот метод, вы можете попробовать установить его через debootstrap. Я думаю, что это тоже сработает.

    
ответ дан weakish 08.05.2012 в 14:59
1

По существу, вы еще не можете этого сделать, потому что установщик не поддерживает его.

Возможно технически возможно передать установку, скажем, EXT4, в NILFS (установка в раздел, а затем перенос на раздел NILFS), но вам также понадобится отдельный загрузочный раздел (и, как вы можете видеть, это становится все более сложный).

В сущности, ответ «вы не можете», пока. Кроме того, помните, что NILFS является довольно новым, поэтому поддержка такого движения вряд ли возможна.

    
ответ дан RolandiXor 23.03.2012 в 14:52