Machine: sudo: nenhum tty presente e nenhum programa askpass especificado

Criado em 29 jun. 2016  ·  5Comentários  ·  Fonte: docker/machine

Estou usando o MacOSX Captain como sistema operacional host
Eu criei um contêiner de imagens do Ubuntu
O bash do contêiner é executado com o usuário root por padrão

Eu instalei o sudo através do apt-get
então eu criei um usuário não privilegiado chamado test-user

Eu executo o bash com o usuário de teste
docker exec -i -t -u bash de id de contêiner de usuário de teste

quando tento usar sudo apt-get install
Recebo este erro sudo: nenhum tty presente e nenhum programa askpass especificado

Estou tentando fazer isso porque li que não devo usar o usuário root ou administrador para executar qualquer programa porque será um problema de segurança.

Comentários muito úteis

Eu tenho o mesmo problema. Para algumas pessoas, ir para / etc / sudoers (sudoers é um arquivo) e adicionar o nome de usuário ALL = (ALL) NOPASSWD: ALL (fazendo com que você não precise da senha) funciona, então talvez você possa experimentar, mas não funcionou para mim. Alguém mais tem sugestões melhores?

Todos 5 comentários

Eu tenho o mesmo problema. Para algumas pessoas, ir para / etc / sudoers (sudoers é um arquivo) e adicionar o nome de usuário ALL = (ALL) NOPASSWD: ALL (fazendo com que você não precise da senha) funciona, então talvez você possa experimentar, mas não funcionou para mim. Alguém mais tem sugestões melhores?

Sim, funciona para mim,
tente editar o arquivo usando o comando visudo e certifique-se de ter inserido o nome de usuário corretamente, mas não tenho certeza de que esta solução seja segura, se você esquecer de fechar o terminal, qualquer pessoa que usar seu laptop usará o comando sudo sem uma senha para injetar qualquer programa.

Estou tentando encontrar uma maneira de inserir a senha, mas não está funcionando.

Isso também funcionou para mim, use seu nome de usuário real e não username

Mesmo problema aqui. Embora eu tenha permissões sudo na máquina remota que executa o docker, de alguma forma parece errado mexer com a configuração dos sudoers remotos para criar uma configuração local da máquina docker.

Problema semelhante. Ao compilar para o aws, o usuário ssh padrão da docker-machine é _ubuntu_. Estou tentando criar um usuário sudo diferente (algo mais amigável como _demouser_) ou renomear o usuário _ubuntu_ depois de terminar de criar a VM remota.

Em ambos os casos, você pode usar (ou script) instruções semelhantes em https://askubuntu.com/questions/34074/how-do-i-change-my-username. Resumindo:

  • Adicionar usuário sudo novo ou temporário
  • Opcional:

    • Faça login como novo usuário / temporário e altere o nome / diretório inicial do usuário _ubuntu_

Ambas as etapas têm o mesmo problema, o novo usuário ou o usuário _changed_ "ubuntu" requer que você especifique uma senha para que o sudo funcione. A menos que você edite o arquivo sudoers para configurar a opção nopasswd. Existe algum molho secreto com o usuário original "ubuntu" (padrão) que permite um sudo sem senha apesar de nenhuma configuração extra no sudoers.

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

pschultz picture pschultz  ·  3Comentários

masaeedu picture masaeedu  ·  4Comentários

jrz picture jrz  ·  5Comentários

AlexZeitler picture AlexZeitler  ·  4Comentários

hananeglit picture hananeglit  ·  3Comentários