Debian

安裝libpq-dev時如何防止提示要求重新啟動服務

  • April 7, 2022

我想安裝libpq-dev在我的 Vagrant 機器上。我安裝它

$ apt-get install -y libpq-dev

在安裝過程中會出現一個提示,詢問是否允許自動重新啟動某些服務。這個提示打破了我的流浪者規定。如何禁用此提示?

迅速的

文本:

當某些庫(例如 libpam、libc 和 libssl)升級時,系統上安裝了一些服務需要重新啟動。由於這些重新啟動可能會導致系統服務中斷,因此通常會在每次升級時提示您要重新啟動的服務列表。您可以選擇此選項以避免被提示;相反,所有必要的重新啟動都會自動為您完成,這樣您就可以避免在每次庫升級時被問到問題。

****編輯 ****

感謝帕特里克的回答這個問題,我解決了這個問題。現在我的 Vagrantfile 包含:

sudo DEBIAN_FRONTEND=noninteractive apt-get install -y libpq-dev

設置環境變數DEBIAN_FRONTEND=noninteractive

例如:

export DEBIAN_FRONTEND=noninteractive
apt-get install -y libpq-dev

這將apt-get選擇預設選項。

您應該能夠使用debconf-set-selections. 從手冊頁:

debconf-set-selections can be used to pre-seed the debconf database
with answers, or to change answers in the database. Each question will
be marked as seen to prevent debconf from asking the question
interactively.

為了確定所需的輸入debconf-set-selections是否未知,您可以手動回答提示,然後檢查 debconf 數據庫以找到正確的值。為此,請安裝debconf-utils

sudo apt-get -y install debconf-utils

它提供了debconf-get-selections命令。然後:

sudo debconf-get-selections | grep libssl1.0.0:amd64

檢查數據庫中的值。在我的系統(Ubuntu,但 Debian 應該是類似的)上,當我 apt-get install libpq-dev 時沒有提示我,並且我有這個條目:

libssl1.0.0:amd64   libssl1.0.0/restart-services     string

所以你應該能夠使用:

echo 'libssl1.0.0:amd64 libssl1.0.0/restart-services string' | sudo debconf-set-selections

將 libssl 升級為“無”時設置要重新啟動的服務列表。

在 Debian 下,應該有更多關於該行有效值的資訊questions.dat/var/lib/cdebconf. 有關詳細資訊,請參閱https://www.debian.org/releases/stable/i386/apbs03.html.en 。

引用自:https://unix.stackexchange.com/questions/146283