如何使`apt-get upgrade`使用更少的资源?
当我在我的低端笔记本电脑上运行带有很多软件包的sudo apt-get upgrade
时,我得到一个可察觉的系统减速,有时会有最多3秒的屏幕冻结。
有没有办法将此作业标记为非常低优先级,即使用非常少的CPU,MEM和HDD? 我真的不在乎它是否会让apt-get upgrade
两个小时才能完成,我只想继续工作而不会在升级过程中出现中断。
命令nice
可用于操作进程CPU调度优先级 。 该命令为进程分配从-20(最重要)到+19(最不重要)的“niceness”值。 Root可以分配任何值,其他用户只能分配正值(次要重要性)。 默认值为0。
nice -n
要将apt-get命令的优先级设置为最小值,可以使用该命令
sudo nice -n 19 apt-get upgrade
要设置已在运行的进程的优先级,可以使用命令renice
:
renice -n -p
编辑:感谢@David提到的ionice
命令,它允许您操作磁盘I / O优先级 。 它可以将一个过程分为三个不同的类:
- 如果此时没有其他进程声明,则Idle仅给出进程磁盘时间。
- 尽力而为 (默认课程)。 这允许您分配从0到7的优先级,其中0是最重要的,7是最不重要的。 您可以尝试将
-n 7
指定为优先级。 - 实时进程在其他所有进程之前处理,暂停其他进程的磁盘I / O,只要它们自己需要它。 小心使用!
IOnice结合了nice和renice的语法:
ionice [-c class] [-n level] command #To start a new process ionice [-c class] [-n level] -p pid #To change a running process
两个命令可以组合,例如
sudo ionice -n 7 nice -n 19 apt-get upgrade #Omitting the -c switch will assign Best-effort sudo nice -n 19 ionice -n 7 apt-get upgrade nice -n 19 ionice -n 7 sudo apt-get upgrade ...
- 如何解决“dpkg:error handling存档/var/cache/apt/archives/libvlccore9_4.0.0~rc1~~git20171225+r73378+113~ubuntu16.04.1_amd64.deb(unpack)”
- 为什么我收到错误101? 我的DNS如何参与?
- 如何卸载BOOST 1.49并在ubuntu中安装BOOST 1.54?
- 无法获取锁定/ var / cache / apt / archives / lock – 打开
- 由于依赖性问题,apt-get升级失败
- 尝试安装build-essential时“没有安装候选者”
- 更新列表时“MergeList /var/lib/apt/lists/repository.spotify.com的问题”
- apt-get autoremove删除所有内容
- linux-image-3.11.0-15-generic的URI