安裝libpq-dev時如何防止提示要求重新啟動服務
我想安裝
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 。