是否有可能延迟更新(用户_apt)?

是否有可能延迟更新(用户_apt)?

我有以下问题:

有时,我正在运行一些需要大量 CPU 能力的程序wine

_apt不幸的是,当我运行该程序时,Linux 更新(在用户下运行的进程)会相当频繁地启动。

Linux 更新(在用户下运行的进程_apt)也需要大量的 CPU 能力(top显示 99.9%),并且由于 CPU 能力不足,该程序不再正常工作(图像变得不稳定等...)。

问题:有没有一种方法可以在程序运行时禁止 Linux 更新,以便更新被延迟,直到我完成运行该程序?

我正在考虑这样的事情:

#!/bin/sh
forbid_or_allow_updates forbid
wine ~/programs/my_program.exe
forbid_or_allow_updates allow

...但我不知道是否forbid_or_allow_updates存在类似的东西。

答案1

是的(但不完全像你所建议的那样)。

Show Applications(位于 Dock 底部的 9 个点图标或按下左键)Windows,选择从下拉菜单中Software and Updates选择,只要您正在执行密集的 CPU 活动,当您准备好再次接收更新时,请根据需要重新选择您的选择。NeverAutomatically check for updates

在此处输入图片描述

答案2

如果无人值守升级和您的应用程序正在争夺 CPU,请更改其中一个的优先级,以便您的首选应用程序始终获得足够的 CPU 以防止卡顿和抖动。这不是 A vs B 决策——如果系统知道您的优先级,它会很乐意平衡资源。有一个工具可以做到这一点:请参阅man niceman renice

  • 这可能很简单,只需以更高的优先级启动您的应用程序,以便其他应用程序等待空闲周期即可。例如:

nice -n -10 my_application (负数 = 较不友好 = 优先级较高)

  • 您可以将 niceness 应用于 systemd 服务(例如无人值守升级)。只需nice在 ExecStart 行中添加一个值即可。有两个服务可以变得更好:apt-daily.serviceapt-daily-upgrade.service。不要编辑 /lib/system 中的原始文件,该文件将在下一次升级时被覆盖。相反,请使用 systemd 覆盖 .conf 文件。请参阅以下说明https://superuser.com/questions/1447351/set-niceness-value-in-a-systemd-user-service

  • 如果您真的想发挥强大的火力并完全禁止无人值守升级,请使用 systemd 来停止/启动其计时器。请记住,重新启动这些计时器取决于您。

systemctl stop(start) apt-daily.timer(防止自动 apt 更新)
systemctl stop(start) apt-daily-upgrade.timer(防止自动 apt 升级)

相关内容