Я вот так сделал:
[root@Linux ~]# cd /lib/modules
[root@Linux modules]# ls
2.6.30-std-def-alt14 2.6.30-std-def-alt15 nvidia
[root@Linux modules]# cd /media/disk-3/boot
[root@Linux boot]# mkinitrd newinitrd.img 2.6.30-std-def-alt15
[root@Linux boot]# ls
System.map-2.6.30-std-def-alt14 initrd.img
System.map-2.6.30-std-def-alt15 map
boot memtest-4.00.bin
boot.0300 newinitrd.img
config-2.6.30-std-def-alt14 splash
config-2.6.30-std-def-alt15 vmlinuz
grub vmlinuz-2.6.30-std-def-alt14
initrd-2.6.30-std-def-alt14.img vmlinuz-2.6.30-std-def-alt15
initrd-2.6.30-std-def-alt15.img
[root@Linux boot]#
В /boot/grub/menu.lst я прописал:
title Linux_newinitrd
root (hd1,4)
kernel /boot/vmlinuz root=/dev/disk/by-uuid/b554f815-eacd-4caf-a446-d0e51783cf4d
initrd /boot/newinitrd.img
Загрузилось!
Там искать ничего не надо - загрузились с liveCD, или даже rescue, mount -o bind для proc, dev и sys (как при восстановлении lilo), chroot на корень и создаёте initrd, а команда создания initrd сама засовывает все загруженные модули в initrd (можно конечно её и поправить, но про это читайте её man). Ну и не забыть положить новый initrd в /boot и дать команду lilo.
ruslandhА вот здесь я не понял. А зачем грузиться с LiveCD, если я гружусь с другого диска (IDE диск)?
Я не понял на счёт mount -o bind для proc, dev и sys. Зачем это надо?
А как выглядит конретная команда?
mount -o bind /media/disk/proc /proc
mount -o bind /media/disk/dev /dev
mount -o bind /media/disk/sys/sys
Правильно?
А ещё вопрос. Я не понимаю что делает команда chroot. Она что виртуально делает любую папку как бы корневой? То есть все запущенные script'ы и программы будут думать, после команды chroot /home/user/dir, что папка /home/user/dir/subdir лежит в /subdir?
Правильно?
Команду создания initrd не называю, так-как есть две команды - старая и новая.
А я только одну знаю - mkinitrd.
Это старая или новая команда?
А вторая команда какая?