Задачи:
1) Сделать boot загрузочную флешку УНИВЕРСАЛЬНОЙ (на любую флешку можно было залить и на любой ОС прочитать и записать)
2) Запихнуть на флешку установку CentOS и загрузку LiveDVD или LiveCD с ним (LVM разделы видят только RedHat-подобные системы)
Выражаю благодарность в написании статьи любимому торрент-трекер nnm-club.ru, всем пользователя указанных мною сборок и особенно FILTH2012 ® , conty9, SunOK.
Используемые средства:
ОС с которых произвожу все манипуляции:
1) Ubuntu 12.04 x86_642) Win 7 Ultimate x86_64
Флешки:
1) Kingstone DT 160 (32GB)2) Kingstone DT Ultimate G2 (64GB)
Сборки используемые для флешки:
Собирать целиком флешку под себя не стал, удалось все-таки найти самый оптимальный для меня вариант сборки, хоть и с трудом.1) За основу взял MultiBoot Flash Filth Edition 2012 v3.1 16 Гб
2) И добавил Мультизагрузочный 2k10 DVD/USB/HDD v.2.5.4 [Eng/Rus]
Начну с небольшой теории почему сделал так, а не иначе.
1) Опредиляемся с файловой системой.
Я выбрал FAT32!!!
Какие варинаты вообще были и какие у них плюсы и минусы:а) FAT32
Плюсы:
"+" - видим в любой ОС без выкрутасов и доп ПО (включяя используемые на флешке, бывают моменты когда не хочет система ставиться или запускаться если это, к примеру, NTFS.)
"+" - отсутствует журналирование (является преимуществом при работе с накопителями, имеющими ограничение на количество циклов записи)
Минусы:
"-" - Максимально возможный размер файла для тома FAT32 — ~ 4 ГБ — 4 294 967 295 байт (232-1 — 4 294 967 295 байт)
б) NTFS
Плюсы:
"+" - Максимальный размер файла 16 ЭБ (дохрена в общем :) )
Минусы:
"-" - Журналируемая
"-" - Некоторые системы не видят изначально, к примеру, могут возникнуть проблемы с запуском LiveCD основаных на Linux системах или DOS.
в) EXT2
Плюсы:
"+" - Максимальный размер файла 16 ГБ
"+" - отсутствует журналирование
Минусы:
"-" - Windows изначально не видит, нужно софт доставлять (как минимум проще включить поддержку FAT32 на linux-e, чем на финде искать и качать каждый раз проги.)
Итог:
Решающим фактором моего выбора стало два момента:а) Винду и линуксы я разворачиваю с исо образов РАСПАКОВАННЫХ или размером меньше 4GB (максимальный размер файлика отпал) через софтинку с LiveCD 2k10 (WinNTSetup, пока ни разу не подвела, разворачивал разные системы)
б) Флешку на 64ГБ забиваю на раз, два (Ubuntu, Centos, Windows, Office уже гигов на 16 сами тянут :) ) - на этом этапе пропало чувство кучи неиспользованного места, на которое можно было бы записать БОЛЬШОЙ файлик.
в) Ну и чтобы чувство неиспользованного места окончательно нас покинуло, зарезервируем его для бекапов (Acronis, к примеру, умеет разбивать резервные копии по размеру).
2) Добавляем установку Ubuntu_x86_64 с флешки
а) Создаем на флешке папку куда будем кидать образ убунты:
Например "/_MY/Ubuntu/ubuntu64/"
б) Вытаскиваем из образа убунты два файлика vmlinuz и initrd.lz (находятся в папке "casper") и кладем их в нашу папку "/_MY/Ubuntu/ubuntu64/" вместе с нашим ISO образом.
В наш ubuntu.lst добавляем к примеру так:
title Linux Ubuntu 12.04 LTS AMD64kernel /_MY/Ubuntu/ubuntu64/vmlinuz iso-scan/filename=/_MY/Ubuntu/ubuntu64/ubuntu.iso boot=casper locale=ru_RU quiet splash --initrd /_MY/Ubuntu/ubuntu64/initrd.lz
P. S. добавлять загрузку именно установки,а не запуск LiveDVD нет смысла, установка все равно графическая. А пока системка ставится можно в инете полазить или фильмец глянуть :)
3) Ну и теперь я опишу и приведу пример файлика меню с CentOS 6.2
Принцип добавления CentOS очень прост:
Качаем образ и распаковываем его на флешку в нужную папку. :)
НО, добавить установку напрямую установку Centos-bin-DVD у меня так и не получилось.
Для этого на флешке надо было бы создать еще один раздел с EXT2.
У меня максимум получилось дойти до момента начала установки (до момента появления полоски установки пакетов), дальше он не мог найти пакеты, монтирование в /mnt/isodir ни папки (mount --bind /dir /mnt/isodir ), ни iso образа не помогло.
Разбивать на несколько разделов флешку нет желания ...
а) винда два раздела не хавает
б) Менять бит у флешки для того, чтобы как хард определялась - пропадет универсальность сборки + не факт, что прокатит + не факт что флешка выживет после этого :)
в) Менять драйвера на винде - это на каждом компе надо будет ставить ... лень :)
В итоге решил качнуть netinstall запихнул его на флешку и качнул репозитарий (в нем тоже плюс ... не надо 2 диска DVD объединять) тоже на флешку, чтобы каждый раз не качать. FTP я думаю в любой сетке есть, даже на винде поднимается за 5 минут. Так что не думаю, что возникнут сложности. Т. е. копируем репу на FTP и прописываем к ней путь в меню.
Вот мой centos.lst:
timeout=20
default 0
gfxmenu (hd0,0)/boot/gfx/lin.gz
# Заменить:
# a) пути до папок isolinux и LiveOS
# b) Заменить UUID раздела - UUID=XXXX-XXXX
# c) Заменить метод и директорию репозитария repo=ftp://username:password@host/path.
# Скачать репозитарий на локальный (ftp к примеру) можно с сайта ftp://ftp.yandex.ru/centos/6.2/os/x86_64/
# Debug информация выводится на 3 консоли (Ctrl + Alt + F3)
# Консоль для ввода команд на 2 консоли (Ctrl + Alt + F2)
# Manual - http://docs.fedoraproject.org/ru-RU/Fedora/12/html/Installation_Guide/ap-admin-options.html#sn-boot-options-installmethod
title CentOS-6.2-x86_64-LiveDVD
kernel /_MY/_Soft/_OS/CentOS/CentOS-6.2-x86_64-LiveDVD/isolinux/vmlinuz0 root=UUID=468F-6556 ro liveimg quiet nodiskmount nolvmmount lang=ru_RU keymap=us live_dir=/_MY/_Soft/_OS/CentOS/CentOS-6.2-x86_64-LiveDVD/LiveOS
initrd /_MY/_Soft/_OS/CentOS/CentOS-6.2-x86_64-LiveDVD/isolinux/initrd0.img
title CentOS-6.2-i386-LiveDVD
kernel /_MY/_Soft/_OS/CentOS/CentOS-6.2-i386-LiveDVD/isolinux/vmlinuz0 root=UUID=468F-6556 ro liveimg quiet nodiskmount nolvmmount lang=ru_RU keymap=us live_dir=/_MY/_Soft/_OS/CentOS/CentOS-6.2-i386-LiveDVD/LiveOS
initrd /_MY/_Soft/_OS/CentOS/CentOS-6.2-i386-LiveDVD/isolinux/initrd0.img
title CentOS-6_2-x86_64-netinstall
kernel /_MY/_Soft/_OS/CentOS/CentOS-6_2-x86_64-netinstall/isolinux/vmlinuz root=UUID=468F-6556 ro liveimg quiet nodiskmount nolvmmount lang=ru_RU keymap=us repo=ftp://username:password@host/path
initrd /_MY/_Soft/_OS/CentOS/CentOS-6_2-x86_64-netinstall/isolinux/initrd.img
title <== Назад в меню
configfile (hd0,0)/menu.lst
Ubuntu - разрулил толково,
ОтветитьУдалитьCentOS - бездарно, а ведь достаточно прочитать
оффициальное руководство, там все так просто. :)
tvlm@jabber.ru
Цены бы вам не было если бы конкретно описали добавление CentOS на флешку ... именно на ту флешку на которой уже есть сборка ... т. к. в итоге я на центос забил.
УдалитьДобрый день.
ОтветитьУдалитьУ меня 2 вопроса:
1. Как узнать UUID раздела - UUID=XXXX-XXXX, если флешка на компе с виндой?
2. Как должен выглядеть 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/vmlinuz0 root=UUID=468F-6556 ro liveimg quiet nodiskmount nolvmmount lang=ru_RU keymap=us live_dir=/CentOS/LiveOS
initrd /CentOS/isolinux/initrd0.img
Дмитрий, этот блог я больше не поддерживаю ... перешел на другой http://blog.qwe123.ru
ОтветитьУдалить0) Эта статья написано примерно год назад ...
1) В винде я узнавал UUID не помню точно как, НО помню одну замечательную вещь, что определение UUID в винде отличалось от определения его же в linux ... Такчто самый оптимальный вариант загрузиться с LiveCD такого же CentOS
2) Папки LiveOS нет так как я описывал запуск LiveDVD, а вы качнули полноценный дистрибутив, для установки которого в теории флешку надо разбивать на разделы ... мне такой вариант не понравился и я описал пункт netinstall
P. S. сегодня я уезжаю в отпуск на 2 недели, так что боюсь сегодня Вам больше не отвечу.