Linux

安裝本地 .deb 後的 Apt-Get 衝突

  • July 13, 2020

前段時間我在我的 debian/squeeze 伺服器上安裝apt-get installnginx 包。我的要求現在已經改變,我需要安裝 nginx --with-http_xslt_module

要使用此選項安裝 nginx,我執行了以下操作:

  • apt-get build-dep nginx
  • apt-get source nginx
  • 修改 debian/rules 以添加所需的選項
  • dpkg-buildpackage -rfakeroot -uc -b
  • dpkg -i nginx_0.7.62-4_amd64.deb

這一切似乎都很好,但是現在當我這樣做時,apt-get dist-upgrade它會嘗試再次安裝 nginx 二進製文件。


請您給點建議……

  1. 以這種方式建構 nginx 是滿足我需求的首選解決方案嗎?
  2. 如果是這樣,我怎麼能告訴 apt 我不想再安裝二進制 nginx 而不做 a remove

我認為您正在尋找的是持有包裹的能力。當一個包被持有時,不會嘗試以任何方式升級或更改它。

像這樣的命令將設置 nginx 保持。

dpkg --get-selections | grep 'nginx' | sed -e 's/install/hold/' | sudo dpkg --set-selections

您可能需要說明您已執行此操作。當需要升級到下一個主要版本時,您可能需要刪除此保留。

我真的不明白你想要什麼——你不想安裝 nginx,但你也不想刪除它?這是沒有意義的。如果你想確保的包的建構保持安裝,並且沒有升級到標準版本,那麼你想使用包固定,如apt_preferences手冊頁中所述。

引用自:https://serverfault.com/questions/83727