【ubuntu】【unattended-upgrades 介绍】

unattended-upgrades 介绍

unattended-upgrades 是 Debian/Ubuntu 系统中一个重要的自动化安全更新工具。它的主要功能是在无需人工干预的情况下,自动下载并安装系统的安全更新,这对于保持服务器安全性和稳定性至关重要。

主要特点:

复制代码
自动安全更新:定期检查并安装安全补丁

配置灵活:可通过 /etc/apt/apt.conf.d/50unattended-upgrades 配置文件自定义更新行为

日志记录:所有操作都会记录在 /var/log/unattended-upgrades/ 目录中

邮件通知:可配置邮件通知,了解更新状态

黑白名单:可以指定哪些包需要或不需要自动更新

适用场景:

复制代码
生产服务器需要自动安全更新

需要最小化系统维护工作量的环境

确保系统及时获得关键安全补丁

命令解析

systemctl status unattended-upgrades

作用:检查 unattended-upgrades 服务的运行状态

输出信息包括:

复制代码
服务是否正在运行

最近的服务日志片段

服务的进程ID

服务的启动时间

服务的配置文件信息

示例输出:

text 复制代码
● unattended-upgrades.service - Unattended Upgrades Shutdown
   Loaded: loaded (/lib/systemd/system/unattended-upgrades.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2024-01-09 10:00:00 UTC; 1 day ago
   Main PID: 1234 (unattended-upgr)
   Status: "Processing updates..."

2. sudo systemctl stop unattended-upgrades

作用:立即停止 unattended-upgrades 服务

效果:

复制代码
服务会立即停止运行

正在进行的更新会被中断

服务停止后,系统将不再自动检查和应用更新

注意:这只是临时停止,重启后服务可能会再次运行(除非同时使用 disable)

使用场景:

复制代码
需要手动控制系统更新时

进行维护操作前暂停自动更新

解决由更新引起的紧急问题

3. sudo systemctl disable unattended-upgrades

作用:禁止 unattended-upgrades 服务在系统启动时自动运行

效果:

复制代码
服务不会随系统启动而自动运行

需要手动启动服务才能恢复自动更新

与 stop 命令不同,disable 是持久性的设置

使用场景:

复制代码
希望完全控制更新时机

在特定环境中需要手动管理更新

与其他更新管理系统集成时

组合使用建议

临时停止并禁用(完全关闭自动更新):

bash 复制代码
sudo systemctl stop unattended-upgrades
sudo systemctl disable unattended-upgrades

重新启用自动更新:

bash 复制代码
sudo systemctl enable unattended-upgrades
sudo systemctl start unattended-upgrades

仅临时停止,重启后恢复:

bash 复制代码
sudo systemctl stop unattended-upgrades
# 重启后服务会自动恢复

注意事项

警告:禁用自动安全更新可能会使系统面临安全风险。建议:

复制代码
如果禁用自动更新,请建立定期手动更新流程

至少保持安全更新的自动安装

在生产环境中谨慎操作

考虑使用配置调整而不是完全禁用(如调整更新频率、设置维护窗口等)

最佳实践是配置 unattended-upgrades 只安装安全更新,并在可控的时间窗口内进行,而不是完全禁用它。

相关推荐
疯狂吧小飞牛20 小时前
GPG基础指令
linux·服务器·网络
C++ 老炮儿的技术栈20 小时前
volatile使用场景
linux·服务器·c语言·开发语言·c++
哆啦A梦158821 小时前
Springboot整合MyBatis实现数据库操作
数据库·spring boot·mybatis
Zzzzmo_21 小时前
【MySQL】JDBC(含settings.xml文件配置/配置国内镜像以及pom.xml文件修改)
数据库·mysql
hjxu201621 小时前
【OpenClaw 龙虾养成笔记一】在远程服务器,使用Docker安装OpenClaw
服务器·笔记·docker
FirstFrost --sy1 天前
MySQL内置函数
数据库·mysql
2401_879693871 天前
将Python Web应用部署到服务器(Docker + Nginx)
jvm·数据库·python
reembarkation1 天前
光标在a-select,鼠标已经移出,下拉框跟随页面滚动
java·数据库·sql
eggwyw1 天前
MySQL-练习-数据汇总-CASE WHEN
数据库·mysql
星轨zb1 天前
通过实际demo掌握SpringSecurity+MP中的基本框架搭建
数据库·spring boot·spring security·mp