Como fazer * dpkg-reconfigure dash * no bash automaticamente

12

Eu quero construir uma imagem docker a partir da imagem do Ubuntu. É necessário alterar o sh padrão de traço para bash manualmente. (Porque é necessário instalar muitos pacotes rpm que contém scripts bash)

dpkg-reconfigure dash

Existe algum método para permitir essa ação automaticamente sem o comportamento humano?

No meu Dockerfile, talvez escrito como (Método 1)

RUN dpkg-reconfigure dash

Eu tentei outro método (método 2)

RUN ln -sf bash /bin/sh

Mas, o método não funciona.

    
por Daniel YC Lin 12.02.2014 / 08:34

2 respostas

3

Você pode fazer com que o debconf apenas faça perguntas importantes ou críticas [1].

Ex:

dpkg-reconfigure -p critical dash

O dpkg-reconfigure usará a resposta padrão definida no script debconf. Você também pode usar o debconf-get-selections para pegar respostas diferentes para instalações não-interativas [2].

  1. link
  2. link
por 12.02.2014 / 12:04
16

Colando o comentário de Daniel como uma resposta aqui, pois ele não depende das configurações padrão de dpkg-reconfigure .

Para obter opções:

debconf-show dash

Para definir essa opção específica como false :

echo "dash dash/sh boolean false" | debconf-set-selections

e para reconfigurar o pacote:

DEBIAN_FRONTEND=noninteractive dpkg-reconfigure dash

Isso funcionou para mim em um Dockerfile:

# make /bin/sh symlink to bash instead of dash:
RUN echo "dash dash/sh boolean false" | debconf-set-selections
RUN DEBIAN_FRONTEND=noninteractive dpkg-reconfigure dash
    
por 11.04.2016 / 22:31

Tags