B.4. Вміст файлу попередньої конфігурації (для trixie)

Фрагменти конфігурації, використані у цьому додатку, також доступні як приклад файлу попередньої конфігурації з https://d-i.debian.org/manual/example-preseed.txt.

Зверніть увагу, що цей приклад базується на встановленні для архітектури Intel x86. Якщо ви встановлюєте іншу архітектуру, деякі з прикладів (наприклад, вибір клавіатури та встановлення завантажувача) можуть бути неактуальними і їх слід замінити налаштуваннями debconf, що відповідають вашій архітектурі.

Докладні відомості про те, як насправді працюють різні компоненти програми встановлення Debian, можна знайти у Розділ 6.3, «Використання окремих компонентів».

B.4.1. Локалізація

Під час звичайного встановлення питання про локалізацію ставляться першими, тому ці значення можна попередньо вказати лише за допомогою методів initrd або параметрів завантаження ядра. Автоматичний режим (Розділ B.2.3, «Автоматичний режим») передбачає встановлення auto-install/enable=true (зазвичай через псевдонім auto preseed). Це затримує постановку питань про локалізацію, щоб їх можна було попередньо задати будь-яким методом.

Локалізацію можна використовувати для вказівки як мови, так і країни, і це може бути будь-яка комбінація мови, що підтримується debian-installer, і визнаної країни. Якщо комбінація не утворює правильну локаль, програма встановлення автоматично вибере локаль, яка є правильною для вибраної мови. Щоб вказати локаль як параметр завантаження, використовуйте locale=en_US.UTF-8.

Хоча цей метод дуже простий у використанні, він не дозволяє попередньо вказати усі можливі комбінації мови, країни та локалі[20]. Крім того, значення можуть бути попередньо задані індивідуально. Мова та країна також можуть бути вказані як параметри завантаження.

# Попередній вибір тільки локалі задає мову, країну та локаль.
d-i debian-installer/locale string en_US.UTF-8

# Для більшої гнучкості значення можуть бути задані індивідуально.
#d-i debian-installer/language string en
#d-i debian-installer/country string NL
#d-i debian-installer/locale string en_GB.UTF-8
# За бажанням вкажіть додаткові локалі, які потрібно згенерувати.
#d-i localechooser/supported-locales multiselect en_US.UTF-8, nl_NL.UTF-8

Конфігурація клавіатури складається з вибору розкладки і (для нелатинських розкладок) клавіші перемикання між нелатинською і американською розкладками. Під час інсталяції доступні лише базові варіанти розкладки клавіш. Розширені варіанти доступні лише у встановленій системі, за допомогою dpkg-reconfigure keyboard-configuration.

# Вибір клавіатури.
d-i keyboard-configuration/xkb-keymap select us
# d-i keyboard-configuration/toggle select No toggling

Щоб пропустити конфігурацію клавіатури, задайте keymap з skip-config. Це призведе до того, що карта клавіш ядра залишиться активною.

B.4.2. Конфігурація мережі

Звичайно, попереднє завантаження мережевої конфігурації не працюватиме, якщо ви завантажуєте файл попередньої конфігурації з мережі. Але це чудово, коли ви завантажуєтеся з оптичного диска або USB-накопичувача. Якщо ви завантажуєте файли попередньої конфігурації з мережі, ви можете передати параметри конфігурації мережі за допомогою параметрів завантаження ядра.

Якщо вам потрібно вибрати певний інтерфейс під час мережевого завантаження перед завантаженням файлу попередньої конфігурації з мережі, використовуйте параметр завантаження, наприклад, interface=eth1.

Хоча попереднє встановлення конфігурації мережі зазвичай неможливе при використанні мережевого попереднього встановлення (за допомогою «preseed/url»), ви можете скористатися наведеним нижче хакерським прийомом, щоб обійти цю проблему, наприклад, якщо ви хочете встановити статичну адресу для мережевого інтерфейсу. Злом полягає в тому, щоб змусити мережеву конфігурацію запуститися знову після завантаження файлу попередньої конфігурації, створивши скрипт «preseed/run», що містить наступні команди:

kill-all-dhcp; netcfg

Наступні змінні debconf стосуються конфігурації мережі.

# Повністю вимкнути конфігурацію мережі. Це корисно для cdrom
# встановлення на немережевих пристроях, де виникають проблеми з мережею,
# попередження та довгі таймаути є неприємністю.
#d-i netcfg/enable boolean false

# netcfg вибере інтерфейс, який має посилання, якщо це можливо. Це дозволяє
# пропустити відображення списку, якщо існує більше одного інтерфейсу.
d-i netcfg/choose_interface select auto

# Щоб вибрати певний інтерфейс замість цього:
#d-i netcfg/choose_interface select eth1

# Встановити інший тайм-аут виявлення посилання (за замовчуванням - 3 секунди).
# Значення інтерпретуються в секундах.
#d-i netcfg/link_wait_timeout string 10

# Якщо у вас повільний dhcp-сервер і програма встановлення зависає в очікуванні
# його, це може бути корисним.
#d-i netcfg/dhcp_timeout string 60
#d-i netcfg/dhcpv6_timeout string 60

# Автоматична конфігурація мережі за замовчуванням.
# Якщо ви бажаєте налаштувати мережу вручну, видаліть цей рядок і
# статичну конфігурацію мережі нижче.
#d-i netcfg/disable_autoconfig boolean true

# Якщо ви хочете, щоб файл попередньої конфігурації працював на системах як із сервером, так і без нього
# без dhcp-сервера, розкоментуйте ці рядки і статичну мережеву
# конфігурацію мережі нижче.
#d-i netcfg/dhcp_failed note
#d-i netcfg/dhcp_options select Configure network manually

# Статична конфігурація мережі.
#
# Приклад IPv4
#d-i netcfg/get_ipaddress string 192.168.1.42
#d-i netcfg/get_netmask string 255.255.255.0
#d-i netcfg/get_gateway string 192.168.1.1
#d-i netcfg/get_nameservers string 192.168.1.1
#d-i netcfg/confirm_static boolean true
#
# Приклад IPv6
#d-i netcfg/get_ipaddress string fc00::2
#d-i netcfg/get_netmask string ffff:ffff:ffff:ffff::
#d-i netcfg/get_gateway string fc00::1
#d-i netcfg/get_nameservers string fc00::1
#d-i netcfg/confirm_static boolean true

# Будь-які імена хостів та доменів, призначені з dhcp, мають пріоритет над
# значеннями, заданими тут. Втім, встановлення значень все одно запобігає показу запитань
# не будуть показані, навіть якщо значення отримано з dhcp.
d-i netcfg/get_hostname string unassigned-hostname
d-i netcfg/get_domain string unassigned-domain

# Якщо ви хочете примусово визначити ім'я хоста, незалежно від того, що повертає сервер DHCP
# повертає сервер DHCP, або зворотний запис DNS для IP-адреси, видаліть коментар
# і відкоригуйте наступний рядок.
#d-i netcfg/hostname string somehost

# Вимкніть набридливе діалогове вікно з ключем WEP.
d-i netcfg/wireless_wep string
# Дивакувате ім'я хоста dhcp, яке деякі провайдери використовують як своєрідний пароль.
#d-i netcfg/dhcp_hostname string radish

# Якщо ви хочете повністю вимкнути пошук прошивок (тобто не використовувати прошивки
# файли або пакунки, які можуть бути наявні в інсталяційних образах):
#d-i hw-detect/firmware-lookup string never

# Якщо для мережі або іншого обладнання потрібне невільне програмне забезпечення, ви можете
# налаштувати програму встановлення так, щоб вона завжди намагалася завантажити її без запиту. Або
# змініть на false, щоб вимкнути запит.
#d-i hw-detect/load_firmware boolean true

Зверніть увагу, що netcfg автоматично визначить маску мережі, якщо не вказано попередньо netcfg/get_netmask. У цьому випадку, змінна має бути позначена як seen для автоматичного встановлення. Аналогічно, netcfg вибере відповідну адресу, якщо netcfg/get_gateway не задано. Як окремий випадок, ви можете встановити netcfg/get_gateway у «none», щоб вказати, що не слід використовувати жодного шлюзу.

B.4.3. Мережева консоль

# Якщо ви бажаєте використовувати мережеву консоль, використовуйте наступні налаштування
# компонент для віддаленого встановлення по SSH. Це має сенс лише у тому випадку, якщо ви
# маєте намір виконати решту встановлення вручну.
#d-i anna/choose_modules string network-console
#d-i network-console/authorized_keys_url string http://10.0.0.1/openssh-key
#d-i network-console/password password r00tme
#d-i network-console/password-again password r00tme

Додаткову інформацію про мережеву консоль можна знайти за посиланням Розділ 6.3.10, «Встановлення через мережеву консоль».

B.4.4. Дзеркальні налаштування

Залежно від методу встановлення, який ви використовуєте, дзеркало може бути використано для завантаження додаткових компонентів програми встановлення, встановлення базової системи та налаштування /etc/apt/sources.list для встановленої системи.

Параметр mirror/suite визначає набір для встановленої системи.

Параметр mirror/udeb/suite визначає набір додаткових компонентів для програми встановлення. Цей параметр корисно встановлювати, лише якщо компоненти фактично завантажуються через мережу, і він має відповідати набору, який було використано для створення initrd для методу встановлення, який було використано під час встановлення. Зазвичай програма встановлення автоматично використовує правильне значення, і вам не потрібно його налаштовувати.

# Дзеркальний протокол:
# Якщо ви вибрали ftp, рядок дзеркало/країна не потрібно вказувати.
# Значення за замовчуванням для дзеркального протоколу: http.
#d-i mirror/protocol string ftp
d-i mirror/country string manual
d-i mirror/http/hostname string http.us.debian.org
d-i mirror/http/directory string /debian
d-i mirror/http/proxy string

# Набір для встановлення.
#d-i mirror/suite string testing
# Набір для завантаження компонентів інсталятора (необов'язково).
#d-i mirror/udeb/suite string testing

B.4.5. Налаштування облікового запису

Пароль для облікового запису root, а також ім'я та пароль для першого облікового запису звичайного користувача можуть бути задані заздалегідь. Для паролів ви можете використовувати як відкриті текстові значення, так і crypt(3) хеші.

[Застереження] Застереження

Пам'ятайте, що попереднє встановлення паролів не є повністю безпечним, оскільки кожен, хто має доступ до файлу попередньої конфігурації, буде знати ці паролі. Зберігання хешованих паролів вважається безпечним, якщо не використовується слабкий алгоритм хешування, такий як DES або MD5, які дозволяють здійснювати атаки грубою силою. Рекомендовані алгоритми хешування паролів - SHA-256 та SHA512.

# Пропустити створення облікового запису root (звичайний користувач зможе
# використовувати sudo).
#d-i passwd/root-login boolean false
# Або пропустити створення звичайного облікового запису користувача.
#d-i passwd/make-user boolean false

# Кореневий пароль, або відкритим текстом
#d-i passwd/root-password password r00tme
#d-i passwd/root-password-again password r00tme
# or encrypted using a crypt(3)  hash.
#d-i passwd/root-password-crypted password [crypt(3) hash]

# Створити звичайний обліковий запис користувача.
#d-i passwd/user-fullname string Debian User
#d-i passwd/username string debian
# Звичайний пароль користувача, або відкритим текстом
#d-i passwd/user-password password insecure
#d-i passwd/user-password-again password insecure
# or encrypted using a crypt(3) hash.
#d-i passwd/user-password-crypted password [crypt(3) hash]
# Створити першого користувача з вказаним UID замість стандартного.
#d-i passwd/user-uid string 1010

# Обліковий запис користувача буде додано до деяких стандартних початкових груп. Щоб
# перевизначити це, використовуйте це.
#d-i passwd/user-default-groups string audio cdrom video

Змінні passwd/root-password-crypted і passwd/user-password-crypted також можуть бути задані з «!» як їх значення. У такому випадку, відповідний обліковий запис буде вимкнено. Це може бути зручно для облікового запису root, якщо, звісно, налаштовано альтернативний метод, який дозволяє адміністративні дії або вхід у систему від імені користувача root (наприклад, за допомогою автентифікації за допомогою ключа SSH або sudo).

Наступна команда (доступна у пакунку whois) може бути використана для створення хешу пароля на основі SHA-512 за алгоритмом crypt(3):

mkpasswd -m sha-512

B.4.6. Налаштування годинника та часового поясу

# Контролює, чи встановлено апаратний годинник на UTC чи ні.
d-i clock-setup/utc boolean true

# Ви можете встановити будь-яке допустиме значення для $TZ; див. вміст файлу
# /usr/share/zoneinfo/ для отримання допустимих значень.
d-i time/zone string US/Eastern

# Дозволяє вказати, чи використовувати NTP для встановлення годинника під час встановлення
d-i clock-setup/ntp boolean true
# Сервер NTP для використання. За замовчуванням тут майже завжди все гаразд.
#d-i clock-setup/ntp-server string ntp.example.com

B.4.7. Розбиття на розділи

Використання попереднього розбиття на розділи жорсткого диска обмежується тим, що підтримується partman-auto. Ви можете розбити на розділи як наявний вільний простір на диску, так і весь диск. Структура диска може бути визначена за допомогою попередньо визначеного рецепта, користувацького рецепта з файлу рецептів або рецепта, включеного до файлу попередньої конфігурації.

Підтримується попереднє створення розширених налаштувань розділів за допомогою RAID, LVM і шифрування, але не з повною гнучкістю, можливою при створенні розділів під час інсталяції без попереднього створення розділів.

Наведені нижче приклади надають лише базову інформацію про використання рецептів. Докладні відомості наведено у файлах partman-auto-recipe.txt і partman-auto-raid-recipe.txt, що входять до складу пакунка debian-installer. Обидва файли також доступні з debian-installer репозиторію вихідних текстів. Зверніть увагу, що підтримувана функціональність може змінюватися між випусками.

[Застереження] Застереження

Ідентифікація дисків залежить від порядку завантаження їхніх драйверів. Якщо в системі є кілька дисків, переконайтеся, що вибрано правильний диск, перш ніж використовувати попередню підготовку.

B.4.7.1. Приклад розбиття на розділи

# Якщо в системі є вільне місце, ви можете розділити лише цей простір.
# Це правило виконується тільки якщо не задано partman-auto/method (нижче).
#d-i partman-auto/init_automatically_partition select biggest_free

# Крім того, ви можете вказати диск для розбиття на розділи. Якщо у системі є лише
# один диск, програма встановлення за замовчуванням використовуватиме його, якщо ж ні, то
# назву пристрою слід вказати у традиційному, не devfs форматі (наприклад, /dev/sda
# а не, наприклад, /dev/discs/disc0/disc).
# Наприклад, для використання першого жорсткого диска SCSI/SATA:
#d-i partman-auto/disk string /dev/sda
# Крім того, вам потрібно буде вказати метод, який буде використовуватися.
# В даний час доступні наступні методи:
# - regular: використовуйте звичайні типи розділів для вашої архітектури
# - lvm:     використовувати LVM для розбиття диска на розділи
# - crypto:  використовувати LVM у зашифрованому розділі
d-i partman-auto/method string lvm

# Ви можете визначити обсяг простору, який буде використано для тому LVM
# група. Це може бути розмір з одиницею виміру (наприклад, 20 ГБ), відсоток від
# вільного місця або ключове слово 'max'.
d-i partman-auto-lvm/guided_size string max

# Якщо один з дисків, які буде автоматично розбито на розділи
# містить стару конфігурацію LVM, користувач зазвичай отримає
# попередження. Це можна попередньо опрацювати...
d-i partman-lvm/device_remove_lvm boolean true
# Те саме стосується вже існуючих програмних RAID-масивів:
d-i partman-md/device_remove_md boolean true
# Те саме стосується підтвердження запису розділів lvm.
d-i partman-lvm/confirm boolean true
d-i partman-lvm/confirm_nooverwrite boolean true

# Ви можете вибрати один із трьох попередньо визначених рецептів розбиття на розділи:
# - atomic: всі файли в одному розділі
# - home:   виокремити розділ /home
# - multi:  виокремити розділи /home, /var, та /tmp
d-i partman-auto/choose_recipe select atomic

# Або надайте власний рецепт...
# Якщо у вас є спосіб отримати файл рецептів у середовищі d-i, ви можете
# просто вказати на нього.
#d-i partman-auto/expert_recipe_file string /hd-media/recipe

# Якщо ні, ви можете помістити весь рецепт у файл попередньої конфігурації одним
# (логічним) рядком. У цьому прикладі створюється невеликий розділ /boot, придатний для
# підкачки, а решту простору використовує для кореневого розділу:
#d-i partman-auto/expert_recipe string                         \
#      boot-root ::                                            \
#              40 50 100 ext3                                  \
#                      $primary{ } $bootable{ }                \
#                      method{ format } format{ }              \
#                      use_filesystem{ } filesystem{ ext3 }    \
#                      mountpoint{ /boot }                     \
#              .                                               \
#              500 10000 1000000000 ext3                       \
#                      method{ format } format{ }              \
#                      use_filesystem{ } filesystem{ ext3 }    \
#                      mountpoint{ / }                         \
#              .                                               \
#              64 512 300% linux-swap                          \
#                      method{ swap } format{ }                \
#              .

# Повний формат рецептів задокументовано у файлі partman-auto-recipe.txt
# входить до складу пакунка 'debian-installer' або доступний з репозиторію D-I
# сховища. Тут також описано, як вказати такі параметри, як файлові
# системні мітки, назви груп томів і які фізичні пристрої слід включити
# до групи томів.

## Створення розділів для EFI
# Якщо вашій системі потрібен розділ EFI, ви можете додати щось на кшталт
# цього до наведеного вище рецепта, як перший елемент рецепта:
#               538 538 1075 free                              \
#                      $iflabel{ gpt }                         \
#                      $reusemethod{ }                         \
#                      method{ efi }                           \
#                      format{ }                               \
#               .                                              \
#
# Фрагмент вище наведено для архітектури amd64; деталі можуть
# відрізнятися на інших архітектурах. Пакунок "partman-auto" у сховищі коду
# D-I може містити приклад, який ви можете наслідувати.

# Це дозволить partman автоматично розбивати розділи без підтвердження, за умови, що
# що ви вказали йому, що робити, одним із наведених вище способів.
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

# Примусове завантаження UEFI ('сумісність з BIOS' буде втрачено). За замовчуванням: false.
#d-i partman-efi/non_efi_system boolean true
# Ensure the partition table is GPT - this is required for EFI
#d-i partman-partitioning/choose_label select gpt
#d-i partman-partitioning/default_label string gpt

# Коли увімкнено шифрування диска, пропустіть попереднє витирання розділів.
#d-i partman-auto-crypto/erase_disks boolean false

B.4.7.2. Розбиття на розділи завдяки RAID

Ви також можете використовувати попередню підготовку для створення розділів на програмних RAID-масивах. Підтримуються рівні RAID 0, 1, 5, 6 і 10, створення погіршених масивів і вказівка запасних пристроїв.

Якщо ви використовуєте RAID 1, ви можете попередньо завантажити grub для встановлення на всі пристрої, що використовуються в масиві; див. Розділ B.4.11, «Інсталяція завантажувача».

[Застереження] Застереження

Цей тип автоматичного розбиття на розділи може легко помилятися. Це також функціональність, яка отримує відносно мало тестування від розробників debian-installer. Відповідальність за правильне використання різних рецептів (щоб вони мали сенс і не суперечили один одному) лежить на користувачеві. Перевірте /var/log/syslog, якщо у вас виникли проблеми.

# Метод має бути встановлений на "рейд".
#d-i partman-auto/method string raid
# Вкажіть диски для розбиття на розділи. Усі вони отримають однакове розташування,
# тому це спрацює лише якщо диски однакового розміру.
#d-i partman-auto/disk string /dev/sda /dev/sdb

# Далі потрібно вказати фізичні розділи, які будуть використовуватися. 
#d-i partman-auto/expert_recipe string \
#      multiraid ::                                         \
#              1000 5000 4000 raid                          \
#                      $primary{ } method{ raid }           \
#              .                                            \
#              64 512 300% raid                             \
#                      method{ raid }                       \
#              .                                            \
#              500 10000 1000000000 raid                    \
#                      method{ raid }                       \
#              .

# Наостанок потрібно вказати, як раніше визначені розділи
# будуть використовуватися при створенні RAID. Не забувайте використовувати правильні номери розділів
# для логічних розділів. Підтримуються рівні RAID 0, 1, 5, 6 і 10;
# пристрої розділяються за допомогою "#".
# Параметри такі:
# <raidtype> <devcount> <sparecount> <fstype> <mountpoint> \
#          <devices> <sparedevices>

#d-i partman-auto-raid/recipe string \
#    1 2 0 ext3 /                    \
#          /dev/sda1#/dev/sdb1       \
#    .                               \
#    1 2 0 swap -                    \
#          /dev/sda5#/dev/sdb5       \
#    .                               \
#    0 2 0 ext3 /home                \
#          /dev/sda6#/dev/sdb6       \
#    .

# Додаткову інформацію наведено у файлі partman-auto-raid-recipe.txt
# входить до складу пакунка 'debian-installer' або доступний у джерелі D-I
# сховища.

# Це змушує partman автоматично створювати розділи без підтвердження.
d-i partman-md/confirm boolean true
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

B.4.7.3. Керування монтуванням розділів

Зазвичай, файлові системи монтуються з використанням універсального унікального ідентифікатора (UUID) як ключа; це дозволяє монтувати їх належним чином, навіть якщо ім'я пристрою змінюється. UUID довгі і їх важко читати, тому, якщо ви бажаєте, програма встановлення може змонтувати файлові системи на основі традиційних назв пристроїв або на основі мітки, яку ви призначите. Якщо ви попросите програму встановлення змонтувати за міткою, будь-які файлові системи без мітки буде змонтовано з використанням UUID.

Пристрої зі стабільними іменами, такі як логічні томи LVM, і надалі використовуватимуть свої традиційні імена, а не UUID.

[Застереження] Застереження

Традиційні назви пристроїв можуть змінюватися залежно від порядку, у якому ядро виявляє пристрої під час завантаження, що може призвести до монтування неправильної файлової системи. Аналогічно, мітки можуть зіткнутися, якщо ви під'єднаєте новий диск або USB-накопичувач, і якщо це станеться, поведінка вашої системи під час запуску буде випадковою.

# За замовчуванням монтувати за UUID, але ви також можете вибрати параметр "традиційний", щоб
# використовувати традиційні назви пристроїв або "label", щоб спробувати мітки файлової системи перед тим, як
# повернутися до UUID.
#d-i partman/mount_style select uuid

B.4.8. Установка базової системи

Насправді не так вже й багато можна попередньо обробити на цьому етапі інсталяції. Єдині запитання стосуються встановлення ядра.

# Налаштуйте APT так, щоб за замовчуванням не встановлювати рекомендовані пакунки.
# опція може призвести до неповноти системи і має використовуватися лише дуже
# досвідченими користувачами.
#d-i base-installer/install-recommends boolean false

# Пакунок образу ядра (мета), який потрібно встановити; можна використати "none", якщо не потрібно встановлювати жодного пакунка
# ядро не буде встановлено.
#d-i base-installer/kernel/image string linux-image-686

B.4.9. Apt setup

Налаштування /etc/apt/sources.list та основних параметрів конфігурації повністю автоматизовано на основі вашого методу встановлення та відповідей на попередні запитання. За бажанням ви можете додати інші (локальні) сховища.

# Виберіть, якщо хочете відсканувати додаткові інсталяційні носії
# (за замовчуванням: false).
d-i apt-setup/cdrom/set-first boolean false
# Ви можете встановити невільну прошивку.
#d-i apt-setup/non-free-firmware boolean true
# Ви можете встановити як платне, так і безплатне програмне забезпечення.
#d-i apt-setup/non-free boolean true
#d-i apt-setup/contrib boolean true
# Якщо ви не бажаєте використовувати sources.list, не коментуйте наступний рядок
# запис для інсталяційного образу DVD/BD, активного у встановленій системі
# (записи для netinst або образів компакт-дисків буде вимкнено у будь-якому випадку, незалежно від
# цього параметра).
#d-i apt-setup/disable-cdrom-entries boolean true
# Не коментуйте це, якщо ви не хочете використовувати мережеве дзеркало.
#d-i apt-setup/use_mirror boolean false
# Виберіть, які служби оновлення використовувати; визначте дзеркала, які будуть використовуватися.
# Значення, наведені нижче, є стандартними значеннями за замовчуванням.
#d-i apt-setup/services-select multiselect security, updates
#d-i apt-setup/security_host string security.debian.org

# Додаткові сховища, доступно local[0-9]
#d-i apt-setup/local0/repository string \
#       http://local.server/debian stable main
#d-i apt-setup/local0/comment string local server
# Увімкнути рядки deb-src
#d-i apt-setup/local0/source boolean true
# URL-адресу публічного ключа локального сховища; ви повинні надати ключ або
# apt поскаржиться на неавторизований репозиторій і тому
# рядок sources.list буде залишено без коментарів.
#d-i apt-setup/local0/key string http://local.server/key
# або ж можна передати його в рядку, закодувавши вміст файлу в base64
# ключовий файл (з `base64 -w0`) і вказавши його таким чином:
#d-i apt-setup/local0/key string base64://LS0tLS1CRUdJTiBQR1AgUFVCTElDIEtFWSBCTE9DSy0tLS0tCi4uLgo=
# Вміст файлу ключа перевіряється на наявність ASCII-захисту.
# Якщо так, то його буде збережено з розширенням ".asc", інакше він отримає розширення ".gpg".
# формат "keybox database" наразі не підтримується. (див. generators/60local у джерелі apt-setup).

# За замовчуванням програма встановлення вимагає автентифікації сховищ
# за допомогою відомого ключа gpg. За допомогою цього параметра можна вимкнути цю
# автентифікацію. Попередження: Небезпечно, не рекомендовано.
#d-i debian-installer/allow_unauthenticated boolean true

# Зніміть коментар, щоб додати багатоаркову конфігурацію для i386
#d-i apt-setup/multiarch string i386

B.4.10. Вибір пакета

Ви можете встановити будь-яку комбінацію доступних завдань. На момент написання доступні наступні завдання:

  • standard (стандартні інструменти)

  • desktop (графічний робочий стіл)

  • gnome-desktop (робочий стіл Gnome)

  • xfce-desktop (робочий стіл XFCE)

  • kde-desktop (робочий стіл KDE Plasma)

  • cinnamon-desktop (робочий стіл Cinnamon)

  • mate-desktop (робочий стіл MATE)

  • lxde-desktop (робочий стіл LXDE)

  • web-server (веб сервер)

  • ssh-server (SSH сервер)

Ви також можете не встановлювати жодних завдань і примусово встановити набір пакунків у інший спосіб. Ми рекомендуємо завжди включати завдання standard.

Або якщо ви не хочете, щоб діалогове вікно tasksel було показано взагалі, задайте pkgsel/run_tasksel (у цьому випадку пакунки не буде встановлено за допомогою tasksel).

Якщо ви хочете встановити деякі окремі пакунки на додаток до пакунків, встановлених за допомогою завдань, ви можете скористатися параметром pkgsel/include. Значенням цього параметра може бути список пакунків, розділених комами або пробілами, що дозволяє легко використовувати його і у командному рядку ядра.

#tasksel tasksel/first multiselect standard, web-server, kde-desktop

# Або ви можете взагалі не показувати діалогове вікно панелі завдань (і не встановлювати
# жодних пакунків):
#d-i pkgsel/run_tasksel boolean false

# Окремі додаткові пакунки для встановлення
#d-i pkgsel/include string openssh-server build-essential
# Чи оновлювати пакунки після debootstrap.
# Допустимі значення: немає, безпечне оновлення, повне оновлення
#d-i pkgsel/upgrade select none

# Ви можете вибрати, чи буде ваша система звітувати про те, яке програмне забезпечення у вас
# встановлено, і яке програмне забезпечення ви використовуєте. За замовчуванням звіти не надсилаються,
# але надсилання звітів допомагає проєкту визначити, яке програмне забезпечення є найбільш
# популярне і має бути включене до першого DVD.
#popularity-contest popularity-contest/participate boolean false

B.4.11. Інсталяція завантажувача

# Grub - це завантажувач (для x86).

# Це досить безпечний параметр, який змушує grub автоматично встановлюватися на UEFI
# запис розділу/запису завантаження, якщо на комп'ютері не виявлено жодної іншої операційної системи.
d-i grub-installer/only_debian boolean true

# Цей параметр змушує grub-installer встановлюватися до розділу/запису завантаження UEFI, якщо
# він також знайде іншу ОС, що є менш безпечним, оскільки він не зможе
# завантажити цю іншу ОС.
d-i grub-installer/with_other_os boolean true

# Через потенційні USB-накопичувачі розташування основного диска
# не може бути визначено безпечно, тому його потрібно вказати:
#d-i grub-installer/bootdev  string /dev/sda
# Для встановлення на основний пристрій (за умови, що це не флешка):
#d-i grub-installer/bootdev  string default

# Крім того, якщо ви хочете встановити в інше місце, ніж UEFI
# розділу/запису завантаження, розкоментуйте та відредагуйте ці рядки:
#d-i grub-installer/only_debian boolean false
#d-i grub-installer/with_other_os boolean false
#d-i grub-installer/bootdev  string (hd0,1)
# Щоб встановити grub на кілька дисків:
#d-i grub-installer/bootdev  string (hd0,1) (hd1,1) (hd2,1)

# Необов'язковий пароль для grub, або відкритим текстом
#d-i grub-installer/password password r00tme
#d-i grub-installer/password-again password r00tme
# або зашифровані за допомогою хешу MD5, див. grub-md5-crypt(8).
#d-i grub-installer/password-crypted password [MD5 hash]

# За допомогою цього параметра можна додати додаткові параметри завантаження для
# встановленої системи (якщо підтримується програмою встановлення завантажувача).
# Примітка: опції, передані програмі встановлення, буде додано автоматично.
#d-i debian-installer/add-kernel-opts string nousb

MD5 хеш пароля для grub можна згенерувати за допомогою grub-md5-crypt, або за допомогою команди з прикладу в Розділ B.4.5, «Налаштування облікового запису».

B.4.12. Завершення установки

# Під час встановлення з послідовної консолі звичайні віртуальні консолі
# (VT1-VT6) зазвичай вимкнено у файлі /etc/inittab. Розкоментуйте наступний
# рядок, щоб запобігти цьому.
#d-i finish-install/keep-consoles boolean true

# Уникайте останнього повідомлення про завершення встановлення.
d-i finish-install/reboot_in_progress note

# Це не дозволить програмі встановлення витягти диск під час перезавантаження,
# що може бути корисним у деяких ситуаціях.
#d-i cdrom-detect/eject boolean false

# Ось як зробити так, щоб програма встановлення завершувала роботу після завершення, але не
# перезавантажилася у встановлену систему.
#d-i debian-installer/exit/halt boolean true
# Це вимкне машину замість того, щоб просто зупинити її.
#d-i debian-installer/exit/poweroff boolean true

B.4.13. Попередня підготовка інших пакунків

# Залежно від того, яке програмне забезпечення ви вирішили встановити, або якщо щось піде не так
# під час процесу встановлення, можливо, 
# виникнуть інші запитання. Звичайно, їх теж можна попередньо підготувати. Щоб отримати список всіх
# можливих запитань, які можуть виникнути під час встановлення, виконайте
# встановлення, а потім виконайте ці команди:
#   debconf-get-selections --installer > file
#   debconf-get-selections >> file


[20] Попередня обробка locale до en_NL, наприклад, призведе до отримання en_US.UTF-8 як локалі за замовчуванням для інстальованої системи. Якщо ви віддаєте перевагу, наприклад, en_GB.UTF-8, значення потрібно буде вказати окремо.