Некоторое время назад Ubuntu оставил старый формат preseed в пыли. Не то чтобы я знал почему, но кажется странным оставлять что-то без работающей замены или хорошей четкой документации. Лучше всего было бы предоставить инструмент, с помощью которого вы могли бы ответить на вопросы по настройке и сгенерировать конфигурацию. В любом случае, у меня есть полностью функциональный preseed, который нельзя преобразовать с помощью продвигаемого инструмента... Я имею в виду, что он вообще не работает.
Как я могу лучше всего перевести это в новый формат yml?
Кажется, совсем запутался:
Traceback (последний последний вызов):
Файл "/snap/autoinstall-generator/64/usr/bin/autoinstall-generator", строка 56, в <module>
sys.exit(основной())
Файл "/snap/autoinstall-generator/64/usr/bin/autoinstall-generator", строка 47, в главном
out = convert_file (infile, args)
Файл "/snap/autoinstall-generator/64/lib/python3.6/site-packages/autoinstall_generator/merging.py", строка 205, в convert_file
для idx, строка в enumerate(preseed_file.readlines()):
Файл "/snap/autoinstall-generator/64/usr/lib/python3.6/encodings/ascii.py", строка 26, в декодировании
вернуть codecs.ascii_decode (ввод, self.errors) [0]
UnicodeDecodeError: кодек ascii не может декодировать байт 0xe2 в позиции 1686: порядковый номер не в диапазоне (128)
# --------------------------------------------- -- #
# Автоматическая установка
# --------------------------------------------- -- #
# Простая инструкция, чтобы сообщить установщику Debian, что
# это предназначена для автоматической установки и только для
# задавайте критические вопросы (на которые мы ответим в этом файле)
# Конец документации
d-i автоматическая установка/включение логического значения true
d-i debconf/priority выберите критический
# --------------------------------------------- -- #
# --------------------------------------------- -- #
# Конфигурация сети
# --------------------------------------------- -- #
# Настройка сети. Это может быть статическая установка или DHCP.
# Предпочтительной конфигурацией RTD по умолчанию является использование DHCP,
# и для беспроводных сетей (системы только с беспроводными картами)
# по умолчанию используется SSID с именем "loader" и гостевая строка wpa
# "letmein1234". Это позволяет поддерживать поддерживаемые системы
# устанавливается непосредственно через WiFi без участия пользователя.
# Конец документации
d-i netcfg/choose_interface выбрать вручную
d-i netcfg/hostname string RTD-Client
d-i netcfg/get_hostname строка unassigned-hostname
d-i netcfg/get_domain строка неназначенный-домен
d-i hw-detect/load_firmware логическое значение true
# Мы хотим, чтобы файл предварительной конфигурации работал в системах как с, так и с
# без успешной настройки dhcp
d-i netcfg/dhcp_failed примечание
d-i netcfg/dhcp_options выберите Настроить сеть вручную
# d-i netcfg/dhcp_timeout строка 60
d-i netcfg/wireless_show_essids выберите вручную
d-i загрузчик строк netcfg/wireless_essid
d-i netcfg/wireless_essid_again загрузчик строк
d-i netcfg/wireless_security_type выберите wpa
d-i netcfg/wireless_wpa строка letmein1234
# --------------------------------------------- -- #
# --------------------------------------------- -- #
# НЕ устанавливайте на флешку(!)
# --------------------------------------------- -- #
#
# Программа установки Debian установит на первый найденный диск, который может
# иногда быть самим USB-накопителем. Обойти это, свернув собственный авто
# обнаружить логику, запрещающую установку на USB-устройства.
#
# d-i partman/early_command string [ "$(ls -A /tmp)" ] && umount -l /media || эхо "Пусто" ;
# Конец документации
d-i partman/early_command строка \
USBDEV=$(mount | grep hd-media | cut -d" " -f1 | sed "s/\(.*\)./\1/");\
BOOTDEV=$(список-устройств диск | grep -v \$USBDEV | голова -1);\
debconf-set partman-auto/disk $BOOTDEV;\
debconf-set grub-installer/bootdev $BOOTDEV;
# --------------------------------------------- -- #
# --------------------------------------------- -- #
# Настройка учетной записи (временная учетная запись пользователя)
# --------------------------------------------- -- #
# Настройте начального пользователя и отключите вход root по умолчанию.
# вход в систему root может быть повторно включен позже путем установки пароля root.
# Здесь установлен зашифрованный пароль, который следует изменить
# КАК МОЖНО СКОРЕЕ после сборки системы. Предпочтительно подключение к LDAP/AD
# в управляемой среде.
# Конец документации
d-i passwd/root-login логическое значение false
d-i пароль/полное имя пользователя строка RTD Пользователь
d-i пароль/имя пользователя строка tangarora
d-i passwd/user-password виден как true
d-i user-setup/allow-password-weak boolean true
d-i passwd/user-password-crypted password $6$Rn5/UTzjIs68MX$9gz8vmshGlPqse3VoX8dzSfhWxRVoYv1MB6aGRD8xdvztOf.gD.SxxVWkxYrwwbShB9Q14flquK/apbdQJ65t1
d-i passwd/auto-login boolean true
# --------------------------------------------- -- #
# --------------------------------------------- -- #
# Локализация
# --------------------------------------------- -- #
# Укажите настройки локализации, чтобы предпочтительный
# язык используется для отображения и форматирования. Сравним с
# MUI в средах Microsoft.
# Конец документации
d-i debian-installer/locale строка en_US.UTF-8
d-i localechooser/supported-locales multiselect en_US.UTF-8, se_SE.UTF-8
d-i console-setup/ask_detect логическое значение false
# --------------------------------------------- -- #
# --------------------------------------------- -- #
# Установить раскладку клавиатуры
# --------------------------------------------- -- #
# Установите предпочтительную раскладку клавиатуры. Клавиатуры будут работать
# несмотря ни на что, но буквы и символы на самом деле могут не
# нарисованы на клавишах. По умолчанию это мы.
d-i keyboard-configuration/xkb-keymap выберите se
d-i keyboard-configuration/layoutcode string se
d-i debian-installer/keymap выберите se
d-i keymap выберите se
d-i console-setup/layoutcode string se
d-i console-setup/ask_detect логическое значение false
# --------------------------------------------- -- #
# --------------------------------------------- -- #
# Настройка часов и часового пояса
# --------------------------------------------- -- #
d-i clock-setup/utc boolean true
d-i строка времени/зоны Etc/UTC
d-i clock-setup/ntp boolean true
d-i clock-setup/ntp-server string ntp.ubuntu.com
# --------------------------------------------- -- #
# --------------------------------------------- -- #
# ЭФИ
# --------------------------------------------- -- #
#
# Системный раздел EFI (Extensible Firmware Interface) — это раздел на устройстве хранения данных.
# UEFI обеспечивает обратную совместимость с устаревшими системами, резервируя первый блок (сектор)
# раздел для кода совместимости, фактически создающий устаревший загрузочный сектор. На базе устаревшего BIOS
# систем первый сектор раздела загружается в память и выполнение передается этому коду.
# Здесь мы сообщаем программе установки установить установку загрузки EFI, если это возможно, чтобы можно было обрабатывать как НОВЫЕ, так и старые системы.
# и установленную систему можно запускать.
d-i partman-efi/non_efi_system логическое значение true
# Конец документации
# --------------------------------------------- -- #
# --------------------------------------------- -- #
# Установка загрузчика GRUB
# --------------------------------------------- -- #
#
# Сообщите установщику grub установить в MBR, даже если он также найдет другие
# ОС, которая, скорее всего, позволит без проблем загрузить только что установленную ОС Linux.
# Конец документации
d-i grub-installer/only_debian логическое значение true
d-i grub-installer/with_other_os логическое значение true
# --------------------------------------------- -- #
# --------------------------------------------- -- #
# Схема диска (зашифрованный диск по умолчанию)
# --------------------------------------------- -- #
#
# Установите параметр для шифрования жесткого диска:
# По умолчанию жесткий диск будет зашифрован для защиты данных
# и его нужно будет разблокировать с помощью пароля, когда
# система загружена. Кроме того, предпочтительнее значение по умолчанию.
# где пространство подкачки установлено на 200% ОЗУ, чтобы
# спящий режим может поддерживаться.
# Конец документации
d-i partman-auto/method string crypto
d-i partman-crypto/passphrase пароль letmein1234
d-i partman-crypto/passphrase-again пароль letmein1234
d-i partman-auto-crypto/erase_disks логическое значение false
d-i partman-lvm/device_remove_lvm логическое значение true
d-i partman-lvm/device_remove_lvm_span логическое значение true
d-i partman-auto/purge_lvm_from_device логическое значение true
d-i partman-lvm/подтвердить логическое значение true
d-i partman-lvm/confirm_nooverwrite логическое значение true
d-i partman-auto-lvm/guided_size строка макс.
d-i partman-auto-lvm/new_vg_name строка crypt
#d-i partman-auto/choose_recipe выберите зашифрованный с корнем
d-i partman-auto/expert_recipe строка \
мульти-cnx::\
538 538 1075 бесплатно \
$ первичный \
$iflabel{gpt} \
$reusemethod{ } \
метод { efi } формат { } \
. \
3500 3500 3500 доб3 \
$ первичный { } $ загрузочный { } \
метод{ формат } формат{ } \
use_filesystem{ } файловая система{ ext4 } \
точка монтирования {/boot} \
. \
200% 25000 200% линукс-своп \
$lvmok{ } lv_name{ своп } \
in_vg { крипта } \
$ первичный { } \
метод{ подкачка } формат{ } \
. \
500 1000 1000000000 доб4 \
$lvmok{ } lv_name{ корень } \
in_vg { крипта } \
$ первичный { } \
метод{ формат } формат{ } \
use_filesystem{ } файловая система{ ext4 } \
точка крепления{ / } \
.
d-i partman-md/device_remove_md логическое значение true
d-i partman-md/подтвердить логическое значение true
d-i partman-basicfilesystems/no_mount_point логическое значение false
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition выбрать закончить
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite логическое значение true
# --------------------------------------------- -- #
# --------------------------------------------- -- #
# Выбор пакета
# --------------------------------------------- -- #
# Пакеты могут быть выбраны в виде групп (метапакетов), таких как kde-desktop или
# в виде отдельных пакетов. Однако будет использоваться только одна строка «pkgsel/include»!
# не забудьте разместить все нужные вам пакеты в одной строке.
# tasksel tasksel/first multiselect стандартные опции:
# ubuntu-desktop-minimal kubuntu-desktop, ubuntu-gnome-desktop, lubuntu-desktop, ubuntu-mate-desktop
# рабочий стол, gnome-desktop, kde-desktop, cinnamon-desktop, mate-desktop,
# lxde-рабочий стол, веб-сервер, ssh-сервер, сервер печати.
# Строка "OEM" ниже предназначена для упрощения замены строки на
# соответствующий выбор роли Debian с использованием "sed" или аналогичного.
# Конец документации
tasksel tasksel/first multiselect ubuntu-desktop
d-i pkgsel/include string openssh-server virt-what wget spice-vdagent git
# Допустимые варианты для pkgsel/upgrade: safe-upgrade full-upgrade none
d-i pkgsel/upgrade выбрать безопасное обновление
d-i pkgsel/update-policy выберите автоматические обновления
# По умолчанию база данных местоположения системы будет обновлена после
# программа установки завершила установку большинства пакетов. Это может занять некоторое время, поэтому
# если вы этого не хотите, вы можете установить значение "false", чтобы отключить его.
# d-i pkgsel/updatedb boolean false
# --------------------------------------------- -- #
# --------------------------------------------- -- #
# Предварительные задания по умолчанию для аддонов
# --------------------------------------------- -- #
d-i preseed/late_command строка \
целевой клон git https://github.com/vonschutter/RTD-Setup.git/opt/rtd; \
in-target /usr/bin/chmod 755 /opt/rtd/core/rtd* ; \
in-target /bin/bash /opt/rtd/core/rtd-oem-enable-config.sh ; \
cp /*.cfg /target/opt/rtd/ ; \
размонтировать -l /носитель || эхо "Пусто" ; \
выбросить || истинный; \
echo "------ начальная установка завершена! ------"
# для работы Ubuntu (игнорируется Debian)...
вездесущность вездесущность/success_command строка \
целевой клон git https://github.com/vonschutter/RTD-Setup.git/opt/rtd; \
in-target /bin/bash /opt/rtd/core/rtd-oem-enable-config.sh ; \
in-target /usr/bin/chmod 755 /opt/rtd/core/rtd* ; \
cp /*.cfg /target/opt/rtd/ ;\
echo "------ начальная установка завершена! ------"
# Ответьте на последний вопрос
d-i debian-installer/splash логическое значение true
# Возможность попытаться изящно извлечь установочный носитель:
d-i cdrom-detect/eject boolean true
# Выключить машину
d-i примечание о завершении установки/перезагрузки_в_прогрессе
# --------------------------------------------- -- #