I want to be sure if automatic updates are enabled on Ubuntu 12.04 server.
How exactly can I check this?
And how can I disable automatic updates if it's enabled?
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It only takes a minute to sign up.
Sign up to join this communityThere is a package that can be used to do this for you.
sudo apt-get install unattended-upgrades
or if unattended-upgrades already installed. Or you can checkout the Ubuntu docs
sudo dpkg-reconfigure -plow unattended-upgrades
That is the package you need to install. Once its installed edit the files
/etc/apt/apt.conf.d/10periodic
/etc/apt/apt.conf.d/20auto-upgrades
In that file you can set how often you want the server to update.
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "7";
APT::Periodic::Unattended-Upgrade "1";
The file should look like that. The 1 means it will update every day. 7 is weekly.
/etc/apt/apt.conf.d/50unattended-upgrades
This files will let you chose what updates you want to make by choosing where apt can search for new updates and upgrades. ( My personal opinion on this is I would set it to security if this is a server )
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}-security";
// "${distro_id}:${distro_codename}-updates";
};
The variables ${distro_id}
and ${distro_codename}
are expanded automatically. I would comment out the updates entry and just leave security.
/etc/apt/apt.conf.d/20auto-upgrades
as this is where APT::Periodic::Update-Package-Lists "1";
and APT::Periodic::Unattended-Upgrade "1";
are kept by default on 13.10?
– steakunderscore
Mar 4 '14 at 0:24
50unattended-upgrades
file already has only security updates set, so that default seems correctly set there and the file should not need to be edited.
– Jeff Atwood
May 15 '14 at 20:14
/etc/apt/apt.conf.d/10periodic
in there. There is unattended-upgrades
package already installed and /etc/apt/apt.conf.d/50unattended-upgrades
is there too. My question is, I manually added /etc/apt/apt.conf.d/10periodic
and should I reboot my server so the configuration will take effect?
– foresightyj
Aug 14 '15 at 8:09
Check the logs at /var/log/unattended-upgrades/
to verify that your unattended upgrades are being applied.
(I made another answer, because my changes to LinuxBill's answer were rejected.)
There is a package that can be used to do enable automatic updates for you. It is called unattended-upgrades.
Use the following command to enable/disable automatic updates:
sudo dpkg-reconfigure -plow unattended-upgrades
That command will modify file /etc/apt/apt.conf.d/20auto-upgrades
and may also modify /etc/apt/apt.conf.d/10periodic
.
Alternatively you can enable automatic updates GUI way by software-properties-gtk
in the Updates tab by changing setting in "When there are security updates:". That will modify files /etc/apt/apt.conf.d/10periodic
and /etc/apt/apt.conf.d/20auto-upgrades
.
Alternatively you can modify the aforementioned file(s) manually. In that file you can set how often you want update be called:
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "7";
APT::Periodic::Unattended-Upgrade "1";
The file should look like that. The 1 means it will update every day. 7 is weekly. Variable APT::Periodic::AutocleanInterval determines how often "apt-get autoclean" is executed automatically. 0 means disable for these variables.
You can change the way unattended upgrades work by editing file /etc/apt/apt.conf.d/50unattended-upgrades
. This file will let you choose what updates you want to make by choosing where apt can search for new updates and upgrades.
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}-security";
// "${distro_id}:${distro_codename}-updates";
// "${distro_id}:${distro_codename}-proposed";
// "${distro_id}:${distro_codename}-backports";
};
The variables ${distro_id}
and ${distro_codename}
are expanded automatically. In above only security updates are done automatically. You can extend automatic updates to any repository, see another question.
You may want to change
//Unattended-Upgrade::Remove-Unused-Dependencies "false";
to
Unattended-Upgrade::Remove-Unused-Dependencies "true";
That will automatically remove e.g. excessive old kernels so that /boot does not become full.
There is more information in Ubuntu docs.
sudo dpkg-reconfigure -plow unattended-upgrades
made the 20auto-upgrades
file
– Ray Foss
Jan 15 '18 at 22:13
Automatic Updates are enabled by default. If not, to enable automatic updates, just press Ctrl+Alt+T on your keyboard to open Terminal. When it opens, run the command below.
sudo apt-get install unattended-upgrades
In server, you can also you can edit /etc/apt/apt.conf.d/50unattended-upgrades
, and comment out update update you don't want to upgrade automatically. These edit must be done with root privileges.
/etc/apt/apt.conf.d/20auto-upgrades
is what actually enables auto-updating. Good to know!
– Ben Johnson
Oct 18 '18 at 0:55
apt-get update
mean different things by "update." I think this ship has sailed. There's a meta post though. – Eliah Kagan Aug 25 '17 at 15:32