Is there a way to make apt-get install answer "yes" to the "Do you want to continue [y/N]?"?
12 Answers
via the apt-get man page:
apt-get -y install [packagename] 2The problem with:
apt-get --yes install $something is that it will ask for a manual confirmation if the package signature owner's public-key is not in the keyring, or some other conditions. to be sure it does not ask a confirmation just do this:
apt-get --yes --force-yes install $something If you want to have these settings permanent, create a file in /etc/apt/apt.conf.d/, like /etc/apt/apt.conf.d/90forceyes with the following content:
APT::Get::Assume-Yes "true"; APT::Get::force-yes "true"; 6Note that if you also want to automatically go by the default answers when an interactive prompt appears, you can use DEBIAN_FRONTEND=noninteractive
Single install:
sudo DEBIAN_FRONTEND=noninteractive apt-get -y install [packagename] E.g.:
sudo DEBIAN_FRONTEND=noninteractive apt-get -y install postfix All updates:
sudo DEBIAN_FRONTEND=noninteractive apt-get -y update You can set up finer options with -o Dpkg::Options::="--force-confdef" and -o Dpkg::Options::="--force-confold".
Examples:
apt-get update sudo DEBIAN_FRONTEND=noninteractive apt-get upgrade -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" or
apt-get -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" dist-upgrade Example of interactive prompt:

Interesting read: Perform an unattended installation of a Debian package
1APT::Get::Assume-Yes "true"; APT::Get::force-yes "true"; This should at least be in /etc/apt/apt.conf and commented out. I worry Ubuntu is taking the Microsoft tack of always asking for permission.
"Are you sure?", of course I am sure, I am not a trained monkey simply typing away at the keyboard, going click happy.
Next the door will ask, "Are you sure you want to go outside?"
The oven will ask, "Are you sure you want to cook?"
The automobile will ask, "Are you sure you want to apply brakes?"
The fire extinguisher will ask, "Are you sure you want to put out the fire?"
I am sorry Dave, I can't let you do that.
HAL9000 could use a contraction but Data could not, or couldn't.
From the apt-get HOWTO
Use the -y switch: apt-get -y install packagename
apt-get -y update apt-get -y install [package] 4generally the options from the manual should work well
apt-get -y --force-yes install package if it does not succeed you can try to use the yes command.
yes | apt-get -y --force-yes install package did use this with my vagrant shell provisioning script
PS: in case you want non-interactive but with generally stating no then you can try this:
yes no | apt-get install package The new (well) apt alias takes the -y (--yes) switch too:
sudo apt -y upgrade If you always want the -y argument I'd advise adding the line
alias apt-get='apt-get -y' #Automatic -y argument on apt-get commands into your .bashrc. This, as the comment explains, will automatically add the -y argument to all your apt-get commands and therefore approves all the downloads.
NOTE: This will remain true until you revert your .bashrc and restart the shell.
I was looking for a way to select a non-default in a script, specifically when installing wireshark, and ended up using tmux to interact with a shell, as follows:
# 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 Using yes is package manager independent. E.g.
yes | apt-get install curl Sometimes you need the --allow-downgrades with the -y Like sudo apt upgrade -y --allow-downgrades
Because the downgrades are a possibility and the "yes" options is not enough in that cases.