Ubuntu 8 and Ext4

Сегодня будем прикручивать новую версию лучшей файловой системы к Ubuntu Linux 8.10.

Да будет известно, что EXT4 получило статус стабильной начиная с ядра 2.6.28. На предыдущих ядрах работа или не гарантируется или вообще невозможна.

Также факт, что ядро 2.6.28 официально будет включено только в Ubuntu 9.04. Там же официально в инсталляторе появляется эта файловая система. Скорее всего, ни Ubuntu 8.04, ни 8.10 официально не получит ни ядра ни поддержки новой ФС.

После конвертирования разделов в Ext4, откат обратно НЕВОЗМОЖЕН. Также необходимо помнить, что откат на 27 ядро (или пересборка ядра без подддержки ext4) приведет в неработоспособность систему.

Меня лично не пугает, смысла откатыватся не вижу, да и пересобираю ядро я внимательно.
Уже успешно пишу с 8.10, которая работает на ФС Ext4 и имеет ядро 2.6.28.
Итак.

1. Нам нужно новое ядро. Его можно собрать с ванильного ядра, а можно пойти проще. Ubuntu 9.04, которая сейчас носит статус четвертой альфы, уже имеет собранное ядро нужной версии. (ядро стабильное!!! собрано адекватно и стабильность системы не нарушит. Статус альфы носит дистрибутив, а не ядро.) Давайте возьмем его.

Страничка загрузки - http://packages.ubuntu.com/jaunty/linux-image-2.6.28-7-generic
x86 версия - http://packages.ubuntu.com/jaunty/i386/linux-image-2.6.28-7-generic/download
x86_64 версия - http://packages.ubuntu.com/jaunty/amd64/linux-image-2.6.28-7-generic/download

Скачали.. Открываем в Package Manager. Убеждаемся, что ошибок нет, и зависимости удовлетворены. Если будет ошибка - об этом будет написано.

Устанавливаем.
По завершению проверяем /boot/grub/menu.list на корректность.
Перезагружаемся.

Ну вот мы с новым ядром. Если все живо - продолжаем.

2. Подключение файловых систем как ext4.

Для каждого устройства с ФС ext3 запускаем

sudo tune2fs -O extents,uninit_bg,dir_index /dev/sda5
sudo fsck -pf /dev/sda5
, где sda5 - раздел винчестера с ext3.
Теперь нужно отредактировать fstab.
sudo nano /etc/fstab

К примеру было:
UUID=ec03e03e-2bd4-485d-aa4e-013155f26181 /boot ext3 noatime,data=writeback 0 2
Стало
UUID=ec03e03e-2bd4-485d-aa4e-013155f26181 /boot ext4 noatime,data=writeback 0 2
Да, да, все просто. Просто замените ext3 на ext4.

3. Если теперь корень стал ext4, загрузчик должен до него достучатся. Нужно прописать в настройках grub параметр.
nano /boot/grub/menu.lst

Было
title Ubuntu 8.10, kernel 2.6.28-7-generic
uuid ec03e03e-2bd4-485d-aa4e-013155f26181
kernel /vmlinuz-2.6.28-7-generic root=UUID=0b03147c-21c2-436e-a596-bba439d298b0 ro quiet splash
initrd /initrd.img-2.6.28-7-generic
quiet
Стало
title Ubuntu 8.10, kernel 2.6.28-7-generic
uuid ec03e03e-2bd4-485d-aa4e-013155f26181
kernel /vmlinuz-2.6.28-7-generic root=UUID=0b03147c-21c2-436e-a596-bba439d298b0 ro quiet splash rootfstype=ext4
initrd /initrd.img-2.6.28-7-generic
quiet
Да, разница в rootfstype=ext в параметрах kernel.

Все, теперь можно перезагружатся.
Перезагрузка будет заметно доольше обычной, потому что при монтировании разделов обнаружится, что контрольные суммы несовпадают, а потому будет проведено исправление ошибок. Ничего страшного, так и должно быть.

Если загрузка прошла нормально и все заработало - поздравляю, у Вас получилось.

Коментарі

  1. Я знаю, конечно, что вы, просто перевели и скопировали текст: но все равно получилось вредительство: уничтожена великолепно работавшая ОС... Чего же вы не упомянули, что нужно еще поставить утилиты для этой ФС (то есть пакет e2fsprogs) ? Без этих утилит это полный ппц... И еще вредительство и то, что вы указали в параметрах опцию extents - из за этой опции, мне теперь невозможно откатиться к ext3. Ext4 - мертво, ввиду отсутствия утилит поддержки, а чтобы поставить e2fsprogs не удается откатиться к ext3 из за этой вашей опции extents, надо было писать noextents... И, вообще, лучшая статья на эту тему здесь: http://www.ibm.com/developerworks/ru/library/l-ext4/index.html

    ВідповістиВидалити
  2. Смелый человек, оставляя подобный комментарий, для начала залогинился бы :)

    1. Копипаста у меня нет. Последовательность комманд копипастом быть не может. Статья является выдержкой из дюжины источников.
    2. Вообще делать что либо с Linux нужно только тем людям, которые понимают, что делают. Вы же в данном случае приводите неправильные аргументы.
    Кстати, делая с noextents вы не получаете абсолютно ни одной плюшки ext4. Смысл этих дейтствия тогда? По сути это будет ext3 с названием ext4 чтобы похвастать перед дузьями. Перед тем как что то делать, нужно ПОНИМАТЬ зачем Вам это нужно и ЧЕМ ВАМ это ГРОЗИТ.
    3. Можно полюбопытствовать, зачем вам e2fsprogs? Или абы ляпнуть..

    За сим, притензии не обоснованные.

    ВідповістиВидалити
  3. И это.. Анонимный, если корона не упадет, приведите мне пожалуйста источник, с которого я свой пост перевел. А то может мои посты уже кто то переводит и постит как свои..

    ВідповістиВидалити
  4. 2Аноним..
    Warning! n00b Detected! kernel panic! not syncing...

    Начиная со времен появления первых двух фс, все абсолютно ВСЕ итшнеги узнали что конвертирование фс это последнее дело которое в 90% случаев приводит к краху! Самый надежный способ это бэкап данных и формат в новую фс, так как вы выбрали путь джыдая не нужно жаловаться, наслаждайтесь своим трудом, Вас никто не заставлял использовать именно этот вариант конвертирования, все кнопки Вы жали САМИ!

    2Автор..
    Вам автор статьи респект за статью, написано на пятерку, в конце советую дописать что то вроде
    "Автор за последствия ответственности не несет! все жалобы направлять в /dev/null"

    ВідповістиВидалити

Дописати коментар

Популярні публікації