Предположим, у вас нет DVD-ROM и загрузка с флэшки отключена/не предусмотрена. Netinstall откинем, например, у вас неподдерживаемые драйвера сетевой карты. Остается вариант установить линукс с iso или папки на жестком диске. Для начала, хочу предупредить, что разбивку разделов получится сделать только тех, на которых не лежит заргужаемый live-cd/dvd образ, иначе ничего не сработает. Оговорка: CentOS, благодаря своей версии dracut, не может быть загружена с iso, поэтому iso прийдется распаковать в каку-нить папку на свободном разделе, который мы не будем модифицировать, сделать это можно командами:
mount -o loop CentOS-6.0-i386-LiveCD.iso /mnt
cp -pr /mnt /boot/iso
Мы смотрировали iso с CentOS и скопировали содержимое смонтированной папки в /boot/iso
С этого момента надо узнать, если не знаем, на какой раздел мы скопировали нашу папку. Смотрим
mount
/dev/sda7 on / type ext4 (rw,errors=remount-ro)
# У меня boot не смотрирован на отдельный раздел
sudo fdisk -l
Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xe793261d
Device Boot Start End Blocks Id System
/dev/sda1 * 1 52 409600 27 Unknown
Partition 1 does not end on cylinder boundary.
/dev/sda2 52 19478 156043264 7 HPFS/NTFS
/dev/sda3 19478 38913 156111873 5 Extended
/dev/sda5 25690 38438 102406311 7 HPFS/NTFS
/dev/sda6 38439 38913 3813376 82 Linux swap / Solaris
/dev/sda7 19478 25689 49891328 83 Linux
Теперь понятно, что искомый раздел /dev/sda7, но Grub представляет всё по-другому, для него это не sda7, а hd0,7. NB!: в Grub до 2ой версии, это было бы hd0,6, он начинал считать разделы с 0. Надо еще узнать UUID этого раздела, воспользуемся утилитой blkid
sudo blkid | grep sda7
/dev/sda7: UUID="7abe088b-4857-4ca9-ae03-6e1df7b9d117" TYPE="ext4"
/dev/sda7 имеет UUID 7abe088b-4857-4ca9-ae03-6e1df7b9d117. Отредактируем /etc/grub.d/40_custom. В этом файле содержатся разделы меню Grub 2, добавленные вами вручную. В конец файла допишем следующие строки:
menuentry "CentOS 6.0" {
set root="(hd0,7)"
search --no-floppy --fs-uuid --set 7abe088b-4857-4ca9-ae03-6e1df7b9d117
linux /boot/iso/isolinux/vmlinuz0 rootfstype=auto root=UUID=7abe088b-4857-4ca9-ae03-6e1df7b9d117 liveimg live_dir=/boot/iso/LiveOS rhgb
initrd /boot/iso/isolinux/initrd0.img
}
Если же мы хотим загрузиться с iso, а не с папки, то нужно прописать немного другие пункты меню, например у меня на NTFS разделе валяется образ, тогда я в /etc/grub.d/40_custom пропишу вот это:
menuentry "Macbuntu 11.04" {
insmod ntfs # для того, чтоб Grub 2 правильно его подмонтировал
set isofile="/OS/macbuntu-iso1104amd64.iso" # указываем путь к образу диска
loopback loop (hd0,5)/OS/macbuntu-iso1104amd64.iso
linux (loop)/casper/vmlinuz iso-scan/filename=/OS/macbuntu-iso1104amd64.iso boot=isolinux ro noeject
initrd (loop)/casper/initrd.gz
}
Теперь делаем
sudo update-grub
, перезагружаемся и устанавливаем или запускаем как live наш образ.
Вот неплохой список уже готовых menuentry для разных дистрибутивов, чтоб самому не искать kernel и intrd http://www.panticz.de/MultiBootUSB