Configuração autônoma do grub após atualização do kernel


14

Hoje trabalho na implantação automática de um servidor ubuntu. Fiquei preso na atualização automática do servidor, apt-get upgradetentando atualizar para um novo kernel. O log fica assim:

Setting up linux-image-3.2.0-24-generic (3.2.0-24.39) ...
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
(...)

Em seguida, é apresentada uma pergunta:

Package configuration

    ┌─────────────────────────────────┤  ├─────────────────────────────────┐    
    │ A new version of /boot/grub/menu.lst is available, but the version   │    
    │ installed currently has been locally modified.                       │    
    │                                                                      │    
    │ What would you like to do about menu.lst?                            │    
    │                                                                      │    
    │      install the package maintainer's version                        │    
    │      keep the local version currently installed                      │    
    │      show the differences between the versions                       │    
    │      show a side-by-side difference between the versions             │    
    │      show a 3-way difference between available versions              │    
    │      do a 3-way merge between available versions (experimental)      │    
    │      start a new shell to examine the situation                      │    
    │                                                                      │    
    │                                                                      │    
    │                                <Ok>                                  │    
    │                                                                      │    
    └──────────────────────────────────────────────────────────────────────┘    

O resultado desejado seria selecionar a primeira opção e continuar:

Replacing config file /run/grub/menu.lst with new version
Updating /boot/grub/menu.lst ... done

Depois de executar a atualização manualmente, eu costumava debconf-get-selectionsinspecionar a resposta correta para a pergunta ( consulte outras configurações ). Parece que update_grub_changeprompt_threewayé a pergunta que deve ser respondida. No entanto, definir isso usando debconf-set-selectionsme apresentou a mesma pergunta:

debconf-set-selections <<< "grub grub/update_grub_changeprompt_threeway select install_new"
apt-get -y dist-upgrade

Como essa pergunta pode ser automatizada?


Também tentou --force-yese yes | ..., mas sem sucesso
Bouke

Também tentei -qq, mas também não ...
bouke

Respostas:


15

Consegui contornar isso usando export DEBIAN_FRONTEND=noninteractive, antes de executar apt-get upgrade -y.


3

No Ubuntu 16.04, essa sequência deve evitar o diálogo interativo:

export DEBIAN_FRONTEND=noninteractive
apt-get update
apt-get upgrade -yq

Observe que a -qbandeira é importante.

(Referência: Esta pergunta sobre devops)

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.