Existe-t-il un moyen de faire apt-get install
répondre "oui" à la question "Souhaitez-vous continuer [y/N]?"?
via la page de manuel apt-get :
apt-get -y install [packagename]
Le problème avec:
apt-get --yes install $something
est-ce qu'il vous demandera une confirmation manuelle si la clé publique du propriétaire de la signature du paquet ne se trouve pas dans le trousseau de clés, ou d'autres conditions. pour être sûr qu'il ne demande pas de confirmation, procédez comme suit:
apt-get --yes --force-yes install $something
Si vous voulez que ces paramètres soient permanents, créez un fichier dans /etc/apt/apt.conf.d/, comme /etc/apt/apt.conf.d/90forceyes avec le contenu suivant:
APT::Get::Assume-Yes "true";
APT::Get::force-yes "true";
Notez que si vous souhaitez également utiliser automatiquement les réponses par défaut lorsqu’une invite interactive apparaît, vous pouvez utiliser DEBIAN_FRONTEND=noninteractive
.
Installation unique:
Sudo DEBIAN_FRONTEND=noninteractive apt-get -y install [packagename]
Par exemple.:
Sudo DEBIAN_FRONTEND=noninteractive apt-get -y install postfix
Toutes les mises à jour:
Sudo DEBIAN_FRONTEND=noninteractive apt-get -y update
Vous pouvez configurer des options plus fines avec -o Dpkg::Options::="--force-confdef"
et -o Dpkg::Options::="--force-confold"
.
Exemples:
apt-get update
Sudo DEBIAN_FRONTEND=noninteractive apt-get upgrade -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold"
ou
apt-get -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" dist-upgrade
Exemple d'invite interactive:
Lecture intéressante: Effectuer une installation sans surveillance d'un paquet Debian
APT::Get::Assume-Yes "true";
APT::Get::force-yes "true";
Cela devrait au moins être dans /etc/apt/apt.conf
et commenté. Je m'inquiète que Ubuntu prenne la décision de Microsoft de toujours demander l'autorisation.
"Etes-vous sûr?", Bien sûr, je ne suis pas un singe entraîné, il suffit de taper au clavier, d'aller cliquer heureux.
Ensuite, la porte demandera: "Êtes-vous sûr de vouloir sortir?"
Le four vous demandera: "Êtes-vous sûr de vouloir faire la cuisine?"
La voiture demandera: "Êtes-vous sûr de vouloir freiner?"
L'extincteur demandera: "Êtes-vous sûr de vouloir éteindre le feu?"
Je suis désolé Dave, je ne peux pas te laisser faire ça.
HAL9000 pourrait utiliser une contraction mais Data ne pourrait pas ou ne pourrait pas.
Depuis le apt-get HOWTO
Utilisez le commutateur -y
: apt-get -y install packagename
apt-get -y update
apt-get -y install [package]
généralement les options du manuel devraient bien fonctionner
apt-get -y --force-yes install package
si cela ne réussit pas, vous pouvez essayer d'utiliser la commande yes
.
yes | apt-get -y --force-yes install package
a utilisé cela avec mon script de provisioning Shell vagabond
PS: au cas où vous voudriez non-interactif mais avec le non-énoncé général, vous pouvez essayer ceci:
yes no | apt-get install package
Je cherchais un moyen de sélectionner une valeur autre que celle par défaut dans un script, en particulier lors de l'installation de Wireshark, et d'utiliser tmux pour interagir avec un shell, comme suit:
# 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
Le nouvel alias ( well ) apt
prend également le commutateur -y
(--yes
):
Sudo apt -y upgrade
Si vous voulez toujours l'argument -y, je vous conseillerais d'ajouter la ligne
alias apt-get='apt-get -y' #Automatic -y argument on apt-get commands
dans votre .bashrc. Comme l'explique le commentaire, cela ajoutera automatiquement l'argument -y à toutes vos commandes apt-get et approuvera donc tous les téléchargements.
REMARQUE: Cela restera vrai jusqu'à ce que vous reveniez votre .bashrc et redémarriez le shell.