Я пытаюсь установить Ubuntu 16.04 через PXE. Я обслуживаю компакт-диск из TFTP/HTTP. Я проверил, что файлы HTTP служат и что подкаталоги NFS могут быть установлены. Моя проблема в том, что когда я выбираю опцию «Установка», загрузка идет нормально, но я застрял с ручной установкой, а не с автоматической. Я могу пройти все шаги и установить Ubuntu как есть, но мой файл preseed полностью игнорируется. Вот мой pxelinux.cfg:

path pxe/ubuntu/16.04/install/netboot/ubuntu-installer/amd64/boot-screens/
default pxe/ubuntu/16.04/install/netboot/ubuntu-installer/amd64/boot-screens/vesamenu.c32
prompt 0
timeout 0
LABEL Ubuntu 16.04
    MENU LABEL Install Ubuntu 16.04 - Automatic
    KERNEL pxe/ubuntu/16.04/install/netboot/ubuntu-installer/amd64/linux
    INITRD pxe/ubuntu/16.04/install/netboot/ubuntu-installer/amd64/initrd.gz \
    APPEND auto=true priority=critical vga=788 file=pxe/ubuntu/16.04/preseed/default.seed \
    preseed/interactive=false

Вот мой файл preseed:

d-i debian-installer/locale string en_US
d-i debian-installer/language string en
d-i debian-installer/country string US
d-i console-setup/ask_detect boolean false
d-i keyboard-configuration/xkb-keymap select us
d-i netcfg/choose_interface select auto
d-i netcfg/get_hostname string test
d-i mirror/country string manual
d-i passwd/root-password password r00tme
d-i passwd/root-password-again password r00tme
d-i passwd/user-fullname string Ken
d-i passwd/username string ken
d-i passwd/user-password password insecure
d-i passwd/user-password-again password insecure
d-i user-setup/encrypt-home boolean true
d-i clock-setup/utc boolean true
d-i time/zone string US/Eastern
d-i clock-setup/ntp boolean true
d-i clock-setup/ntp-server string time.nist.gov
d-i partman-auto/method string lvm
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-md/device_remove_md boolean true
d-i partman-lvm/confirm boolean true
d-i partman-lvm/confirm_nooverwrite boolean true
d-i partman-auto/choose_recipe select atomic
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
tasksel tasksel/first multiselect lamp-server
d-i grub-installer/only_debian boolean true
d-i finish-install/reboot_in_progress note

Как получить файл preseed для распознавания, чтобы установка была автоматизирована и не требовала дополнительных вопросов?

1 ответ1

1

Согласно https://serverfault.com/questions/682245/debian-preseed-cfg-language-not-set , файл preseed, не настроенный в initrd, будет загружен только после установки значений локализации. Сначала необходимо установить следующее в файле syslinux.cfg или pxelinux.cfg:

APPEND url=http://localhost/preseed/desktop.seed vga=normal \
initrd=ubuntu- installer/amd64/initrd.gz \ 
locale=en_CA.UTF-8 console-setup/ask_detect=false  \
console-setup/layoutcode=us keyboard-configuration/layoutcode=us \ 
mirror/http/mirror=ca.archive.ubuntu.com netcfg/get_hostname=

Добавление DEBCONF_DEBUG = 5 в строку APPEND также даст вам более подробные журналы в системном журнале во время выполнения установки. Вам также следует заменить зеркало на то, которое подходит вам. Я также думаю, что директива file = будет искать файл на клиентском компьютере, а не на сервере pxe, поскольку это параметр загрузки, передаваемый клиентскому компьютеру. Вы можете проверить, видит ли установка файл, проверив /var /log /syslog во время установки на клиент с включенным DEBCONF_DEBUG. Вы увидите «preseed /file not Существует» в журнале, если установка не найдет его.

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