É o mesmo que a resposta @bclermont (--yes --force-yes)?
Jjxtra 5/07
175
O problema com:
apt-get --yes install $something
é que ele solicitará uma confirmação manual se a chave pública do proprietário da assinatura do pacote não estiver no chaveiro ou em algumas outras condições. para ter certeza de que não pede confirmação, faça o seguinte:
apt-get --yes --force-yes install $something
Se você quiser ter essas configurações permanentes, crie um arquivo em /etc/apt/apt.conf.d/, como /etc/apt/apt.conf.d/90forceyes com o seguinte conteúdo:
+1 para variedade. Todos -yestavam ficando chatos. (Além disso, é uma resposta mais completa.)
Dennis Williamson
1
Isso funcionará quando diz "Para continuar, digite a frase 'Sim, faça o que eu digo!'" Também? Se não, qual é a solução alternativa? Encontro isso ao tentar substituir o sysvinit pelo systemd na minha imagem debian com chroot.
Lennart Rolland
13
Por favor, nunca use --force-yes: como esta resposta a um tópico relacionadodebian-devel sugere, --force-yespode tornar o sistema inutilizável. (Eu não estou downvoting porque a resposta realmente aborda o problema como afirma o OP, mas eu gostaria de acrescentar um aviso vermelho grande para a resposta de qualquer maneira.)
kostix
7
APT :: Get :: Assume-Yes "true"; me ajudou a evitar interrupções em uma instalação em um contêiner de docker.
Observe que, se você também desejar obter automaticamente as respostas padrão quando um prompt interativo aparecer, poderá usar DEBIAN_FRONTEND=noninteractive
Ótima resposta. Mesmo assim -y, ainda recebi avisos perguntando se eu queria reiniciar os serviços. Eu precisava disso para eliminar completamente todos os prompts.
Isso deve pelo menos /etc/apt/apt.confaparecer e comentar. Eu me preocupo que o Ubuntu esteja assumindo o rumo da Microsoft de sempre pedir permissão.
"Você tem certeza?", É claro que tenho certeza, não sou um macaco treinado simplesmente digitando no teclado, clicando feliz.
Em seguida, a porta perguntará: "Tem certeza de que deseja sair?"
O forno perguntará: "Tem certeza de que deseja cozinhar?"
O automóvel perguntará: "Tem certeza de que deseja aplicar freios?"
O extintor de incêndio perguntará: "Tem certeza de que deseja apagar o fogo?"
Sinto muito, Dave, não posso deixar você fazer isso.
O HAL9000 poderia usar uma contração, mas os Dados não puderam ou não puderam.
A diferença com o HAL9000 e o dpkg pedindo permissão é que o HAL disse "não, ponto final", enquanto o "Sim, faça o que eu digo" só aparece se você estiver prestes a quebrar completamente e totalmente o seu sistema. Se é isso que você quer, com certeza, vá em frente. Mas ter um aviso nesse caso parece razoável.
@amyassin o apt-get updatecomando requer permissões de raiz porque atualiza as listas de pacotes locais (índices), que são arquivos de sistema pertencentes à raiz.
Jjmontes #
3
geralmente as opções do manual devem funcionar bem
apt-get -y --force-yes install package
se não der certo, você pode tentar usar o yescomando
yes | apt-get -y --force-yes install package
usei isso com meu script de provisionamento de shell vagrant
PS: caso você queira não interativo, mas com o geralmente afirmativo não, tente o seguinte:
Se você sempre quiser o argumento -y, recomendo adicionar a linha
alias apt-get='apt-get -y' #Automatic -y argument on apt-get commands
no seu .bashrc. Isso, como o comentário explica, adicionará automaticamente o argumento -y a todos os seus comandos apt-get e, portanto, aprova todos os downloads.
NOTA: Isso permanecerá verdadeiro até você reverter seu .bashrc e reiniciar o shell.
Eu estava procurando uma maneira de selecionar um não padrão em um script, especificamente ao instalar o wireshark, e acabei usando o tmux para interagir com um shell, da seguinte maneira:
# Start a detached root session
sudo tmux new-session -d
# Send the command
sudo tmux send-keys "DEBIAN_FRONTEND=readline apt-get -qq install wireshark-common; exit" enter
# Wait for the tmux session to get to the interactive stage
sleep 5
# Answer the question
sudo tmux send-keys "yes" enter
# Now attach to the session so we wait for command completion
sudo tmux attach
O problema com:
é que ele solicitará uma confirmação manual se a chave pública do proprietário da assinatura do pacote não estiver no chaveiro ou em algumas outras condições. para ter certeza de que não pede confirmação, faça o seguinte:
Se você quiser ter essas configurações permanentes, crie um arquivo em /etc/apt/apt.conf.d/, como /etc/apt/apt.conf.d/90forceyes com o seguinte conteúdo:
fonte
-y
estavam ficando chatos. (Além disso, é uma resposta mais completa.)--force-yes
: como esta resposta a um tópico relacionadodebian-devel
sugere,--force-yes
pode tornar o sistema inutilizável. (Eu não estou downvoting porque a resposta realmente aborda o problema como afirma o OP, mas eu gostaria de acrescentar um aviso vermelho grande para a resposta de qualquer maneira.)Observe que, se você também desejar obter automaticamente as respostas padrão quando um prompt interativo aparecer, poderá usar
DEBIAN_FRONTEND=noninteractive
Instalação única:
Por exemplo:
Todas as atualizações:
Você pode configurar opções mais refinadas com
-o Dpkg::Options::="--force-confdef"
e-o Dpkg::Options::="--force-confold"
.Exemplos:
ou
Exemplo de prompt interativo:
Leitura interessante: Execute uma instalação autônoma de um pacote Debian
fonte
-y
, ainda recebi avisos perguntando se eu queria reiniciar os serviços. Eu precisava disso para eliminar completamente todos os prompts.Isso deve pelo menos
/etc/apt/apt.conf
aparecer e comentar. Eu me preocupo que o Ubuntu esteja assumindo o rumo da Microsoft de sempre pedir permissão."Você tem certeza?", É claro que tenho certeza, não sou um macaco treinado simplesmente digitando no teclado, clicando feliz.
Em seguida, a porta perguntará: "Tem certeza de que deseja sair?"
O forno perguntará: "Tem certeza de que deseja cozinhar?"
O automóvel perguntará: "Tem certeza de que deseja aplicar freios?"
O extintor de incêndio perguntará: "Tem certeza de que deseja apagar o fogo?"
Sinto muito, Dave, não posso deixar você fazer isso.
O HAL9000 poderia usar uma contração, mas os Dados não puderam ou não puderam.
fonte
No HOWTO apt-get
Use o
-y
interruptor:apt-get -y install packagename
fonte
fonte
update
precisa de permissão?apt-get update
comando requer permissões de raiz porque atualiza as listas de pacotes locais (índices), que são arquivos de sistema pertencentes à raiz.geralmente as opções do manual devem funcionar bem
se não der certo, você pode tentar usar o
yes
comandousei isso com meu script de provisionamento de shell vagrant
PS: caso você queira não interativo, mas com o geralmente afirmativo não, tente o seguinte:
fonte
O novo ( bem )
apt
alias também aceita a opção-y
(--yes
):fonte
Se você sempre quiser o argumento -y, recomendo adicionar a linha
no seu .bashrc. Isso, como o comentário explica, adicionará automaticamente o argumento -y a todos os seus comandos apt-get e, portanto, aprova todos os downloads.
NOTA: Isso permanecerá verdadeiro até você reverter seu .bashrc e reiniciar o shell.
fonte
Eu estava procurando uma maneira de selecionar um não padrão em um script, especificamente ao instalar o wireshark, e acabei usando o tmux para interagir com um shell, da seguinte maneira:
fonte