RHEL7: Configure automatic updates.

Presentation

The yum-cron package provides a convenient way to check for, download and apply updates automatically.

Installation procedure

Install the yum-cron package:

# yum install -y yum-cron

Start the yum-cron service:

# systemctl start yum-cron

By default, the configuration of the yum-cron service is done through two files following exactly the same syntax:

  • /etc/yum/yum-cron.conf defines what is done once every day,
  • /etc/yum/yum-cron-hourly.conf defines what is done once every hour.

Still by default, no action in defined in the /etc/yum/yum-cron-hourly.conf file. Conversely, in the /etc/yum/yum-cron.conf file associated with daily actions, instructions are given to send a message on stdio (which means written into the /var/log/cron file) when any update is available (see update categories below), to download it without applying it.

Configuration syntax

In any of the two configuration files, configuration is defined through the following directives:

  • update_cmd = value specifies the category of upgrade where value can take:
    • default for yum upgrade,
    • security for yum –security upgrade,
    • security-severity:Critical for yum –sec-severity=Critical upgrade,
    • minimal for yum –bugfix upgrade-minimal,
    • minimal-security for yum –security upgrade-minimal,
    • minimal-security-severity:Critical for yum –sec-severity=Critical upgrade-minimal.
  • update_messages = yes/no defines whether a mail is sent when updates from the previously specified category are available.
  • download_updates = yes/no specifies whether these available updates need to be downloaded.
  • apply_updates = yes/no defines whether these available updates need to be applied.
  • random_sleep = 15 specifies the maximum time in minutes to randomly sleep preserving bandwidth and avoiding download storms.
  • emit_via = stdio/email/none defines what kind of message is used: stdio means written into the /var/log/cron file, email causes a mail to be sent, none doesn’t do anything.
  • email_from = root@localhostemail_to = rootemail_host = localhost defines respectively when the message is a mail the originator’s email address, the recipient’s email address and the host to which the mail is sent.

Note: As the official CentOS repositories don’t provide any security metadata, update_cmd = default is the only option that works (see here for details). To get these security metadata, you will have to get them through this website. It is also possible to get CentOS security updatesthrough the procedure provided by Casey Labs.

Source: Linuxaria’s website.

Additional Resources

Rackspace wrote a similar tool called Auter available through EPEL:

You can also read a Centmin Mod article about Setting up automatic updates.

 

0 (0)
Article Rating (No Votes)
Rate this article
Attachments
There are no attachments for this article.
Comments
There are no comments for this article. Be the first to post a comment.
Full Name
Email Address
Security Code Security Code
Related Articles RSS Feed
Need to set up yum repository for locally-mounted DVD on Red Hat Enterprise Linux 7
Viewed 1706 times since Mon, Oct 29, 2018
How To: Linux Hard Disk Encryption With LUKS [ cryptsetup Command ]
Viewed 5348 times since Fri, Jul 13, 2018
Automatic YUM Updates with Yum-cron
Viewed 9526 times since Fri, Oct 26, 2018
Open SSL Encrypt & Decrypt Files With Password Using OpenSSL
Viewed 2774 times since Mon, Feb 18, 2019
Understanding logrotate utility part 1
Viewed 829 times since Fri, Nov 30, 2018
tcpdump usage examples
Viewed 1089 times since Fri, Jul 27, 2018
RHEL: Enabling standard ftp/telnet
Viewed 1601 times since Sun, May 27, 2018
Fałszujemy rozpoznania skanerów #2
Viewed 1619 times since Mon, May 21, 2018
HOWTO: Use SSL/port 465 in smarthost stunnel
Viewed 1680 times since Fri, Sep 28, 2018
Using grep to find string in files
Viewed 742 times since Fri, May 15, 2020