Ubuntu dpkg, instalação não interativa

8

Estou tentando instalar vários arquivos .deb sem ter que interagir com eles. O MySQL Server, por exemplo, solicitará um menu interativo para inserir uma senha administrativa na configuração do dpkg.

Eu tentei.

export DEBIAN_FRONTEND=noninteractive && export DEBIAN_PRIORITY=critical && sudo /usr/bin/dpkg -i ./files/*

Estou ciente de que posso apenas extrair os arquivos sem configuração. Eu estou tentando criar um script bash para implantar um servidor pré-configurado de instalação padrão do Apache, php, mySQL etc. No entanto, esta "instalação interativa" está causando problemas.

Alguma ideia de como desativá-lo? ou um trabalho ao redor?

Obrigado

    
por james moore 03.11.2010 / 00:06

3 respostas

5

Você está no caminho certo. Você definitivamente quer usar DEBIAN_FRONTEND=noninteractive . Para questões críticas que não podem ser ignoradas, você desejará pré-configurar o banco de dados debconf com as respostas necessárias. A página debconf man tem todos os detalhes sobre como realizar isso.

    
por 03.11.2010 / 01:27
3

Para um frontend geral não interativo, você pode tentar:

sudo dpkg-reconfigure debconf -f noninteractive -p critical

Para configurar as credenciais do MySQL, você pode usar o arquivo de configuração do servidor (por exemplo, ~/.my.cnf ), como:

[client]
user=root
password=root

Para selecionar algumas seleções específicas, use debconf-set-selections , por exemplo:

echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true | sudo debconf-set-selections
    
por 27.11.2015 / 01:22
0

Isso deve funcionar:

$ pkgadd SOMEpkg << MYINPUT

y

some text

/usr/local

n

password

MYINPUT

Eu tive que colocar linhas pretas entre as linhas acima ou formatadas como uma linha longa. Em qualquer caso, você pode usar o comando "script" para salvar sua entrada durante instalações complexas e, em seguida, modificar a saída em um script para automatizá-lo para instalações subseqüentes ( man script ).

    
por 03.11.2010 / 01:03