Прошу помощи в создании загрузочного ISO - РЕШЕНО

Knoppix

Модераторы: Warderer, Модераторы разделов

Ответить
zuart
Сообщения: 7
ОС: Debian

Прошу помощи в создании загрузочного ISO - РЕШЕНО

Сообщение zuart »

Приветствую...
Коротенько исходные данные:
- Debian 9 установлен по схеме:
/boot - на флешке
/ - в криптованном контейнере, который в свою очередь вложен в RAID1
/swap - в виде спец.файла, который находится на /-разделе

Все это успешно работает в виртуалке (тестовая среда)...

Но вот что необходимо - так это из флешки с /boot сделать загрузочный ISO-образ, который можно как накатить на другую флешку (если потребуется) или на CD-носитель, или даже банально подключить просто непосредственно сам ISO и с него запустить.

Пытался использовать:
- dd ... - с ISO не загружается
- genisoimage... - с ISO не грузится

Попытался даже просто взять рабочий ISO netinstall с сайта, залить его содержимое в директорию и из негонепосредственно собрать загрузочный образ, не получается, не грузится с него, хоть ты тресни (да и размеры оригинального ISO и нового различаются почти в полтора раза).

Помогите, люди добрые...
Спасибо сказали:
Аватара пользователя
Evil_Genius
Сообщения: 92
ОС: Fedora

Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО

Сообщение Evil_Genius »

Если dd не работает, попробуте сначало isohybrid debian.iso а потом dd
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО

Сообщение Bizdelnick »

Во-первых давайте разберёмся с терминологией. Когда говорят об "iso-образах", имеют в виду образ файловой системы ISO9660, предназначенный для записи на CD/DVD (и иногда, с помощью специальной магии, на флешку). То, чего Вы хотите — не iso. Evil_Genius сбило с толку, что Вы говорили про "ISO", поэтому он ответил не в тему.
Во-вторых, я недопонял, что Вы сделали, и чего хотите добиться. Если нужно получить новую флешку, работающую точно так же, как старая, достаточно сделать образ с помощью dd, а потом с помощью dd же раскатать на новую флешку. Если это не удалось — показывайте команды, которыми это делали. Если требуется что-то другое, объясните более доходчиво.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
zuart
Сообщения: 7
ОС: Debian

Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО

Сообщение zuart »

Evil_Genius писал(а):
22.02.2018 21:18
Если dd не работает, попробуте сначало isohybrid debian.iso а потом dd


не совсем понимаю, к какому debian.iso применять гибрид, причем в первую очередь
мне ведь нужно по сути наоборот, из файлового набора установленного на флешке /boot - раздела собрать загружаемый ISO-образ
Спасибо сказали:
zuart
Сообщения: 7
ОС: Debian

Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО

Сообщение zuart »

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 - РЕШЕНО

Сообщение Bizdelnick »

Я окончательно перестал что-либо понимать. Отдельно взятого /boot недостаточно для загрузки. Нужен начальный загрузчик (legacy или EFI), нужен корень.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
zuart
Сообщения: 7
ОС: Debian

Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО

Сообщение zuart »

Bizdelnick писал(а):
22.02.2018 22:41
Я окончательно перестал что-либо понимать. Отдельно взятого /boot недостаточно для загрузки. Нужен начальный загрузчик (legacy или EFI), нужен корень.


Сори, забыл упомянуть...
Загрузчик / груб тоже на флешке (/dev/sdd) - раздел /dev/sdd1 помечен как загрузочный
Спасибо сказали:
zuart
Сообщения: 7
ОС: Debian

Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО

Сообщение zuart »

Кажется, удалось сделать то, что было нужно...
Сейчас уже голова не варит толком, завтра повторю эксперимент и если все верно, отпишусь пошагово как и что надо делать, чтобы из загрузочного /boot - раздела получить ISO-шник, который можно использовать и подключением и через запись на CD/FLASH
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО

Сообщение Bizdelnick »

zuart писал(а):
22.02.2018 22:50
Загрузчик / груб тоже на флешке (/dev/sdd) - раздел /dev/sdd1 помечен как загрузочный

Для legacy-загрузки с CD grub не годится, нужен isolinux. Для EFI-загрузки нужен образ FAT.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
zuart
Сообщения: 7
ОС: Debian

Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО

Сообщение zuart »

Bizdelnick писал(а):
23.02.2018 10:52
zuart писал(а):
22.02.2018 22:50
Загрузчик / груб тоже на флешке (/dev/sdd) - раздел /dev/sdd1 помечен как загрузочный

Для 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"
Спасибо сказали:
zuart
Сообщения: 7
ОС: Debian

Re: Прошу помощи в создании загрузочного ISO - РЕШЕНО

Сообщение zuart »

В конечном итоге получил сервер с RAID1 (3 диска: 2 активные + 1 страховочный) - т.к. криптуется рейд, то структуру внутреннего разбиения неизвестна, и для замены корявого диска по идее можно грузануться с LiveCD и добавить в md0 новые диски без расшифровки (т.е. без передачи ключей/кодовой фразы сотруднику ДЦ)

Запуск сервера производится либо лично с помощью флешки/CD-диска с загрузчиком, либо путем загрузки с ISO-образа через IPMI удаленно

Думаю, что от спецслужб, конечно, это не защитит - эти другими способами заставят самому все открыть... но вот от особенно любопытных "кулхацкеров" в самом ДЦ по идее должно обезопасить - люди с техническими возможностями читать данные из памяти запущенного сервака, думаю, не работают в штате простых саппортеров...
Спасибо сказали:
Ответить