CentOS 8设置自动更新的完整步骤
你可以为数据和计算机做的最好的事情就是确保它们的安全。就像打开更新一样简单,但是,大多数使用CentOS 8的人都不知道该怎么做。
Setup-CentOS-8-Automatic-Updates
在本文中,你将学习如何在CentOS 8 Linux机器上启用自动软件更新。你将学习如何设置系统,从而无需手动安装安全性和其他更新。
1.使用自动RPM软件包设置自动CentOS 8更新
首先是要安装DNF自动 RPM软件包。该软件包提供了自动启动的DNF组件。要安装它,请使用以下命令。
# dnf install dnf-automatic
在CentOS 8中安装dnf-automatic
你可以使用rpm命令获取有关该软件包的更多详细信息。
#rpm -qi dnf-automatic
获取有关dnf-automatic的信息
下一步是配置dnf自动更新。配置文件位于 /etc/dnf/automatic.conf 中。打开文件后,你可以设置所需的值以适合的软件要求。
配置文件如下所示:
[commands]
upgrade_type = default
random_sleep = 0
download_updates = yes
apply_updates = yes
[emitters]
emit_via = motd
[email]
email_from = root@myserver.example.com
email_to = root
email_host = localhost
[base]
debuglevel = 1
你可以将dnf-automatic设置为仅下载新更新并通过电子邮件提醒你,但这意味着你将必须手动安装更新。要启用此功能,请在配置文件中禁用 apply_updates 。
apply_updates = no
继续设置警报方法。
最后,你现在可以运行dnf-automatic,执行以下命令来调度CentOS 8计算机的DNF自动更新。
# systemctl enable --now dnf-automatic.timer
在CentOS 8上计划DNF自动更新
上面的命令启用并启动系统计时器。要检查dnf自动服务的状态,请运行以下命令。
# systemctl list-timers *dnf-*
2.使用Cockpit Web控制台设置自动CentOS 8更新
在CentOS 8上预先安装了Cockpit,它使系统管理员可以从基于Web的控制台管理任务。 你可以使用Cockpit来更新操作系统和软件。
如果未安装Cockpit,则可以使用以下命令安装:
# systemctl start cockpit.socket
# systemctl enable --now cockpit.socket
# systemctl status cockpit.socket
在CentOS 8中启动和验证Cockpit Web控制台
开通防火墙规则,访问如下地址:
# firewall-cmd --add-service=cockpit --permanent
# firewall-cmd --reload
Locally: https://localhost:9090
在防火墙上打开Cockpit Web控制台端口
为此,请使用管理员帐户通过 https://SERVER_IP:9090 (其中SERVER_IP是CentOS 8服务器的IP地址)登录到Cockpit 。登录后,单击左侧导航栏中的软件更新。
Cockpit-CentOS0-8的软件更新
在下一个窗口中,开启自动更新 ON 。现在,你可以选择所需的更新类型(”应用所有更新”或”应用安全更新”),要应用更新的日期和时间以及重新引导服务器。
Cockpit-设置自动CentOS 8更新
请注意,你必须重新启动系统才能设置自动更新。因此,请确保在选择更新后可以重新引导服务器。
总结
在本文中,你学习了如何为CentOS 8计算机设置自动更新。有两种方法可以执行此操作。第一种方法是使用DNF自动更新。在CentOS 8 Linux 上启用DNF自动更新的主要优点是,与手动更新相比,你的计算机更新得更快,更统一,更频繁。
这使你可以更好地应对网络攻击。第二种方法是使用Cockpit Web控制台,使用Cockpit,由于使用图形用户界面(GUI)而不是使用命令行界面(CLI)的DNF自动更新,因此启用自动更新很容易。
PS:本文来自翻译,文中内容有所改动,并非原文所译。
原文链接: https://www.tecmint.com/setup-automatic-updates-for-centos-8
好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对ZaLou.Cn的支持。
- 重置网卡命令
- ASP.NET Core依赖注入解读&使用Autofac替代实现
- Python标准库12 数学与随机数 (math包,random包)
- .Net魔法堂:发个带附件的邮件
- apache域名绑定(appserv环境)
- JS魔法堂:那些困扰你的DOM集合类型
- ASP.NET Core 介绍和项目解读
- 【手把手教你全文检索】Lucene索引的【增、删、改、查】
- 红方块躲避—天才游戏
- .NET Core全新路线图(译)
- JS魔法堂:阻止元素被选中
- CSS3魔法堂:禁止用户改变textarea大小
- CentOS6.5菜鸟之旅:VIM插件NERDtree初探
- CentOS6.5菜鸟之旅:安装输入法(小呀小企鹅)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- MySQL架构与执行流程
- 基础知识 | R语言数据管理之变量创建
- 基础知识 | R语言数据管理之缺失值
- MySQL索引的原理及使用
- 基础知识 | R语言数据管理之数据集取子集
- String类型在JVM中的内存分配
- 基础知识 | R语言高级数据管理之函数
- 写给Java程序员看的,CPU 上下文切换、用户态、内核态、进程与线程上下文切换(转)
- Mysql 常用查询性能优化
- 并发编程的基础
- Apache Atlas系列 -- 部署
- 深入浅出Spark的Checkpoint机制
- 基础知识 | R语言绘图保存的pdf图片无法显示中文怎么办?
- 基础知识 | R语言绘图基础之柱形图
- 高维数据 | R语言绘图基础之主成分分析