【Ubuntu】如何设置 Ubuntu 自动每日更新:轻松保持系统安全
如何设置 Ubuntu 自动每日更新:轻松保持系统安全
大家好!今天我们来聊一个非常实用的话题——如何让 Ubuntu 系统自动每日更新。如果你是一个 Ubuntu 用户,尤其是服务器管理员,你可能会经常遇到这样的问题:系统需要频繁更新以修复安全漏洞或获取新功能,但手动更新既麻烦又容易忘记。那么,有没有一种方法可以让 Ubuntu 自动完成这些更新呢?答案是肯定的!今天我就来教大家如何轻松实现这一目标。
问题描述:为什么需要自动更新?
Ubuntu 是一个稳定且安全的操作系统,但它也像其他系统一样,需要定期更新来修复漏洞、提升性能或添加新功能。尤其是安全更新,如果不及时安装,可能会让系统暴露在风险中。然而,手动更新不仅耗时,还容易因为忙碌而忘记。对于服务器来说,这更是一个大问题,因为服务器的安全性直接关系到业务的稳定性。
那么,有没有一种方法可以让 Ubuntu 自动完成这些更新,同时又不影响系统的正常运行呢?答案是:使用 unattended-upgrades 工具。
解决方案:使用 unattended-upgrades 实现自动更新
unattended-upgrades 是 Ubuntu 官方提供的一个工具,专门用于自动化系统的更新过程。它可以自动下载并安装安全更新,甚至可以配置为自动清理旧包或重启系统(如果需要)。下面,我们就一步步来配置它。
第一步:安装 unattended-upgrades
首先,我们需要确保系统上已经安装了 unattended-upgrades。如果没有安装,可以通过以下命令来安装:
sudo apt update
sudo apt install unattended-upgrades
第二步:配置自动更新
安装完成后,我们需要对 unattended-upgrades 进行一些配置,以确保它能够按照我们的需求工作。
-
打开配置文件:
sudo nano /etc/apt/apt.conf.d/50unattended-upgrades -
在文件中,你会看到一些默认配置。确保以下部分被启用(通常是默认启用的):
Unattended-Upgrade::Allowed-Origins {"${distro_id}:${distro_codename}";"${distro_id}:${distro_codename}-security";"${distro_id}ESM:${distro_codename}"; };这些配置表示系统会自动安装来自安全仓库的更新。如果你还需要其他类型的更新(如常规更新或 backports),可以在这里添加。
-
(可选)启用自动清理旧包:
如果你希望系统自动清理不再需要的旧包,可以添加或取消注释以下行:Unattended-Upgrade::Remove-Unused-Dependencies "true"; -
保存并退出编辑器(
Ctrl+O保存,Ctrl+X退出)。
第三步:启用每日更新
接下来,我们需要确保系统每天都会检查并安装更新。
-
打开自动更新配置文件:
sudo nano /etc/apt/apt.conf.d/20auto-upgrades -
添加或确保以下内容存在:
APT::Periodic::Update-Package-Lists "1"; APT::Periodic::Download-Upgradeable-Packages "1"; APT::Periodic::AutocleanInterval "7"; APT::Periodic::Unattended-Upgrade "1";这些配置的含义如下:
Update-Package-Lists "1":每天更新包列表。Download-Upgradeable-Packages "1":每天下载可升级的包。AutocleanInterval "7":每 7 天清理一次旧包缓存。Unattended-Upgrade "1":每天自动安装更新。
-
保存并退出编辑器。
第四步:测试配置
为了确保配置正确,我们可以进行一次模拟运行:
sudo unattended-upgrades --dry-run --debug
这个命令会模拟自动更新的过程,但不会实际安装任何更新。如果一切正常,你会看到一些日志输出,说明配置没有问题。
第五步:监控日志
自动更新的日志会保存在 /var/log/unattended-upgrades/ 目录下。你可以随时查看这些日志,了解更新的情况:
cat /var/log/unattended-upgrades/unattended-upgrades.log
可选:自动重启
如果你的系统需要重启才能完成某些更新(如内核更新),你可以配置自动重启功能。只需在 /etc/apt/apt.conf.d/50unattended-upgrades 中添加以下内容:
Unattended-Upgrade::Automatic-Reboot "true";
Unattended-Upgrade::Automatic-Reboot-Time "02:00";
这样,系统会在凌晨 2 点自动重启(如果需要)。
总结
通过以上步骤,你的 Ubuntu 系统就可以实现每日自动更新了!这不仅省去了手动更新的麻烦,还能确保系统始终处于最新、最安全的状态。对于服务器管理员来说,这无疑是一个巨大的时间节省工具。
当然,自动更新虽然方便,但也需要谨慎使用。如果你管理的系统非常重要,建议在启用自动更新前,先在测试环境中验证其稳定性。此外,定期检查更新日志也是一个好习惯,以确保一切正常运行。
希望这篇文章对你有帮助!如果你有任何问题或建议,欢迎在评论区留言讨论。下次再见!😊
小提示:如果你喜欢这篇文章,别忘了分享给你的朋友或同事哦!让更多人受益于自动化的便利!
相关文章:
【Ubuntu】如何设置 Ubuntu 自动每日更新:轻松保持系统安全
如何设置 Ubuntu 自动每日更新:轻松保持系统安全 大家好!今天我们来聊一个非常实用的话题——如何让 Ubuntu 系统自动每日更新。如果你是一个 Ubuntu 用户,尤其是服务器管理员,你可能会经常遇到这样的问题:系统需要频…...
江科大STM32入门——UART通信笔记总结
wx:嵌入式工程师成长日记 1、简介 简单双向串口通信有两根通信线(发送端TX和接收端RX)TX与RX要交叉连接当只需单向的数据传输时,可以只接一根通信线当电平标准不一致时,需要加电平转换芯片 传输模式:全双工;时钟&…...
github gitbook写书
github创建新的仓库 在仓库中添加目录 ‘SUMMARY.md # Summary * [简介](README.md)gitbook 新建一个site https://www.gitbook.com/ 注册账号 取名字 一路 next,注意选免费版 最后 gitbook同步到github 你在主页可以看到 刚刚的test网站 点击右上角圈出来…...
探秘MetaGPT:革新软件开发的多智能体框架(22/30)
一、MetaGPT 引发的 AI 变革浪潮 近年来,人工智能大模型领域取得了令人瞩目的进展,GPT-3、GPT-4、PaLM 等模型展现出了惊人的自然语言处理能力,仿佛为 AI 世界打开了一扇通往无限可能的大门。它们能够生成流畅的文本、回答复杂的问题、进行创…...
【优选算法】Binary-Blade:二分查找的算法刃(下)
文章目录 1.山脉数组的峰顶索引2.寻找峰值3.寻找旋转排序数组中的最小值4.点名希望读者们多多三连支持小编会继续更新你们的鼓励就是我前进的动力! 本篇接上一篇二分查找,主要通过部分题目熟悉二分查找的进阶使用,重点强调二段性,…...
Improving Language Understanding by Generative Pre-Training GPT-1详细讲解
Improving Language Understanding by Generative Pre-Training 2018.06 GPT-1 0.有监督、半监督、无监督 CV:ImageNet pre-trained model NLP:pre-trained model? 在计算机视觉中任务包含分类、检测、分割,任务类别数少,对应…...
分治算法——优选算法
本章我们要学习的是分治算法,顾名思义就是分而治之,把大问题分为多个相同的子问题进行处理,其中我们熟知的快速排序和归并排序用的就是分治算法,所以我们需要重新回顾一下这两个排序。 一、快速排序(三路划分…...
EtherCAT转Modbus网关与TwinCAT3的连接及配置详述
在工业自动化控制系统中,常常需要整合不同的通信协议设备。本案例旨在展示如何利用捷米特JM-ECT-RTU协议转换网关模块,实现 EtherCAT 网络与 Modbus 设备之间的无缝连接,并在 TwinCAT3 环境中进行有效配置,以构建一个稳定可靠的自…...
Apache Hadoop YARN框架概述
一、YARN产生和发展简史 1.1背景 数据、程序、运算资源(内存、CPU)三者组在一起,才能完成数据的计算处理过程。在单机环境下,三者之间协调配合不是太大问题。为了应对海量数据的处理场景,Hadoop软件出现并提供了分布…...
三甲医院等级评审八维数据分析应用(八)--数据治理的持续改进与反馈机制篇
一、引言 1.1 研究背景与意义 当前三甲医院在数据管理方面暴露出诸多棘手问题。一方面,数据治理缺乏系统性与规范性,数据标准不统一,不同科室、信息系统之间的数据格式各异、编码混乱,导致数据整合与共享困难重重,严重制约了数据分析的准确性与深度。以某三甲医院为例,…...
XML通过HTTP POST 请求发送到指定的 API 地址,进行数据回传
代码结构说明 这段代码的主要功能是: 从指定文件夹中读取所有 XML 文件。 将每个 XML 文件的内容通过 HTTP POST 请求发送到指定的 API 地址。 处理服务器的响应,并记录每个文件的处理结果。 using System; using System.IO; using System.Net; usin…...
科大讯飞前端面试题及参考答案 (下)
除了 echarts 还了解其它画图工具吗? 除了 Echarts,还有不少优秀的画图工具可供选择使用。 Highcharts:它是一款功能强大且应用广泛的图表绘制工具,支持多种常见的图表类型,像柱状图、折线图、饼图、散点图等,同时也能创建较为复杂的图表,比如仪表盘图表、极坐标图等。H…...
【理论】测试框架体系TDD、BDD、ATDD、DDT介绍
一、测试框架是什么 测试框架是一组用于创建和设计测试用例的指南或规则。框架由旨在帮助 QA 专业人员更有效地测试的实践和工具的组合组成。 这些指南可能包括编码标准、测试数据处理方法、对象存储库、存储测试结果的过程或有关如何访问外部资源的信息。 A testing framewo…...
如何进行全脑思维(左脑,右脑,全脑)
1)每人都有一个价值100万美元的点子 . 谁能帮助实施这个点子? . 实施这个点子需要哪些资源? . 推行这个点子需要得到哪些许可? . 是否有实施这个点子的最佳时间? . 作为实施的开始,最简单的做法是什么? 2) 进行理性的、逻辑的、量的思维那一半,而排除了大脑的…...
领域驱动设计 2
1.幂等设计 1.1.定义 无论进行多少次相同的操作,结果都保持一致的设计。 1.2.写操作的幂等性 1.2.1.Insert 指定唯一标识写,是具有幂等性的。 不指定唯一标识写,不具备幂等性。 1.2.2.Update 如果更新操作依赖于与历史状态,…...
十年后LabVIEW编程知识是否会过时?
在考虑LabVIEW编程知识在未来十年内的有效性时,我们可以从几个角度进行分析: 1. 技术发展与软件更新 随着技术的快速发展,许多编程工具和平台不断更新和改进,LabVIEW也不例外。十年后,可能会有新的编程语言或平台…...
ARM交叉编译Boost库
Boost下载:点击跳转 编译过程: 生成project-config.jam ./bootstrap.sh --with-librariesfilesystem,thread --with-toolsetgcc 2. 修改project-config.jam(位于第12行附近) if ! gcc in [ feature.values <toolset> ] …...
uniapp:钉钉小程序需要录音权限及调用录音
{// ... 其他配置项"mp-dingtalk": {"permission": {"scope.userLocation" : {"desc" : "系统希望获得您的定位用于确认您周围的设施数据"},"scope.bluetooth" : {"desc" : "你的蓝牙权限将用于小…...
Swin Transformer模型详解(附pytorch实现)
写在前面 Swin Transformer(Shifted Window Transformer)是一种新颖的视觉Transformer模型,在2021年由微软亚洲研究院提出。这一模型提出了一种基于局部窗口的自注意力机制,显著改善了Vision Transformer(ViT…...
gitee 使用教程
前言 Gitee 是一个中国的开源代码托管平台,类似于 GitHub,旨在为开发者提供一个高效、稳定、安全的代码管理和协作开发环境。Gitee 支持 Git 协议,可以托管 Git 仓库,进行版本控制、代码协作、项目管理等操作。 1. Gitee 的主要…...
【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器
——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的一体化测试平台,覆盖应用全生命周期测试需求,主要提供五大核心能力: 测试类型检测目标关键指标功能体验基…...
Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...
【机器视觉】单目测距——运动结构恢复
ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛…...
TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案
一、TRS收益互换的本质与业务逻辑 (一)概念解析 TRS(Total Return Swap)收益互换是一种金融衍生工具,指交易双方约定在未来一定期限内,基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...
GitFlow 工作模式(详解)
今天再学项目的过程中遇到使用gitflow模式管理代码,因此进行学习并且发布关于gitflow的一些思考 Git与GitFlow模式 我们在写代码的时候通常会进行网上保存,无论是github还是gittee,都是一种基于git去保存代码的形式,这样保存代码…...
push [特殊字符] present
push 🆚 present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中,push 和 present 是两种不同的视图控制器切换方式,它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...
[免费]微信小程序问卷调查系统(SpringBoot后端+Vue管理端)【论文+源码+SQL脚本】
大家好,我是java1234_小锋老师,看到一个不错的微信小程序问卷调查系统(SpringBoot后端Vue管理端)【论文源码SQL脚本】,分享下哈。 项目视频演示 【免费】微信小程序问卷调查系统(SpringBoot后端Vue管理端) Java毕业设计_哔哩哔哩_bilibili 项…...
2025年渗透测试面试题总结-腾讯[实习]科恩实验室-安全工程师(题目+回答)
安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。 目录 腾讯[实习]科恩实验室-安全工程师 一、网络与协议 1. TCP三次握手 2. SYN扫描原理 3. HTTPS证书机制 二…...
android13 app的触摸问题定位分析流程
一、知识点 一般来说,触摸问题都是app层面出问题,我们可以在ViewRootImpl.java添加log的方式定位;如果是touchableRegion的计算问题,就会相对比较麻烦了,需要通过adb shell dumpsys input > input.log指令,且通过打印堆栈的方式,逐步定位问题,并找到修改方案。 问题…...
MySQL 主从同步异常处理
阅读原文:https://www.xiaozaoshu.top/articles/mysql-m-s-update-pk MySQL 做双主,遇到的这个错误: Could not execute Update_rows event on table ... Error_code: 1032是 MySQL 主从复制时的经典错误之一,通常表示ÿ…...
