我怎样才能在 Debian 中可靠地“保存”一个包?

我怎样才能在 Debian 中可靠地“保存”一个包?

我在 Debian 中有一个已手动修补的软件包(我知道这并不理想),我必须保留其当前版本,以便升级不会覆盖已修补的更改(我将手动检查并应用安全更新)。据我了解,有几种方法可以解决这个问题:

  • apt-pinning(参见apt_preferences(5)
  • aptitude hold
  • dpkg --set-selections
  • 设置为dselect?

我读过,一个保留不会影响另一个(因此,例如,使用aptitude hold不会阻止apt-getdselect升级包)。需要做什么才能 100% 确保 Debian 的工具永远不会升级软件包,除非我取消保留?

答案1

aptitudedpkg有单独的抓住不幸的是,这些功能不会互相尊重。因此,如果您使用这两种工具,则必须同时设置两者:

apt/dpkg: echo $PACKETNAME hold | dpkg --set-selections

资质: aptitude hold $PACKETNAME

答案2

在这种特殊情况(修补程序包)中,更好的方法可能是将修补版本安装在/usr/local. Debian 不会碰这个。

答案3

据我所知,aptitude hold <package>除非您明确命令升级(例如当光标位于 aptitude 中的“可升级包”字段上时点击 +),否则其他人会很荣幸。

相关内容