Ubuntu Server 12.04 iso boot grub2

Захотелось флешку с несколькими linux'ами сразу. Разметил, отформатировал, поставил grub2.

grub2-install --root-directory=/mnt/usbdir /dev/sdb1

Debian и SystemRescueCd без проблем завелись, но мне захотелось ещё UbuntuServer туда и тут начались проблемы...

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

План действий был примерно таков:

# mkdir tmp
# mv initrd-ubuntu.gz  tmp/
# cd tmp
# gunzip initrd-ubuntu.gz
# mkdir tmp2
# cd tmp2
# cpio -id < ../initrd-ubuntu
# vim init
# find . | cpio --create --format='newc' > ../newinitrd
# cd ..
# gzip newinitrd
# mv -i newinitrd.gz /mnt/usbdir/

Для пущей информативности приведу часть конфига grub'а

menuentry 'Ubuntu Server 12.04 (64-bit)' {
 set isofile="/ubuntu-12.04.2-server-amd64.iso"
 loopback loop $isofile
 linux (loop)/install/vmlinuz file=/cdrom/preseed/ubuntu-server.seed iso-scan/filename=$isofile quiet noeject noprompt splash --
 initrd /newinitrd.gz
}

Ну и конечно что поменялось в init файле после редактирования.

@@ -10,6 +10,11 @@
 mount /sys
 /lib/debian-installer/start-udev
 
+mkdir -p /media/flash
+mount /dev/disk/by-uuid/E13C-7500 /media/flash
+mkdir /cdrom
+mount -o loop,ro -t iso9660 /media/flash/ubuntu-12.04.2-server-amd64.iso /cdrom
+
 init='/bin/busybox init'
 for i in $(cat /proc/cmdline); do
        case $i in
Где /dev/disk/by-uuid/E13C-7500 конечно путь к флешке.

P.S.: это не указание как правильно делать, а просто указание на потенциальную возможность так делать.

Ссылки:
http://www.thegeekstuff.com/2009/07/how-to-view-modify-and-recreate-initrd-img/ http://www.pendrivelinux.com/install-grub2-on-usb-from-ubuntu-linux/ https://help.ubuntu.com/community/Grub2/ISOBoot/Examples#Utility_Menuentries http://askubuntu.com/questions/128995/grub2-loopback-booting-ubuntu-server-iso

Комментариев нет:

Отправить комментарий