Прошу помощи в создании загрузочного ISO - РЕШЕНО
Модераторы: Warderer, Модераторы разделов
Прошу помощи в создании загрузочного ISO - РЕШЕНО
Приветствую...
Коротенько исходные данные:
- Debian 9 установлен по схеме:
/boot - на флешке
/ - в криптованном контейнере, который в свою очередь вложен в RAID1
/swap - в виде спец.файла, который находится на /-разделе
Все это успешно работает в виртуалке (тестовая среда)...
Но вот что необходимо - так это из флешки с /boot сделать загрузочный ISO-образ, который можно как накатить на другую флешку (если потребуется) или на CD-носитель, или даже банально подключить просто непосредственно сам ISO и с него запустить.
Пытался использовать:
- dd ... - с ISO не загружается
- genisoimage... - с ISO не грузится
Попытался даже просто взять рабочий ISO netinstall с сайта, залить его содержимое в директорию и из негонепосредственно собрать загрузочный образ, не получается, не грузится с него, хоть ты тресни (да и размеры оригинального ISO и нового различаются почти в полтора раза).
Помогите, люди добрые...
Коротенько исходные данные:
- Debian 9 установлен по схеме:
/boot - на флешке
/ - в криптованном контейнере, который в свою очередь вложен в RAID1
/swap - в виде спец.файла, который находится на /-разделе
Все это успешно работает в виртуалке (тестовая среда)...
Но вот что необходимо - так это из флешки с /boot сделать загрузочный ISO-образ, который можно как накатить на другую флешку (если потребуется) или на CD-носитель, или даже банально подключить просто непосредственно сам ISO и с него запустить.
Пытался использовать:
- dd ... - с ISO не загружается
- genisoimage... - с ISO не грузится
Попытался даже просто взять рабочий ISO netinstall с сайта, залить его содержимое в директорию и из негонепосредственно собрать загрузочный образ, не получается, не грузится с него, хоть ты тресни (да и размеры оригинального ISO и нового различаются почти в полтора раза).
Помогите, люди добрые...
- Evil_Genius
- Сообщения: 92
- ОС: Fedora
Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО
Если dd не работает, попробуте сначало isohybrid debian.iso а потом dd
- Bizdelnick
- Модератор
- Сообщения: 20752
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО
Во-первых давайте разберёмся с терминологией. Когда говорят об "iso-образах", имеют в виду образ файловой системы ISO9660, предназначенный для записи на CD/DVD (и иногда, с помощью специальной магии, на флешку). То, чего Вы хотите — не iso. Evil_Genius сбило с толку, что Вы говорили про "ISO", поэтому он ответил не в тему.
Во-вторых, я недопонял, что Вы сделали, и чего хотите добиться. Если нужно получить новую флешку, работающую точно так же, как старая, достаточно сделать образ с помощью dd, а потом с помощью dd же раскатать на новую флешку. Если это не удалось — показывайте команды, которыми это делали. Если требуется что-то другое, объясните более доходчиво.
Во-вторых, я недопонял, что Вы сделали, и чего хотите добиться. Если нужно получить новую флешку, работающую точно так же, как старая, достаточно сделать образ с помощью dd, а потом с помощью dd же раскатать на новую флешку. Если это не удалось — показывайте команды, которыми это делали. Если требуется что-то другое, объясните более доходчиво.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО
Evil_Genius писал(а): ↑22.02.2018 21:18Если dd не работает, попробуте сначало isohybrid debian.iso а потом dd
не совсем понимаю, к какому debian.iso применять гибрид, причем в первую очередь
мне ведь нужно по сути наоборот, из файлового набора установленного на флешке /boot - раздела собрать загружаемый ISO-образ
Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО
Bizdelnick писал(а): ↑22.02.2018 22:06Во-первых давайте разберёмся с терминологией. Когда говорят об "iso-образах", имеют в виду образ файловой системы ISO9660, предназначенный для записи на CD/DVD (и иногда, с помощью специальной магии, на флешку). То, чего Вы хотите — не iso. Evil_Genius сбило с толку, что Вы говорили про "ISO", поэтому он ответил не в тему.
Во-вторых, я недопонял, что Вы сделали, и чего хотите добиться. Если нужно получить новую флешку, работающую точно так же, как старая, достаточно сделать образ с помощью dd, а потом с помощью dd же раскатать на новую флешку. Если это не удалось — показывайте команды, которыми это делали. Если требуется что-то другое, объясните более доходчиво.
Конечно, постараюсь.
Вот смотрите, опуская лишнюю информацию.
Имею виртуалку в которой установлен Debian с использованием (для упрощения понимания) двух физических дисков:
/dev/md0 = / + /swap (если детально, то это RAID1 из 3-х дисков - 2 активных + 1 страховочный)
/dev/sdd1 = /boot (это по раздел на флешке. сама флешка 64Gb, раздел 100Mb в начале, остальная область не размечена)
Нужно получить
ISO-образ, который будет по сути повторять /dev/sdd1 (он же /boot), который можно подключать как CD например, и загружаться с него
ну а на физическом сервере этот образ можно как использовать для загрузки через IPMI, так и записывать на другую флешку / CD и использовать непосредственно для запуска с консоли (грубо говоря, если железка вырубилась, то ее может запустить только доверенное лицо, используя персональную флешку/диск или имеющий доступ к IPMI )
- Bizdelnick
- Модератор
- Сообщения: 20752
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО
Я окончательно перестал что-либо понимать. Отдельно взятого /boot недостаточно для загрузки. Нужен начальный загрузчик (legacy или EFI), нужен корень.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО
Bizdelnick писал(а): ↑22.02.2018 22:41Я окончательно перестал что-либо понимать. Отдельно взятого /boot недостаточно для загрузки. Нужен начальный загрузчик (legacy или EFI), нужен корень.
Сори, забыл упомянуть...
Загрузчик / груб тоже на флешке (/dev/sdd) - раздел /dev/sdd1 помечен как загрузочный
Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО
Кажется, удалось сделать то, что было нужно...
Сейчас уже голова не варит толком, завтра повторю эксперимент и если все верно, отпишусь пошагово как и что надо делать, чтобы из загрузочного /boot - раздела получить ISO-шник, который можно использовать и подключением и через запись на CD/FLASH
Сейчас уже голова не варит толком, завтра повторю эксперимент и если все верно, отпишусь пошагово как и что надо делать, чтобы из загрузочного /boot - раздела получить ISO-шник, который можно использовать и подключением и через запись на CD/FLASH
- Bizdelnick
- Модератор
- Сообщения: 20752
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО
Для legacy-загрузки с CD grub не годится, нужен isolinux. Для EFI-загрузки нужен образ FAT.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО
Bizdelnick писал(а): ↑23.02.2018 10:52
Для legacy-загрузки с CD grub не годится, нужен isolinux. Для EFI-загрузки нужен образ FAT.
Угу, к этому и пришел... На самом деле, возможно, я наверняка "изобрел велосипед", но зато не "по готовому мануалу кнопки понажимал".
В двух словах:
- сделал "зеркало" /boot - раздела в шифрованном ROOT-е (так же как и SWAP - файлом), т.к. при удалении флешки из компа пропадает в принципе /boot
- воспользовался данными загрузчика с диска установки системы (с которого собственно все и ставил), по сути взял образ,выкинул из него все лишнее
А теперь более подробно:
Код: Выделить всё
1. Установка необходимых пакетов
> apt-get install -y genisoimage syslinux syslinux-utils
2. Подготовка базовой директории
> mkdir /cd && cd /cd
> mkdir /cd/iso
3. Копирование данных загрузчика
> cp -rp /boot /cd/iso/boot
4. Копирование загрузчика инсталлятора
> mkdir /cd/iso/isolinux
> cp /mnt/cdrom/isolinux/boot.cat /cd/iso/isolinux/
> cp /mnt/cdrom/isolinux/isolinux.* /cd/iso/isolinux/
> cp /mnt/cdrom/isolinux/*.c32 /cd/iso/isolinux/
Предварительно примаунтить CD в /mnt/cdrom
5. Запомнить информацию
> ls -l /cd/iso/boot
полные имена файлов vmlinuz и initrd
> fdisk -l
путь диска с ROOT-точкой монтирования
6. Настройка файла конфигурации (mcedit /cd/iso/isolinux/isolinux.cfg)
Имена файлов (ну или переименовать) и путь к диску из п.5
------------------------------------
menu title Debian boot menu
default debian
label debian
menu default
menu label ^Start Debian (default)
kernel /boot/vmlinuz-4.9.0-4-amd64
initrd /boot/initrd.img-4.9.0-4-amd64
append root=/dev/mapper/md0_crypt persistent quiet
timeout 0
prompt 0
------------------------------------
7. Формирование ISO-образа
> genisoimage -o /cd/boot.iso -J -R -V "Boot" -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table /cd/iso
> isohybrid /cd/boot.iso
8. Имеем на выходе файл ISO-образа
Ну и по теме "отзеркаливания" /boot
Код: Выделить всё
===== Перенос /BOOT-раздела =====
1. Создание локальной копии /boot
> dd if=/dev/sdd1 of=/boot.img
2. Изменить точку монтирования /boot (mcedit /etc/fstab)
------------------------------------
/boot.img /boot ...............
------------------------------------
3. Выключение сервера
> poweroff
4. Отключение диска/флешки "/sdd"
Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО
В конечном итоге получил сервер с RAID1 (3 диска: 2 активные + 1 страховочный) - т.к. криптуется рейд, то структуру внутреннего разбиения неизвестна, и для замены корявого диска по идее можно грузануться с LiveCD и добавить в md0 новые диски без расшифровки (т.е. без передачи ключей/кодовой фразы сотруднику ДЦ)
Запуск сервера производится либо лично с помощью флешки/CD-диска с загрузчиком, либо путем загрузки с ISO-образа через IPMI удаленно
Думаю, что от спецслужб, конечно, это не защитит - эти другими способами заставят самому все открыть... но вот от особенно любопытных "кулхацкеров" в самом ДЦ по идее должно обезопасить - люди с техническими возможностями читать данные из памяти запущенного сервака, думаю, не работают в штате простых саппортеров...
Запуск сервера производится либо лично с помощью флешки/CD-диска с загрузчиком, либо путем загрузки с ISO-образа через IPMI удаленно
Думаю, что от спецслужб, конечно, это не защитит - эти другими способами заставят самому все открыть... но вот от особенно любопытных "кулхацкеров" в самом ДЦ по идее должно обезопасить - люди с техническими возможностями читать данные из памяти запущенного сервака, думаю, не работают в штате простых саппортеров...