LINUX.ORG.RU
решено ФорумAdmin

[Debian][preseed]Проклятый вопрос «select language».

 ,


0

1

Пытаюсь разобраться с составлением файла ответов (preseed.cfg) для автоматической установки Debian'а, но один вопрос никак не хочет отвечаться автоматически. Каждый раз при установке спрашишвает «Select language», курсор стоит на English, выбираю «Русский». Какими опциями в preseed.cfg задать, что язык мне нужен Русский? Кажися уже всё перепробовал, но всё равно спрашивает.

# Locales
d-i debian-installer/locale string ru_RU.UTF-8
d-i debian-installer/language string ru
d-i debian-installer/country string RU
d-i debian-installer/keymap string ru
d-i debian-installer/locale select ru_RU.UTF-8
#d-i debian-installer/locale string en_GB.UTF-8
#d-i localechooser/supported-locales en_US.UTF-8, nl_NL.UTF-8
d-i debconf/language string ru
d-i localechooser/languagelist select ru

# Keyboard
d-i localechooser/shortlist/ru select
d-i localechooser/preferred-locale select ru_RU.UTF-8
d-i localechooser/languagelist select ru
d-i console-setup/ask_detect boolean false
d-i console-setup/layoutcode string ru
d-i console-setup/variant select Россия
d-i console-setup/toggle select Alt+Shift
d-i console-keymaps-at/keymap select ru
d-i keyboard-configuration/xkb-keymap select ru
Смотрел документацию, grep'ал debconf-get-selections --installer, не помогает.

★★★★★

А разве «Select language» это не вопрос о том какой язык использовать при установке?

Я к тому, зачем тебе менять язык установщика, если ты хочешь сделать установку в автоматическом режиме?

BigAlex ★★★
()
Ответ на: комментарий от BigAlex

Автоматом.

Я к тому, зачем тебе менять язык установщика, если ты хочешь сделать установку в автоматическом режиме?

Я не хочу менять язык установщика, я хочу сделать установку в автоматическом режиме. Собственно с этим вопросом проблема, вместо того чтобы молча выбрать RU или что-то другое он спрашивает меня.

Camel ★★★★★
() автор топика
Ответ на: Автоматом. от Camel

Выше ты пишешь, что тебе нужен русский язык, ты его выставляешь, но ничего не выходит. Какой вопрос такой ответ.

Попробуй выставить

d-i	debconf/language	string	en

Что-то мне подсказывает, что выставить в том меню что-то отличное от English нельзя впринципе.

BigAlex ★★★
()
Ответ на: Не помогло. от Camel

А у тебя `debconf-get-selections --installer` показывает хоть что-то? У меня вот так:

debconf: DbDriver "di_questions": could not open /var/log/debian-installer/cdebconf/questions.dat

Скинь еще свой preseed.cfg целиком - я попробую с него поставится.

BigAlex ★★★
()
Ответ на: комментарий от BigAlex

Такой log есть у меня.

А у тебя `debconf-get-selections --installer` показывает хоть что-то?

Да показывает. Я с виртуалками экспериментирую, пробовал создать preseed.cfg как описано в документации:

$ debconf-get-selections --installer > preseed.cfg
$ debconf-get-selections >> preseed.cfg
Но с получившимся preseed.cfg автоматическая установка не проходит, после отвечания на вопросы зависает, в консоли partman-lvm (возможно не может переварить автоматический ответ про разбиение НЖМД). Проверку debconf-set-selections -c тоже не проходит.

Вот файлик который я сейчас пытаюсь скормить, в основном взят с Хабры.

Camel ★★★★★
() автор топика
Ответ на: комментарий от BigAlex

А разгадка одна.

Безблагодатность.

А ещё недостаточно внимательное чтение документации. Там, например, сказано, что не все опции подсосутся, потому что на некоторые вопросы ответы нужны до запуска DHCP, их надо передать через загрузчик. Вот мой txt.cfg который есть часть конфигурации PXELINUX'а:

default install
label install
	menu label ^Install
	menu default
	kernel debian-installer/amd64/linux
	append vga=788 initrd=debian-installer/amd64/initrd.gz auto preseed/url=tftp://192.168.1.92/preseed.cfg debian-installer/locale=ru_RU.UTF-8 console-keymaps-at/keymap=ru --
С такими опциями не спрашивает язык, страну и раскладку клавиатуры, вообще ничего не спрашивает до DHCP. Однако после работы DHCP почему-то всё равно спрашивает hostname, хотя в preseed.cfg он явно прописан, короче надо разбираться дальше.

Camel ★★★★★
() автор топика
Ответ на: комментарий от BigAlex

Не сосёт.

Я тогда рекомендую твой preseed засунуть прямо на установочный образ. Немного гемора, но думаю это будет решение.

Не, это плохое решение, на каждый чих нужно будет образ чего-нибудь (iso или initrd) пересобирать, подсовывать. А так только текстовый файлик чуть подредактировать.

Почему спрашивает hostname я понял. Я изучил журнал tftp, он сначала полностью настраивает сеть, и только потом качает preseed.cfg. То есть hostname и domain тоже надо указать в загрузчике.

Camel ★★★★★
() автор топика
Ответ на: комментарий от elipse

Уже решили.

Уже решили, дело было в том, что сначала настраивается страна и сеть, только потом вытягивается preseed.cfg.

И что за dpkg-reconfigure --frontend=noninteractive locales, где это набирать?

Camel ★★★★★
() автор топика
Ответ на: Уже решили. от Camel

вроде как общий «неразговорчивый режим» включатся параметром загрузки инсталлера:
DEBIAN_FRONTEND=noninteractive

elipse ★★★
()
Ответ на: комментарий от elipse

man что?

вроде как общий «неразговорчивый режим» включатся параметром загрузки инсталлера:

Где об этом написано? Я читаю Debian Installation Guide, там preseed во все поля. Ответьте на все вопросы, и установщик не будет у вас ничего спрашивать.

Camel ★★★★★
() автор топика
Ответ на: man что? от Camel

Клади preseed на установочный образ. Здесь принципиальная проблема, d-i действительно ничего не будет делать пока не стянет preseed-файл, если файл находится удаленно, то соответсвенно он подхватится только после настройки сети, а до настройки сети еще дофига вопросов и «select language» только первый из них.

Положи файлик в локальный Git-репозиторий, сделай post-commit скрипт, который будет монтировать iso-шник и копировать на него последнюю версию preseed.cfg

Выглдяит кривовато, но пока других вариантов не вижу. И все же d-i изрядно туповат

BigAlex ★★★
()
Ответ на: комментарий от BigAlex

С минимальными костылями.

Выглдяит кривовато, но пока других вариантов не вижу. И все же d-i изрядно туповат

Мне мой нынешний вариант больше нравится. Ответы на те вопросы которые до скачивания preseed.cfg прописываются в настройках PXELINUX'а, этих ответов всего 4: про локаль, про клавиатуру, про hostname и про domain. С такими настройками скачивается preseed.cfg и дальше установка проходит автоматически. Собственно я уже достиг в этом успеха, сейчас допиливаю preseed.cfg чтобы всякие репозитарии подключались, сценарии исполнялись.

Camel ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.