@bozuriciyu

Как автоматизировать настройку grub?

У меня есть небольшой скрипт, который выполнял базовую настройку Дебиан 9 сервера. Все было ок на протяжении месяцев, но вот сегодян на новых созданных инстансах в Гугл Клауд скрипт ломается, на этапе sudo apt-get update && sudo apt-get upgrade -y - появляется зацикленный вывод в консоли, что-то связанное c grub.

Проверив вручную этот скрипт на новом инстансе я вижу вот это окно (которое не было автоматизировано в старом баш скрипте, потому что раньше его просто не было)

5d76537e1b6b1932130834.png

Как с ним быть? Нужно как-то прописать эту настройку в скрипт? Или можно это отключить? Почему оно вообще стало вылазить?
  • Вопрос задан
  • 198 просмотров
Решения вопроса 1
@dronmaxman
VoIP Administrator
При установке пакета установщик обнаружил, что у же есть конфигурационный файл в системе и он отличается от файла в пакете. И что бы не сломать этим обновление Вашу систему, он предлагает вам самостоятельно разрешить эту зависимость. Что бы пропускать такие вопросы необходимо добавить ключ --force-confdef.

man dpkg
confnew: If a conffile has been modified and the version in the package did change, always install the new version without prompting, unless the --force-confdef is also specified, in which case the default action is
preferred.

you should set DEBIAN_FRONTEND=noninteractive, this will stop debconf prompts from appearing.

After that, add force-confold and force-confdef to your /etc/dpkg/dpkg.cfg file. then use the -y option

sudo apt-get -y update && sudo apt-get -y upgrade
or use this command

apt-get -o Dpkg::Options::="--force-confnew --force-confdef" --force-yes -y upgrade
and if it doesn't work try

apt-get -o Dpkg::Options::="--force-confnew" --force-yes -y upgrade
Ответ написан
Пригласить эксперта
Ответы на вопрос 4
Radjah
@Radjah
Не надо редактировать конфиги из пакета. Для этого всегда есть каталоги вида grub.conf.d, куда необходимо класть свои изменения. Для grub есть /etc/default/grub.d/
Ответ написан
Black_beard_ast
@Black_beard_ast
Sysadmin/Ops engineer.
Как с ним быть? Нужно как-то прописать эту настройку в скрипт?
Да! Не за что.

П.С: А в Debian-ах не завезли ks-файлы?
Ответ написан
martin74ua
@martin74ua Куратор тега Linux
Linux administrator
Посмотрите в сторону ansible

Проблема в том, что /etc/default/grub был изменен в процессе инсталляции и внезапно прилетело обновление, которое менеджер пакетов не смог слить автоматически. Скорее всего должен быть ключик, который это делает принудительно.

ЗЫ. Дебиан, такой дебиан...
Ответ написан
inoise
@inoise
Solutions Architect, AWS Certified, Serverless
Вы еще конфигурите ручками? тогда мы идем к вам!

Ansible, Chef, Puppet, Salt к вашим услугам (первые два самые распространенные) и Infrastracture as Code. Сможете тестировать все ваши изменения перед деплоем на предмет ошибок, версионировать и обкатывать на других виртуалках в случае чего. Если вы в GCP то потом добавите в список себе k8s и terraform, но это попозже
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы