Aug
24
ReiserFS4 3. Установка GRUB с поддержкой Reiser4 | 24 August 2007, 12:15

ReiserFS4 – файловая система опередившая свое время

А это уже раздел для любителей ;) Если вам хочется перенести всю систему на Reiser4 – то этот материал для вас. В подготовке этого материала мне очень помогло это руководство(на англ): linuxhelp.150m.com/installs/grub-reiser4.htm

По умолчанию, GRUB не имеет поддержки Reiser4, поэтому если каталог /boot будет находится на разделе с reiser4, то придется патчить загрузчик. Последняя версия(сейчас это v.0.97) всегда здесь: www.gnu.org/software/grub.

1. Сборка необходимых библиотек

Для работы нужен собственно сам GRUB, патч для него и библиотеки libaal v.1.05 и reiser4progs v.1.5:

GRUB v.0.97 downloads.karina-online.ru/linux/reiser4/grub-0.97.tar.gz ftp://alpha.gnu.org/gnu/grub/grub-0.97.tar.gz
патч для GRUB downloads.karina-online.ru/…/grub-0.97-libaal-1.0.5-reiser4progs-1.0.5.patch.bz2 http://linuxhelp.150m.com/…/grub-0.97-libaal-1.0.5-reiser4progs-1.0.5.patch.bz2
библиотека libaal downloads.karina-online.ru/…/libaal-1.0.5.tar.gz http://thebsh.namesys.com/…/libaal-1.0.5.tar.gz
утилиты Reiser4progs downloads.karina-online.ru/…/reiser4progs-1.0.5.tar.gz http://thebsh.namesys.com/…/reiser4progs-1.0.5.tar.gz

Важный момент: собирать надо под архитектуру x32 на машине x64. В этом случае нужно будет использовать опции компилятора перед сборкой. Для этого можно использовать команду:

export CC="gcc -m32"

Для компиляции GRUB с поддержкой Reiser4 будут нужны библиотеки под архитектуру x32, а на х64-машине их нет ;) Поэтому нужно отдельно скомпилировать библиотеки под архитектуру x32 и указать на них линкеру:

export LDFLAGS=-L/grub/r4/lib CPPFLAGS=-I/grub/r4/include

В качестве каталога для сборки выбран /grub/r4, туда и скопированы все архивы. Компиляция библиотек полностью аналогична описанной в Части 2. Установка библиотек, однако, нужно установить бибилиотеки в отдельный каталог:

$ tar -xzf ./libaal-1.0.5.tar.gz


$ cd liball-1.0.5

$ export CC="gcc -m32"

$ sh ./configure –prefix=/grub/r4/

$ make


$ make install

$ tar -xzf ./reiser4progs-1.0.5.tar.gz


$ cd reiser4progs-1.0.5

$ export CC="gcc -m32"

$ export LDFLAGS=-L/grub/r4/lib CPPFLAGS=-I/grub/r4/include

$ sh ./configure –prefix=/grub/r4/

$ make


$ make install

Примечание: проверяем, что при запуске configure указывается что компиляция будет под архитектуру x32: это последняя строчка на скриншотах! ;)

[singlepic id=47 w=500 mode=watermark float=center]

[singlepic id=48 w=500 mode=watermark float=center]

2. Компиляци нового GRUB

Библиотеки и утилты собраны, так что можно заняться непосредственно загрузчиком ;) Распаковываем его и патчим. =)

$ tar -xzf ./grub-0.97.tar.gz

$ cd grub-0.97


$ bunzip2 ../grub-0.97-libaal-1.0.5-reiser4progs-1.0.5.patch.bz2     //распаковываем патч

$ patch -p1 < ../grub-0.97-libaal-1.0.5-reiser4progs-1.0.5.patch     //патчим

теперь собираем патченный GRUB:

$ export CC="gcc -m32"

$ export LDFLAGS=-L/grub/r4/lib CPPFLAGS=-I/grub/r4/include

$ sh ./configure –prefix=/usr

$ make

[singlepic id=49 w=500 mode=watermark float=center]

После компиляции, выполнив команду:

ls stage2/*1_5

будет показано:

[singlepic id=51 w=500 mode=watermark float=center]

В этом списке должен быть файл reiser4_stage1_5. Если он есть – значит все прошло хорошо. :)

Теперь можно и устанавливать. В отличие от библиотек, GRUB устанавливаем в традиционное место – каталог/usr.

$ sudo make install

3. Установка нового GRUB

Устанавливаем GRUBв MBR(Master Boot Record) текущего жёсткого диска /dev/hda следующей командой:

# /usr/sbin/grub-install /dev/hda

Теперь можно добавлять в меню GRUB запись о разделе Reiser4 для загрузки ;) Для этого открываем файл /boot/grub/menu.lst с правами суперпользователя в любом тестовом редакторе и добавляем в него, например такие строки:

title openSUSE 10.2 kernel-2.6.22.1-reiser4
root (hd0,1)
kernel /boot/vmlinuz-2.6.22.1-reiser4 root=/dev/hda2 vga=0×317 splash=silent showopts
initrd /boot/initrd-2.6.22.1-reiser4

Здесь 2.6.22.1-reiser4 – это название нашего ядра, а Linux у меня установлен на hda2. Всё, можно загружать!!! :)

При написании статьи были использованы следующие источники:

24 August 2007, 12:15  
Рубрика: html-марание, softoкопательство  |  
Метки:   |  

Листинги патчей ;)


Хотите пропатчить? ;)

Вы должны быть залогинены что бы оставить патч.


  karina ©
2007-2010