linux 自动更新,如何使用yum-cron自动更新RHEL/CentOS Linux

yum命令行工具用于在RHEL/CentOS Linux服务器下安装和更新软件包。 我知道如何使用yum update命令行应用更新,但我想用cron手动更新包。 如何配置yum以便使用cron自动安装软件补丁/更新?

你需要安装yum-cron软件包。 它提供了将yum更新作为cron作业运行所需的文件。 如果您希望通过cron每晚自动更新yum,请安装此软件包。

如何在CentOS/RHEL 6.x/7.x上安装yum cron

在下面输入以下yum命令:

sudo yum install yum-cron

6abbaadcd7d910f9a197f2804e39e6f9.png

在CentOS/RHEL 7.x上使用systemctl命令打开服务:

[linuxidc@localhost ~]$ sudo systemctl enable yum-cron.service

[linuxidc@localhost ~]$ sudo systemctl start yum-cron.service

[linuxidc@localhost ~]$ sudo systemctl status yum-cron.service

示例输出:

● yum-cron.service - Run automatic yum updates as a cron job

Loaded: loaded (/usr/lib/systemd/system/yum-cron.service; enabled; vendor preset: disabled)

Active: active (exited) since 二 2018-05-15 08:57:45 CST; 13s ago

Process: 3449 ExecStart=/bin/touch /var/lock/subsys/yum-cron (code=exited, status=0/SUCCESS)

Main PID: 3449 (code=exited, status=0/SUCCESS)

5月 15 08:57:45 localhost.localdomain systemd[1]: Starting Run automatic yum...

5月 15 08:57:45 localhost.localdomain systemd[1]: Started Run automatic yum ...

Hint: Some lines were ellipsized, use -l to show in full.

[linuxidc@localhost ~]$

73ddcf7e236ffa1cc6825a87328d511b.png

如果您正在使用CentOS/RHEL 6.x,请运行:

$ sudo chkconfig yum-cron on

$ sudo service yum-cron start

yum-cron是yum的备用接口。 从cron中调用yum的非常方便的方法。 它提供了使库元数据保持最新的方法,并检查,下载和应用更新。 yum-cron的不同功能可以通过配置文件访问,而不是接受许多不同的命令行参数。

如何配置yum-cron以自动更新RHEL/CentOS Linux

您需要使用文本编辑器(如vi命令)编辑/etc/yum/yum-cron.conf和/etc/yum/yum-cron-hourly.conf文件:

$ sudo vi /etc/yum/yum-cron.conf

c6d0c0d8770ce97fd9f8974e04833f49.png

确保更新应该在可用时应用

apply_updates = yes

您可以设置地址以从中发送电子邮件。 请注意'localhost'将被替换为system_name的值。

email_from = root@localhost

要发送消息的地址列表。

email_to = your-it-support@some-domain-name

要连接到发送电子邮件的主机的名称。

email_host = localhost

如果您不想更新内核包,请在CentOS/RHEL 7.x上添加以下内容:

exclude=kernel*

对于RHEL/CentOS 6.x,添加以下内容以排除内核程序包的更新:

YUM_PARAMETER=kernel*

在vi/vim中保存并关闭文件。 如果您想每小时应用更新,则还需要更新/etc/yum/yum-cron-hourly.conf文件。 否则/etc/yum/yum-cron.conf将每天使用以下cron作业运行(us cat命令:

$ cat /etc/cron.daily/0yum-daily.cron

示例输出:

#!/bin/bash

# Only run if this flag is set. The flag is created by the yum-cron init

# script when the service is started -- this allows one to use chkconfig and

# the standard "service stop|start" commands to enable or disable yum-cron.

if [[ ! -f /var/lock/subsys/yum-cron ]]; then

exit 0

fi

# Action!

exec /usr/sbin/yum-cron /etc/yum/yum-cron-hourly.conf

[root@centos7-box yum]# cat /etc/cron.daily/0yum-daily.cron

#!/bin/bash

# Only run if this flag is set. The flag is created by the yum-cron init

# script when the service is started -- this allows one to use chkconfig and

# the standard "service stop|start" commands to enable or disable yum-cron.

if [[ ! -f /var/lock/subsys/yum-cron ]]; then

exit 0

fi

# Action!

exec /usr/sbin/yum-cron

就这些。 现在你的系统会每天使用yum-cron自动更新。 有关更多详细信息,请参阅yum-cron的手册页:

$ man yum-cron

方法2 - 使用shell脚本

警告:以下方法已过时。 不要在RHEL/CentOS 6.x/7.x上使用它。 只有当我在CentOS/RHEL版本4.x/5.x上使用它时,我才将其保留在下面。

让我们看看如何配置CentOS/RHEL来进行yum自动更新检索和安全包的安装。 您可以使用CentOS/RHEL服务器提供的yum-updatesd服务。 但是,该服务提供了一些开销。 您可以使用以下shell脚本创建每日或每周更新。 创建

/etc/cron.daily/yumupdate.sh to apply updates one a day.

/etc/cron.weekly/yumupdate.sh to apply updates once a week.

用于更新系统的示例Shell脚本

一个shell脚本,指示yum更新它通过cron发现的任何包:

#!/bin/bash

YUM=/usr/bin/yum

$YUM -y -R 120 -d 0 -e 0 update yum

$YUM -y -R 10 -e 0 -d 0 update

(代码清单-01:/etc/cron.daily/yumupdate.sh)

1.第一个命令会自动更新yum,接下来会应用系统更新。

2.-R 120:设置yum在执行命令之前等待的最长时间

3. -e 0:将错误级别设置为0(范围0 - 10)。 0表示仅打印关于您必须告诉的关键错误。

-d 0:将调试级别设置为0 - 打开或关闭打印内容的数量。 (范围:0 - 10).1.-y:假设是; 假设对任何问题的答案都是肯定的。

确保你设置了可执行权限:

# chmod +x /etc/cron.daily/yumupdate.sh

OK! 如果您有任何问题或意见,请随时在下面发表评论。

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要设置yum-cron的定时更新时间,您需要编辑两个配置文件:/etc/yum/yum-cron.conf和/etc/yum/yum-cron-hourly.conf。\[2\]这两个配置文件用于配置每天和每小时需要执行的内容。在/etc/yum/yum-cron.conf中,您可以找到以下两个参数来设置定时更新时间: 1. update_cmd:这个参数定义了在定时更新时使用的命令。默认值是default,表示使用系统默认的更新命令。您可以根据需要将其更改为其他命令。 2. random_sleep:这个参数定义了在执行定时更新之前的随机延迟时间。默认值是360,表示延迟时间为0到360秒之间的随机数。您可以根据需要将其更改为其他值。 在/etc/yum/yum-cron-hourly.conf中,您可以找到以下参数来设置每小时执行的定时更新时间: 1. random_sleep:这个参数定义了在执行每小时定时更新之前的随机延迟时间。默认值是15,表示延迟时间为0到15分钟之间的随机数。您可以根据需要将其更改为其他值。 请注意,这些参数的具体值取决于您的需求和系统配置。您可以使用文本编辑器(如vi命令)打开这些文件,并根据需要进行修改。\[2\]完成配置后,您可以使用以下命令来让yum-cron按照您设置的定时更新时间执行: - 对于每小时定时更新:编辑/etc/cron.hourly/0yum-hourly.cron文件,将exec /usr/sbin/yum-cron /etc/yum/yum-cron-hourly.conf行中的/etc/yum/yum-cron-hourly.conf更改为您的配置文件路径。 - 对于每天定时更新:编辑/etc/cron.daily/0yum-daily.cron文件,将exec /usr/sbin/yum-cron行中的/usr/sbin/yum-cron更改为您的配置文件路径。 请确保在修改配置文件后保存并退出。然后,yum-cron将按照您设置的定时更新时间执行更新任务。\[3\] #### 引用[.reference_title] - *1* *2* *3* [通过yum-cronlinux进行安全更新](https://blog.csdn.net/wenwst/article/details/85062058)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值