安装libpq-dev时如何防止提示要求重启服务的提示


29

我想libpq-dev在我的Vagrant机器上安装。我用安装

$ apt-get install -y libpq-dev

在安装过程中,出现提示,询问是否允许自动重新启动某些服务。此提示违反了我的Vagrant规定。如何禁用此提示?

提示

文本:

系统上安装的服务需要在升级某些库(例如libpam,libc和libssl)时重新启动。由于这些重新启动可能会导致系统服务中断,因此通常会在每次升级时提示您提供要重新启动的服务列表。您可以选择此选项以避免提示。相反,所有必要的重新启动都会自动为您完成,因此您可以避免在每次磁带库升级时都被问到问题。

****编辑****

多亏了Patrick的回答这个问题我得以解决。现在我的Vagrantfile包含:

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

我建议使用,-y但似乎并没有太大变化。看到man apt-get | less +/--force-yes
Valentin Bajrami 2014年

我也尝试过该选项,但是也没有用。
OrangeTux

Answers:


28

设置环境变量DEBIAN_FRONTEND=noninteractive

例如:

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

这将使apt-get选择默认选项。


2
在这种情况下不起作用。
奈杰尔·霍恩

2
请指定“这种情况”是什么。问题的作者选择了该答案为正确答案。如果答案对您不起作用,建议您提出一个新问题,并确保弄清您的情况有何不同,并且对您不起作用。
帕特里克

1
这对我也不起作用。
费利佩

是重新启动服务还是不重新启动服务的默认选项?
Nicholi

也不适合我- export DEBIAN_FRONTEND=noninteractive; sudo apt-get update; sudo apt-get install -y libssl-dev openssl。ubuntu 18
RSHAP

9

您应该可以使用来实现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升级为“ none”时重新启动的服务列表。

在Debian下,应该在questions.dat文件下有更多关于此行有效值的信息/var/lib/cdebconf。有关更多详细信息,请参见https://www.debian.org/releases/stable/i386/apbs03.html.en


4

我认为现有的答案可能有些陈旧。以下内容最近为我工作。

查看软件包的设置

sudo debconf-show <package-name>

例如:

$ sudo debconf-show libssl1.1 
  libssl1.1/restart-services:
  libssl1.1/restart-failed:
* libraries/restart-without-asking: false

更改设置

echo '<package-and-setting-string>' | sudo debconf-set-selections

例如

echo 'libssl1.1 libraries/restart-without-asking boolean true' | sudo debconf-set-selections

提示,要为所有软件包设置此设置,请使用“ *”代替软件包名称。

例如

echo '* libraries/restart-without-asking boolean true' | sudo debconf-set-selections

接受的答案对我不起作用,但对我debconf-set-selections有用。
bradj
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.