1

В качестве основы я начал с настройки TFTP-PXE-Boot-Server. Но теперь я также хочу загрузить SystemRescueCD (версия 2017-06-11) с использованием PXE.

Я скачал образ ISO, а затем на TFTP-сервере смонтировал ISO-образ как images/sysresccd . Следуя указаниям, приведенным в руководстве для PXE @ sysresccd, я добавил в свое меню это:

LABEL SysRescCd
    MENU LABEL SysRescCd
    KERNEL images/sysresccd/isolinux/rescue32
    APPEND initrd=images/sysresccd/isolinux/initram.igz dodhcp netboot=tftp://MY_SERVER_IP/images/sysresccd/sysrcd.dat

Пункт меню появляется в меню, и когда я выбираю его, сначала все выглядит хорошо. Но во время книги, когда он пытается загрузить sysrcd.dat, загрузка происходит очень медленно, и когда она достигает 7%, загрузка останавливается, а затем возобновляется, и это происходит бесконечными циклами. Что случилось?

Я не хочу запускать еще один сервис (например, NFS).

1 ответ1

1

Вы не единственный с этой проблемой.

Как написано в связанном сообщении на форуме, есть обходной путь, изменив initram.igz, так что он поддерживает большие файлы через TFTP. Не совсем очевидно, как это сделать, хотя руководство по собственным ядрам и этот вопрос о том, как изменить архив cpio, могут помочь собрать все вместе. Вот что вам нужно сделать:

# Temp dir to store the extracted initram.igz
mkdir /tmp/initram
cd /tmp/initram
# otherwise you'll get errors extracting the archive
fakeroot
# extract the initram.igz:
cat /mnt/sysresccd/isolinux/initram.igz | xz -d | cpio -id
# add the workaround parameter to init
sed -i 's/\/bin\/busybox tftp/\/bin\/busybox tftp -b 10000/' init 
# create a new initram.igz
find . | cpio -H newc -o | xz --check=crc32 --x86 --lzma2 > /tmp/sysresccd-initram.igz

Затем используйте новый файл initram.igz в файле конфигурации pxelinux.cfg/default, и загрузка начнется.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .