
Обычно при установке CentOS 7 вы загружаете ISO, записываете его на флэш-накопитель и загружаете его. Однако у меня есть уникальный сценарий, в котором я хотел бы иметь возможность разместить установочные файлы CentOS 7 на системном /boot/
разделе и создать пользовательскую GRUB2
запись, которая может загружаться в эту среду. Затем это можно использовать для установки CentOS 7 на ту же систему.
Я знаю, это звучит глупо, но у меня есть на то причины.
Проведя некоторые исследования, я пытаюсь собрать воедино, как это работает. Вот что я вижу в своей голове сейчас:
GRUB2
загрузит ядро CentOS 7vmlinuz
иinitrd.img
.- После инициализации ядра и загрузки
initrd.img
в памятьdracut-initqueue
запускается служба. - Затем процессы
dracut-initqueue
попытаются загрузитьstage2
образ, содержащий среду выполнения установки (в данном случае Anaconda). - Наконец, начинается процесс установки CentOS.
Итак, для начала я...
- Загрузил ISO-образ, смонтировал его и скопировал файлы
/images/pxeboot/vmlinuz
,/images/pxeboot/initrd.img
и/LiveOS/squashfs.img
(который, как я полагаю, содержитstage2
образ) в свой/boot/
раздел. - Добавлена следующая запись в
/etc/grub.d/40_custom
.
menuentry "CentOS 7 Installation" {
set root=(hd0,msdos1)
linux /centos7-install/vmlinuz initrd=initrd.img stage2=/centos7-install/squashfs.img
initrd /centos7-install/initrd.img
}
После выполнения вышеописанного я надеялся, что, по крайней мере, смогу загрузить Anaconda, однако вместо этого он просто загружается до сообщений "dracut-initqueue timeout". К сожалению, мне не удалось найти никаких логов, которые бы намекали на то, что именно пошло не так.
Может, у кого-нибудь есть идеи, как это можно сделать?
решение1
Заменить следующую строку
linux /centos7-install/vmlinuz initrd=initrd.img stage2=/centos7-install/squashfs.img
с
linux /centos7-install/vmlinuz inst.repo=<source>
где <source>
может быть http://host/path
полная копия каталогов и файлов на полном установочном DVD. По желанию, вы можете извлечь файлы из "boot" ISO и скопировать только .treeinfo
файл из "DVD" ISO. Смотрите дополнительные опции (например, NFS) вдокументация.
Конечно, для использования этого метода «как есть» необходим доступ к сети.