Каждый из нас сталкивался с проблемой установки системы при отсутствии CD-ROM. В большинстве статей интернета описывается создание загрузочной флешки с помощью различных программ: UltraISO, Unetbootin, Win32 Disk Imager и т.д. Основной минус этих программ, что придется полностью распрощаться с данными на флешке.
Смысла во всех вышеописанных программах особого не вижу, так как их можно заменить командой:
dd if=images/diskboot.img of=/dev/DEVICE
Ну а варианты с разбиение флешки на несколько разделов и прочие фокусы, вообще не для нас.
И так. Имеется флешка с которой при помощи Grub4dos загружается windowsXP, windows7, различные linux системы и утилиты. Теперь, ничего не меняя на флешке надо добавить загрузку и установку CentOS. Для этого нам понадобится:
- флэшка c файловой системой FAT16 или FAT32 и загрузчиком grub4dos
- обязательно назовите флешку, в нашем примере будем использовать BOOTUSB
- iso образ с CentOS 6 Live (если кроме i386 вы хотите x32_64, тогда скачивайте два образа). Для загрузки и установки будет достаточно liveCD диска, но если есть желание ещё и иметь кучу приложений и возможность работы в них, тогда скачивайте LiveDVD
default vesamenu.c32 timeout 100 menu background splash.jpg menu title Welcome to CentOS-6.3-i386-LiveCD! menu color border 0 #ffffffff #00000000 menu color sel 7 #ffffffff #ff000000 menu color title 0 #ffffffff #00000000 menu color tabmsg 0 #ffffffff #00000000 menu color unsel 0 #ffffffff #00000000 menu color hotsel 0 #ff000000 #ffffffff menu color hotkey 7 #ffffffff #ff000000 menu color timeout_msg 0 #ffffffff #00000000 menu color timeout 0 #ffffffff #00000000 menu color cmdline 0 #ffffffff #00000000 menu hidden menu hiddenrow 5 label rd.live.check0 menu label Verify and Boot kernel vmlinuz0 append initrd=initrd0.img root=live:CDLABEL=CentOS-6.3-i386-LiveCD rootfstype=auto ro liveimg quiet nodiskmount nolvmmount rhgb vga=791 rd.luks=0 rd.md=0 rd.dm=0 rd.live.check label linux0 menu label Boot kernel vmlinuz0 append initrd=initrd0.img root=live:CDLABEL=CentOS-6.3-i386-LiveCD rootfstype=auto ro liveimg quiet nodiskmount nolvmmount rhgb vga=791 rd.luks=0 rd.md=0 rd.dm=0 menu default label linuxtext0 menu label Boot (Text Mode) kernel vmlinuz0 append initrd=initrd0.img root=live:CDLABEL=CentOS-6.3-i386-LiveCD rootfstype=auto ro liveimg 3 quiet nodiskmount nolvmmount rhgb vga=791 rd.luks=0 rd.md=0 rd.dm=0 label linux0 menu label Boot (Basic Video) kernel vmlinuz0 append initrd=initrd0.img root=live:CDLABEL=CentOS-6.3-i386-LiveCD rootfstype=auto ro liveimg quiet nodiskmount nolvmmount rhgb vga=791 rd.luks=0 rd.md=0 rd.dm=0 xdriver=vesa nomodeset label install0 menu label Install kernel vmlinuz0 append initrd=initrd0.img root=live:CDLABEL=CentOS-6.3-i386-LiveCD rootfstype=auto ro liveimg liveinst noswap nolvmmount rd.luks=0 rd.md=0 rd.dm=0 label textinstall0 menu label Install (Text Mode) kernel vmlinuz0 append initrd=initrd0.img root=live:CDLABEL=CentOS-6.3-i386-LiveCD rootfstype=auto ro liveimg textinst noswap nolvmmount rd.luks=0 rd.md=0 rd.dm=0 label memtest menu label Memory Test kernel memtest label local menu label Boot from local drive localboot 0xffff
color cyan/blue white/blue timeout 30 find --set-root /grub/message gfxmenu /grub/message default /default title Boot kernel /CentOS/isolinux/vmlinuz0 root=live:LABEL=BOOTUSB live_dir=/CentOS/LiveOS rootfstype=auto ro liveimg quiet nodiskmount nolvmmount rhgb vga=791 rd.luks=0 rd.md=0 rd.dm=0 initrd /CentOS/isolinux/initrd0.img title Boot (Text Mode) kernel /CentOS/isolinux/vmlinuz0 root=live:CDLABEL=BOOTUSB live_dir=/CentOS/LiveOS rootfstype=auto ro liveimg 3 quiet nodiskmount nolvmmount rhgb vga=791 rd.luks=0 rd.md=0 rd.dm=0 initrd /CentOS/isolinux/initrd0.img title Boot (Basic Video) kernel /CentOS/isolinux/vmlinuz0 root=live:CDLABEL=BOOTUSB live_dir=/CentOS/LiveOS rootfstype=auto ro liveimg quiet nodiskmount nolvmmount rhgb vga=791 rd.luks=0 rd.md=0 rd.dm=0 xdriver=vesa nomodeset initrd /CentOS/isolinux/initrd0.img title Install kernel /CentOS/isolinux/vmlinuz0 root=live:CDLABEL=BOOTUSB live_dir=/CentOS/LiveOS rootfstype=auto ro liveimg liveinst noswap nolvmmount rd.luks=0 rd.md=0 rd.dm=0 initrd /CentOS/isolinux/initrd0.img title Install (Text Mode) kernel /CentOS/isolinux/vmlinuz0 root=live:CDLABEL=BOOTUSB live_dir=/CentOS/LiveOS rootfstype=auto ro liveimg textinst noswap nolvmmount rd.luks=0 rd.md=0 rd.dm=0 initrd /CentOS/isolinux/initrd0.img title Memory Test kernel /CentOS/isolinux/memtest title Boot from local drive root (hd0,0) chainloader (hd0,0)+1 title Назад find --set-root /grub/setup.lst configfile /grub/setup.lst
Обратите внимание, что некоторые параметры загрузки изменились, например:
было
menu label Verify and Boot kernel vmlinuz0 append initrd=initrd0.img root=live:CDLABEL=CentOS-6.3-i386-LiveCD rootfstype=auto ro liveimg quiet nodiskmount nolvmmount rhgb vga=791 rd.luks=0 rd.md=0 rd.dm=0 rd.live.check
стало
title Boot kernel /CentOS/isolinux/vmlinuz0 root=live:LABEL=BOOTUSB live_dir=/CentOS/LiveOS rootfstype=auto ro liveimg quiet nodiskmount nolvmmount rhgb vga=791 rd.luks=0 rd.md=0 rd.dm=0 initrd /CentOS/isolinux/initrd0.img
что изменилось
- добавился путь до vmlinuz0 — /CentOS/isolinux/vmlinuz0
- добавился путь до initrd0.img — /CentOS/isolinux/initrd0.img
- Изменили параметр с root=live:CDLABEL=CentOS-6.3-i386-LiveCD на root=live:LABEL=BOOTUSB , где BOOTUSB — название флешки
- Добавился новый параметр live_dir=/CentOS/LiveOS
Далее, в корневом menu.lst добавляем:
title CentOS 6 LIVE find --set-root --ignore-cd /nocddrive configfile /CentOS/centos.lst
В корневом каталоге должен быть пустой файл nocddrive
Ну и в качестве бонуса выкладываю пример конфига grub4dos для установки CentOS с компьютера где есть интернет
title CentOS netinstall map /boot/CentOS-6.2-x86_64-netinstall.iso (hd32) map --hook chainloader (hd32) boot
У меня вопрос:
1. Как должен выглядеть centos.lst, точнее цитируемая ниже его часть, в такой ситуации:
Есть флешка на 8 Гб. На ней установлен Grub (она успешно стартует), В корне создан каталог CentOS, в который распаковано два образа CentOS-6.4-x86_64-bin-DVD1.iso и CentOS-6.4-x86_64-bin-DVD2.iso. Папки LiveOS нет и в помине.
В menu.lst прописано title Install CentOS 6.4
configfile /CentOS/centos.lst
Цитата из centos.lst
title CentOS-6.2-x86_64-DVD
kernel /CentOS/isolinux/vmlinuz root=live:LABEL=BOOTUSB ro liveimg quiet nodiskmount nolvmmount lang=ru_RU keymap=us live_dir=/CentOS/LiveOS
initrd /CentOS/isolinux/initrd.img
LiveOS — это что за папка, откуда она?
Меня смущает вообще эта конструкция:
live_dir=/CentOS/LiveOS
Подскажите, за что отвечает параметр live_dir ?