ubuntu20.04禁用自动更新(禁用更新、禁用自动升级、禁用apt更新、禁用apt升级、禁用软件更新、禁用系统更新)

想要禁用Ubuntu 20.04的所有自动升级,只需要修改两个文件:

  1. /etc/apt/apt.conf.d/10periodic: 这个文件控制APT的周期性任务。你需要编辑这个文件并设置所有选项为"0",这将禁止任何定期的任务。

    你可以使用以下命令快速完成此操作,也可以用编辑器修改:

    echo -e "APT::Periodic::Update-Package-Lists \"0\";\nAPT::Periodic::Download-Upgradeable-Packages \"0\";\nAPT::Periodic::AutocleanInterval \"0\";\nAPT::Periodic::Unattended-Upgrade \"0\";" | sudo tee /etc/apt/apt.conf.d/10periodic
    
  2. /etc/apt/apt.conf.d/20auto-upgrades:这个文件控制是否自动安装更新。你需要编辑这个文件并设置所有选项为"0"。

    你可以使用以下命令快速完成此操作:

    echo -e "APT::Periodic::Update-Package-Lists \"0\";\nAPT::Periodic::Unattended-Upgrade \"0\";" | sudo tee /etc/apt/apt.conf.d/20auto-upgrades
    

改完之后最好重启系统:

reboot

请注意,这些操作需要管理员权限,所以需要使用sudo来执行。另外,禁用自动更新可能会使你的系统暴露在未修复的安全漏洞下,所以请确保你有其他的方式来手动管理和应用重要的安全更新。

参考文章:ubuntu20.04关闭内核自动更新、禁止/取消系统自动更新的方法

(下面勿看,可能是错误的)
👇👇👇


下面有点乱,总结一下,运行下面几条命令就行:

systemctl status unattended-upgrades.service # 查看服务状态
systemctl disable unattended-upgrades.service #禁止开机启动无人更新
systemctl stop unattended-upgrades.service #停止无人更新服务systemctl status apt-daily.timer # 查看服务状态
systemctl disable apt-daily.timer #禁止自动下载
systemctl stop apt-daily.timer #停止自动下载
systemctl status apt-daily.service # 查看服务状态
systemctl disable apt-daily.service #禁止自动下载
systemctl stop apt-daily.service #停止自动下载systemctl status apt-daily-upgrade.timer # 查看服务状态
systemctl disable apt-daily-upgrade.timer #禁止自动更新
systemctl stop apt-daily-upgrade.timer #停止自动更新
systemctl status apt-daily-upgrade.service # 查看服务状态
systemctl disable apt-daily-upgrade.service #禁止自动更新
systemctl stop apt-daily-upgrade.service #停止自动更新systemctl daemon-reload #最后执行#服务有可能是.timer也有可能是.service

参考文章:ubuntu禁用自动更新,开启grub选择界面,自动更新导致软件和驱动异常修复

这是我新装服务器各个自动升级服务初始状态:

root@ky:~#
root@ky:~# systemctl status unattended-upgrades.service
● unattended-upgrades.service - Unattended Upgrades ShutdownLoaded: loaded (/lib/systemd/system/unattended-upgrades.service; enabled; vendor preset: enabled)Active: active (running) since Wed 2023-12-13 05:49:08 UTC; 25min agoDocs: man:unattended-upgrade(8)Main PID: 1510 (unattended-upgr)Tasks: 2 (limit: 76665)Memory: 12.0MCGroup: /system.slice/unattended-upgrades.service└─1510 /usr/bin/python3 /usr/share/unattended-upgrades/unattended-upgrade-shutdown --wait-for-signalDec 13 05:49:08 ky systemd[1]: Started Unattended Upgrades Shutdown.
root@ky:~#
root@ky:~#
root@ky:~# systemctl status apt-daily.timer
● apt-daily.timer - Daily apt download activitiesLoaded: loaded (/lib/systemd/system/apt-daily.timer; enabled; vendor preset: enabled)Active: active (waiting) since Wed 2023-12-13 05:49:06 UTC; 26min agoTrigger: Wed 2023-12-13 13:05:59 UTC; 6h leftTriggers: ● apt-daily.serviceDec 13 05:49:06 ky systemd[1]: Started Daily apt download activities.
root@ky:~#
root@ky:~#
root@ky:~# systemctl status apt-daily.service
● apt-daily.service - Daily apt download activitiesLoaded: loaded (/lib/systemd/system/apt-daily.service; static; vendor preset: enabled)Active: inactive (dead)
TriggeredBy: ● apt-daily.timerDocs: man:apt(8)
root@ky:~#
root@ky:~#
root@ky:~# systemctl status apt-daily-upgrade.timer
● apt-daily-upgrade.timer - Daily apt upgrade and clean activitiesLoaded: loaded (/lib/systemd/system/apt-daily-upgrade.timer; enabled; vendor preset: enabled)Active: active (waiting) since Wed 2023-12-13 05:49:06 UTC; 26min agoTrigger: Thu 2023-12-14 06:26:23 UTC; 24h leftTriggers: ● apt-daily-upgrade.serviceDec 13 05:49:06 ky systemd[1]: Started Daily apt upgrade and clean activities.
root@ky:~#
root@ky:~#
root@ky:~# systemctl status apt-daily-upgrade.service
● apt-daily-upgrade.service - Daily apt upgrade and clean activitiesLoaded: loaded (/lib/systemd/system/apt-daily-upgrade.service; static; vendor preset: enabled)Active: inactive (dead) since Wed 2023-12-13 06:01:44 UTC; 14min ago
TriggeredBy: ● apt-daily-upgrade.timerDocs: man:apt(8)Process: 1828 ExecStartPre=/usr/lib/apt/apt-helper wait-online (code=exited, status=0/SUCCESS)Process: 1841 ExecStart=/usr/lib/apt/apt.systemd.daily install (code=exited, status=0/SUCCESS)Main PID: 1841 (code=exited, status=0/SUCCESS)Dec 13 06:01:39 ky systemd[1]: Starting Daily apt upgrade and clean activities...
Dec 13 06:01:44 ky systemd[1]: apt-daily-upgrade.service: Succeeded.
Dec 13 06:01:44 ky systemd[1]: Finished Daily apt upgrade and clean activities.
root@ky:~#

禁用各个服务并全部停止:

root@ky:~#
root@ky:~# systemctl disable unattended-upgrades.service
Synchronizing state of unattended-upgrades.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install disable unattended-upgrades
Removed /etc/systemd/system/multi-user.target.wants/unattended-upgrades.service.
root@ky:~#
root@ky:~#
root@ky:~# systemctl stop unattended-upgrades.service
root@ky:~#
root@ky:~# systemctl disable apt-daily.timer
Removed /etc/systemd/system/timers.target.wants/apt-daily.timer.
root@ky:~#
root@ky:~# systemctl stop apt-daily.timer
root@ky:~#
root@ky:~# systemctl disable apt-daily.service
root@ky:~#
root@ky:~# systemctl stop apt-daily.service
root@ky:~#
root@ky:~# systemctl disable apt-daily-upgrade.timer
Removed /etc/systemd/system/timers.target.wants/apt-daily-upgrade.timer.
root@ky:~#
root@ky:~# systemctl stop apt-daily-upgrade.timer
root@ky:~#
root@ky:~# systemctl disable apt-daily-upgrade.service
root@ky:~#
root@ky:~# systemctl stop apt-daily-upgrade.service
root@ky:~#

再次查看各个服务状态:

root@ky:~#
root@ky:~# systemctl status unattended-upgrades.service
● unattended-upgrades.service - Unattended Upgrades ShutdownLoaded: loaded (/lib/systemd/system/unattended-upgrades.service; disabled; vendor preset: enabled)Active: inactive (dead)Docs: man:unattended-upgrade(8)Dec 13 05:49:08 ky systemd[1]: Started Unattended Upgrades Shutdown.
Dec 13 06:17:09 ky systemd[1]: Stopping Unattended Upgrades Shutdown...
Dec 13 06:17:09 ky systemd[1]: unattended-upgrades.service: Succeeded.
Dec 13 06:17:09 ky systemd[1]: Stopped Unattended Upgrades Shutdown.
root@ky:~#
root@ky:~#
root@ky:~# systemctl status apt-daily.timer
● apt-daily.timer - Daily apt download activitiesLoaded: loaded (/lib/systemd/system/apt-daily.timer; disabled; vendor preset: enabled)Active: inactive (dead)Trigger: n/aTriggers: ● apt-daily.serviceDec 13 05:49:06 ky systemd[1]: Started Daily apt download activities.
Dec 13 06:17:24 ky systemd[1]: apt-daily.timer: Succeeded.
Dec 13 06:17:24 ky systemd[1]: Stopped Daily apt download activities.
root@ky:~#
root@ky:~# systemctl status apt-daily.service
● apt-daily.service - Daily apt download activitiesLoaded: loaded (/lib/systemd/system/apt-daily.service; static; vendor preset: enabled)Active: inactive (dead)Docs: man:apt(8)
root@ky:~#
root@ky:~# systemctl status apt-daily-upgrade.timer
● apt-daily-upgrade.timer - Daily apt upgrade and clean activitiesLoaded: loaded (/lib/systemd/system/apt-daily-upgrade.timer; disabled; vendor preset: enabled)Active: inactive (dead)Trigger: n/aTriggers: ● apt-daily-upgrade.serviceDec 13 05:49:06 ky systemd[1]: Started Daily apt upgrade and clean activities.
Dec 13 06:17:49 ky systemd[1]: apt-daily-upgrade.timer: Succeeded.
Dec 13 06:17:49 ky systemd[1]: Stopped Daily apt upgrade and clean activities.
root@ky:~#
root@ky:~# systemctl status apt-daily-upgrade.service
● apt-daily-upgrade.service - Daily apt upgrade and clean activitiesLoaded: loaded (/lib/systemd/system/apt-daily-upgrade.service; static; vendor preset: enabled)Active: inactive (dead)Docs: man:apt(8)Dec 13 06:01:39 ky systemd[1]: Starting Daily apt upgrade and clean activities...
Dec 13 06:01:44 ky systemd[1]: apt-daily-upgrade.service: Succeeded.
Dec 13 06:01:44 ky systemd[1]: Finished Daily apt upgrade and clean activities.
root@ky:~#

目前以下服务和定时器都已经被禁用并处于非活动状态:

  1. unattended-upgrades.service
  2. apt-daily.timer
  3. apt-daily.service
  4. apt-daily-upgrade.timer
  5. apt-daily-upgrade.service

"Loaded"行中的"disabled"表示服务已被禁用,"Active"行中的"inactive (dead)"表示服务当前未运行。所以,是的,这些服务都已被禁用。

关于禁用开机自启服务直接修改配置文件和使用systemctl命令的区别

在Ubuntu 20.04中,禁用开机自启服务有多种方式,包括直接修改配置文件和使用systemctl命令。这两种方式各有优点和适用场景。

  1. 修改配置文件:这是一种更直接的方法,它直接改变了服务的配置。这通常涉及到编辑特定服务的配置文件,并改变其中的某些参数。这种方法的好处是你可以精确地控制服务的行为,而不仅仅是启动或不启动。然而,这需要对系统服务的配置有深入的理解,并且如果不小心可能会导致错误。

  2. 使用systemctl命令:systemctl是Systemd系统的主要管理工具,用于控制Linux系统中的服务。使用systemctl disable <service>命令可以禁止一个服务在开机时启动。这是一种比较简单和安全的方式,因为它通过系统的标准接口进行操作,不需要直接编辑配置文件。然而,它只能控制服务是否在开机时启动,而不能改变服务的其他行为。

总的来说,如果只想禁止一个服务在开机时启动,那么使用systemctl命令就足够了。如果你想更细致地控制服务的行为,那么你可能需要编辑配置文件。

文章目录

    • 关于禁用开机自启服务直接修改配置文件和使用`systemctl`命令的区别
  • Ubuntu 20.04禁用自动更新全指南
    • 目录
    • 理解Ubuntu的自动更新
    • 通过命令行禁用自动更新
      • 1. 打开终端
      • 2. 编辑`50unattended-upgrades`文件
      • 3. 修改配置
      • 4. 保存并关闭文件
      • 5. 禁用自动更新服务
    • 通过GUI禁用自动更新
    • 可能遇到的问题与解决方法
    • 总结

Ubuntu 20.04禁用自动更新全指南

Ubuntu 20.04默认设置了自动更新,这在许多情况下是有用的,特别是对于安全更新。然而,如果你想要手动控制何时进行系统更新,或者在具有有限网络连接的环境中工作,你可能会希望关闭自动更新。本文将详细介绍如何在Ubuntu 20.04上禁用自动更新。

目录

理解Ubuntu的自动更新

在深入研究如何禁用Ubuntu 20.04的自动更新之前,我们需要先理解自动更新机制。Ubuntu使用名为unattended-upgrades的软件包来处理自动更新。这个软件包默认安装在Ubuntu上,并且默认设置为每天检查并安装安全更新1

不过,要注意的是,虽然这项功能可以帮助保持系统的安全性,但是它也可能在某些情况下引起问题。例如,在网络连接有限的情况下,自动下载和安装更新可能会消耗大量的网络资源。此外,如果新的更新引入了与你的系统不兼容的更改,它也可能会导致问题。

通过命令行禁用自动更新

一种禁用Ubuntu 20.04自动更新的方法是使用命令行。这需要修改unattended-upgrades软件包的配置文件。以下是步骤:

1. 打开终端

在图形界面上,你可以通过按下Ctrl + Alt + T快捷键来打开一个新的终端窗口。

2. 编辑50unattended-upgrades文件

使用文本编辑器打开/etc/apt/apt.conf.d/50unattended-upgrades文件。例如,可以使用nano编辑器:

sudo nano /etc/apt/apt.conf.d/50unattended-upgrades

3. 修改配置

在文件中找到以下行:

Unattended-Upgrade::InstallOnShutdown "false";

并将其更改为:

Unattended-Upgrade::InstallOnShutdown "true";

这将使得只有在关机时才会进行无人值守的升级。

4. 保存并关闭文件

如果你正在使用nano编辑器,可以按Ctrl + X,然后按Y,最后按Enter来保存并关闭文件。

5. 禁用自动更新服务

最后,你需要禁用自动更新服务。在终端中输入以下命令:

sudo systemctl disable --now unattended-upgrades.service

以上步骤将会禁用Ubuntu 20.04的自动更新功能。

通过GUI禁用自动更新

如果你更喜欢图形用户界面(GUI),也可以通过系统设置来禁用自动更新。以下是步骤:

  1. 打开“软件和更新”

    点击左上角的"Show Applications"按钮,然后在搜索栏中输入“Software & Updates”并点击它。

  2. 更改设置

    在打开的窗口中,切换到"Updates"标签页。在"Automatically check for updates:“下拉菜单中,选择"Never”。

  3. 应用更改

    点击"Close"按钮应用更改。系统可能会提示你输入密码以确认更改。

这样,你就通过GUI禁用了Ubuntu 20.04的自动更新。

可能遇到的问题与解决方法

虽然以上步骤通常足够禁用Ubuntu 20.04的自动更新,但在某些情况下,你可能还会遇到一些问题。例如,尽管你已经禁用了自动更新,但系统仍然会自动检查更新。这是因为apt-dailyapt-daily-upgrade服务仍然在运行。

要解决这个问题,你可以禁用这两个服务。在终端中输入以下命令:

sudo systemctl disable --now apt-daily.service apt-daily.timer
sudo systemctl disable --now apt-daily-upgrade.service apt-daily-upgrade.timer

如果你想恢复自动更新,只需将disable更改为enable即可。

总结

本文详细介绍了如何在Ubuntu 20.04上禁用自动更新,无论是通过命令行还是GUI。虽然自动更新有其优点,但在某些情况下,手动控制更新可能更为理想。只需记住,定期检查并安装安全更新仍然是非常重要的,尤其是在公共网络环境中。


  1. “AutomaticUpdates - Ubuntu Community Help Wiki.” https://help.ubuntu.com/community/AutomaticUpdates. Accessed 25 Sep. 2021. ↩︎

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/227782.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springCloud项目打包如何把jar放到指定目录下

springCloud项目打包如何把jar发放到指定目录下 maven-antrun-plugin springCloud微服务打包jar&#xff0c;模块过多&#xff1b;我的项目模块结构如下&#xff1a; 我把实体类相关的单独抽离一个模块在service-api下服务单独写在service某块下&#xff0c; 每个模块的jar都…

如何使用jQuery获取当前网址路径

如何使用jQuery获取当前网址路径概述在前端开发中&#xff0c;经常需要获取当前网址的路径&#xff0c;通过使用jQuery库&#xff0c;我们可以轻松地实现这个功能。本文将逐步介绍如何使用jQuery获取当前网址路径。流程步骤以下是实现该功能的步骤&#xff1a;步骤 描述…

人工智能导论复习资料

题型 1、简答题&#xff08;5题&#xff09; 2、设计题 3、综合题 4、论述题&#xff08;10分&#xff09; 考点 第一章 1、人工智能的定义、发展&#xff1b; 2、人工智能的学派、认知观及其间的关系&#xff1b; 3、人工智能要素及系统分类&#xff1b; 4、人工智能的研究、…

Python轴承故障诊断 (七)基于EMD-CNN-LSTM的故障分类

目录 前言 1 经验模态分解EMD的Python示例 2 轴承故障数据的预处理 2.1 导入数据 2.2 制作数据集和对应标签 2.3 故障数据的EMD分解可视化 2.4 故障数据的EMD分解预处理 3 基于EMD-CNN-LSTM的轴承故障诊断分类 3.1 训练数据、测试数据分组&#xff0c;数据分batch 3.…

Fanuc-Focas库函数库中控制机床轴的移动

在Fanuc-Focas库中控制机床轴的移动&#xff0c;通常需要通过调用库函数来实现。具体的函数和参数可能因不同的库版本和机床型号而有所不同&#xff0c;因此请参考相关的Fanuc-Focas文档或手册以获取准确的信息。 一般来说&#xff0c;控制机床轴的移动需要以下几个步骤&#…

canal环境部署

docker 部署canal同步数据 1 环境: 2 Mysql 配置 查看 binlog 是否启用 SHOW VARIABLES LIKE ‘%log_bin%’; 开启 binlog, 修改 my.cnf docker cp mysql:/etc/my.cnf /data/mysql/conf 拷贝文件到临时目录修改后再拷贝回去 # For advice on how to change settings please …

ArchLinux安装使用ifconfig

安装 sudo pacman -S net-tools 使用 ifconfig

【网络安全】网络防护之旅 - 点燃网络安全战场的数字签名烟火

​ &#x1f308;个人主页&#xff1a;Sarapines Programmer&#x1f525; 系列专栏&#xff1a;《网络安全之道 | 数字征程》⏰墨香寄清辞&#xff1a;千里传信如电光&#xff0c;密码奥妙似仙方。 挑战黑暗剑拔弩张&#xff0c;网络战场誓守长。 ​ 目录 &#x1f608;1. 初识…

Android studio 多渠道打包步骤

在Android Studio中&#xff0c;可以使用Gradle的多渠道打包功能来生成不同渠道的应用包。以下是多渠道打包的步骤&#xff1a; 在项目的build.gradle文件中&#xff0c;添加渠道相关的配置。在android节点下添加productFlavors块&#xff0c;定义不同的渠道&#xff0c;例如&…

渗透实验基础教程(完整版):

#江南的江 #每日鸡汤&#xff1a;影响我们人生的绝不仅仅是环境&#xff0c;其实是心态在控制个人的行动和思想。同时&#xff0c;心态也决定了一个人的视野事业和成就&#xff0c;甚至一生。 #初心和目标&#xff1a;成为网络安全达人。。。 渗透实验基础教程&#xff08;完整…

UniGuiApplication的客户端信息包括以下内容:

UniGuiApplication的客户端信息包括以下内容&#xff1a; UserAgent: 客户端的用户代理信息&#xff0c;用于识别客户端的浏览器类型和版本。Browser: 客户端的浏览器类型&#xff0c;如Chrome、Firefox、Safari等。Platform: 客户端的操作系统平台&#xff0c;如Windows、Mac…

自动驾驶技术:驶向未来的智能之路

导言 自动驾驶技术正引领着汽车产业向着更安全、高效、智能的未来演进。本文将深入研究自动驾驶技术的核心原理、关键技术、应用场景以及对交通、社会的深远影响。 1. 简介 自动驾驶技术是基于先进传感器、计算机视觉、机器学习等技术的创新&#xff0c;旨在实现汽车在不需要人…

关于后端返回给我们的对象或者数组为空时我们把空字符(“”)串变成横杠(“-”)

根据需求&#xff0c;我们分别把他写成两种方法&#xff0c;在我们项目中可以 直接调用该方法&#xff0c;方法如下&#xff1a; 1.把数组中为空的项替换成横杠 //把数组中为空的项替换成横杠 export function filtrateData(data) { data.forEach(obj > { Object.keys(obj)…

鸿蒙(HarmonyOS)应用开发——代理提醒(题目答案)

判断题 1.构造进度条模板通知&#xff0c;name字段当前需要固定配置为downloadTemplate。 正确(True) 2.给通知设置分发时间&#xff0c;需要设置showDeliveryTime为false。 错误(False) 3.OpenHarmony提供后台代理提醒功能&#xff0c;在应用退居后台或退出后&#xff0c…

服务监控-druid监控

一、概述 当前互联网和很多公司&#xff0c;日益都采用阿里数据库连接池druid&#xff0c;druid本身也有监控页面&#xff0c;但是我们自己也需要对监控信息进行采集 &#xff0c;接入自己的监控平台&#xff0c;因此需要能够查询的druid的监控信息 二、方案 方案一&#…

《深入理解计算机系统》学习(3):程序编译和处理器

编译过程 假设一个C程序有两个文件p1.c、p2.c&#xff0c;我们用Unix命令行编译这些代码&#xff1a; linux>gcc -o p p1.c p2.cgcc命令指的就是GCC C编译器&#xff0c;因为这是Linux上默认的编译器&#xff0c;gcc命令调用了一整套程序&#xff0c;将源代码转化为可执行…

Centos安装docker显示 No Package Docker-Ce Available

安装docker 查看当前系统内核 查看方式 uname -r显示如下 [root@test ~]# uname -r 3.10.0-1127.19.1.el7.x86_64重要提示: docker内核版本必须是3.10+以上的版本 1、卸载老版本的 docker 及其相关依赖 yum remove docker docker-common container-selinux docker-selin…

WEB 3D技术 简述React Hook/Class 组件中使用three.js方式

之前 已经讲过了 用vue结合three.js进行开发 那么 自然是少不了react 我们 还是先创建一个文件夹 终端执行 npm init vitelatest输入一下项目名称 然后技术选择 react 也不太清楚大家的基础 那就选择最简单的js 然后 我们就创建完成了 然后 我们用编辑器打开创建好的项目目…

Angular中使用Intersection Observer API实现无限滚动

背景&#xff1a; 实现原理为 在data下面加一个loading元素 如果此元素进入视窗 则调用api获取新的数据加到原来的数据里面&#xff0c;这时loading就会被新数据顶下去&#xff0c;如此循环。 <div id"dataContainer"></div> <div id"loadingCo…

Java之方法引用

目录 一、什么是方法引用 二、方法引用的规则 三、方法引用的分类&#xff1a; &#xff08;一&#xff09;、引用静态方法 &#xff08;二&#xff09;、引用成员方法 1、引用其他类的成员方法 2、引用本类的成员方法 3、引用父类的成员方法 &#xff08;三&#xff…