首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我能看到一个用于和/或杀死/中断(而不是禁用)无人值守的升级的GUI吗?

我能看到一个用于和/或杀死/中断(而不是禁用)无人值守的升级的GUI吗?
EN

Unix & Linux用户
提问于 2019-08-31 15:32:16
回答 1查看 764关注 0票数 2

关于禁用无人值守的升级,有无数条线索。我知道他们的事。

我的问题是,unattended-upgrade的用户体验还有很多地方有待改进。任务栏中的一个项目(xubuntu的右上角)将是放置“无人值守-升级”的地方。47%已完成。按此处停止这一次的小部件。我猜那根本不存在。

我有一个旧的,低功耗的笔记本电脑,我很少使用,当我启动它,大多数时候,它会减速到爬行多达15分钟后,由于无人值守-升级。

所以偶尔我想阻止它。ps -ef | grep -v grep | grep unattended-upgrade显示的PID似乎忽略了杀死信号,所以这不是正确的方法。杀死aptdpkg听起来也很危险。

那么:有办法安全地阻止已经启动的unattended-upgrade吗?或者是我唯一的选择:

  • 禁用无人值守-升级和完成它。生活在一个不安全的系统,可能永远不会得到更新。
  • 启动15分钟后再试一试:apt-get install new-shiny-tool
EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2019-08-31 20:08:57

是的,你可以。实际上,你可以按照你的意愿行事,但请详细说明:

所以偶尔我想阻止它。ps -ef \ grep -v grep \ grep \grep/grep-升级显示的PID似乎忽略了杀死信号。

因为这部分让我有点担心,因为SIGKILL作为根进程不可能被除PID 1 (init)之外的任何进程忽略,除非有系统调用正在处理,如果在中段语句中终止,这将导致内核代码损坏。这种情况不会将SIGKILL全部阻塞,而是将其转化为异步信号,一旦系统调用被唤醒并完成,该信号就会被传递。

停止

unattended-upgrade而言,您可以配置希望启动它的时间,并且只要停止它,就应该有一个服务:

sudo service unattended-upgrades status

代码语言:javascript
复制
Loaded: loaded (/lib/systemd/system/unattended-upgrades.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2019-08-30 20:48:27 EDT; 18h ago
     Docs: man:unattended-upgrade(8)
 Main PID: 1410 (unattended-upgr)
    Tasks: 2 (limit: 4915)
   Memory: 21.9M
   CGroup: /system.slice/unattended-upgrades.service
           └─1410 /usr/bin/python3 /usr/share/unattended-upgrades/unattended-upgrade-shutdown --wait-for-signal

Aug 30 20:48:27 OPTIMUM systemd[1]: Started Unattended Upgrades Shutdown.

sudo service unattended-upgrades stop sudo service unattended-upgrades status

代码语言:javascript
复制
● unattended-upgrades.service - Unattended Upgrades Shutdown
   Loaded: loaded (/lib/systemd/system/unattended-upgrades.service; enabled; vendor preset: disabled)
   Active: inactive (dead) since Sat 2019-08-31 15:44:18 EDT; 1s ago
     Docs: man:unattended-upgrade(8)
  Process: 1410 ExecStart=/usr/share/unattended-upgrades/unattended-upgrade-shutdown --wait-for-signal (code=exited, status=0/SUCCESS)
 Main PID: 1410 (code=exited, status=0/SUCCESS)

Aug 30 20:48:27 OPTIMUM systemd[1]: Started Unattended Upgrades Shutdown.
Aug 31 15:44:18 OPTIMUM systemd[1]: Stopping Unattended Upgrades Shutdown...
Aug 31 15:44:18 OPTIMUM systemd[1]: unattended-upgrades.service: Succeeded.
Aug 31 15:44:18 OPTIMUM systemd[1]: Stopped Unattended Upgrades Shutdown.

将杀死它,而不必求助于ps和pid查找。

延迟

但是,由于您提到由于unattended-upgrades而导致的启动延迟是另一个问题,您可能还希望阻止该服务在引导时直接运行。在这种情况下,您可以通过为它创建一个计时器来延迟它。为了为unattended-upgrades.service创建一个定时器,在同一个目录中创建一个具有以下配置的unattended-upgrades.timer,其启动延迟5分钟:

代码语言:javascript
复制
[Unit]
Description=Run delayed

[Timer]
OnBootSec=5min

[Install]
WantedBy=timers.target

接下来,禁用服务并启用计时器来控制它。

代码语言:javascript
复制
     sudo systemctl disable unattended-upgrades.service
     sudo systemctl enable unattended-upgrades.timer
     sudo systemctl start unattended-upgrades.timer
     sudo systemctl list-timers

即使你有计时器运行,你仍然可以杀死无人值守-升级.服务,但它会通知你的定时器在后台。

代码语言:javascript
复制
sudo service unattended-upgrades stop
   Warning: Stopping unattended-upgrades.service, but it can still be activated 
   by:   unattended-upgrades.timer

小部件

票数 3
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/538463

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档