从 `apt-get upgrade` 中排除软件包。

有没有办法升级除了指定的软件包之外的所有软件包?是否有类似于“apt-get upgrade --exclude package_to_exclude”的命令?

1实际上,你可以用几种方法来做这个,查看我上面给你的链接。 - Panther
2个回答

如何保留一个软件包
简而言之:sudo apt-mark hold <package> 或者
echo <package> hold | sudo dpkg --set-selections

取消保持软件包:

简而言之:sudo apt-mark unhold <package>

或者

echo <package> install | sudo dpkg --set-selections

1我遇到了以下错误:`使用方法:apt-mark [选项] {markauto|unmarkauto} packages...apt-mark: 错误:第一个参数必须是'markauto'、'unmarkauto'或'showauto'`。 - Olivier Lalonde
奇怪。对我来说是有效的。刚刚尝试使用 sudo apt-mark hold unity-greeter - Zoke
我认为这个错误与Ubuntu版本有关。在12.04之前的版本不支持apt-mark hold。 - user733211
1一旦包裹需要再次更新,使用unhold参数。 - Markus Junginger
9另外,sudo apt-mark showhold 命令将显示它现在已被暂停。请注意:这不是 showhole,而是 Netflix 的错误状态。 - flickerfly
有两件事值得注意:1. 你可以指定多个软件包:apt-mark package1 package2 ... 2. 如果有人仍在使用,保留的软件包也适用于apt-get upgrade ;) - Konrad Gałęzowski