简而言之,我希望能够设置包,abc以便:
apt-get remove abc 应该失败。apt-get purge abc 应该失败。apt-get upgrade abc 应该管用。如果包依赖项发生变化,因此abc应该在dist-upgrade我很高兴被迫做某事然后dist-upgrade再次卸载。
并不是真的什么都可以“固定”软件包以防止删除,而是允许升级。
你可以把一个钉子钉在一个包里,不能被删除、清除、升级、舔,任何东西......
但这比大多数事情要复杂一点。
例如,我们希望将 firefox 固定下来:(当然,您将使用包的正确全名)
echo firefox hold | dpkg --set-selections
Run Code Online (Sandbox Code Playgroud)
这将使' firefox '不朽。 但是,在这种状态下也无法升级。
删除保持状态更容易一些,但它是一种彻底的手势:
dpkg --clear-selections
Run Code Online (Sandbox Code Playgroud)
从 EVERYTHING 中删除 HOLD 状态!所以如果你想保留几个包裹,你最好保留一个清单,以便以后重新申请
使用aptitude或synaptics执行实际上非常愉快和容易,因为它们有菜单选项来保存/打开包裹,为您处理幕后的所有簿记。我建议使用其中一个(或您可能遇到的无数其他包管理器中的任何一个)
使用 Aptitude,也可以使用命令行:
aptitude hold <package>
aptitude unhold <package>
Run Code Online (Sandbox Code Playgroud)
但请记住,如果想要升级,您需要“取消持有”某些东西。虽然如果你使用 Aptitude 的 GUI 端,它应该告诉你所持有的东西是否可以升级
| 归档时间: |
|
| 查看次数: |
4007 次 |
| 最近记录: |