如何从Apt-Get升级中排除升级某些软件包
时间:2019-05-19 01:26:02 来源:igfitidea点击:
有时,我们偶然升级包,而不是更新。
在完全更新或自动包升级过程中也会发生这种情况。
这在服务器上造成了严重的问题。
例如,在通过apt更新系统时,需要排除内核、PHP、MySQL和Apache包的更新。
保留或排除包
使用以下命令从更新中排除或保留特定的Debian包。
这将从自动升级或手动升级中关闭指定包的更新。
使用apt
sudo apt-mark hold package_name
使用dpkg
echo "package_name hold" | sudo dpkg --set-selections
使用aptitude
sudo aptitude hold package_name
列出状态为hold的包
你可以在任何时候检查那些被搁置的包。
使用以下命令查看已经设置为“hold”的所有包。
sudo dpkg --get-selections | grep "hold"
在安装中unhold或者包括软件包
以后,如果需要升级任何包,执行unhold。
我们需要在升级之前解除所有包。
使用以下命令之一来取消保存任何包。
使用apt
sudo apt-mark unhold package_name
使用dpkg
echo "package_name install" | sudo dpkg --set-selections
使用aptitude
sudo aptitude unhold package_name