libpq-devのインストール時にサービスの再起動を求めるプロンプトを防ぐ方法


29

libpq-devVagrantマシンにインストールしたい。私はそれをインストールします

$ apt-get install -y libpq-dev

インストール中に、一部のサービスの自動再起動を許可するかどうかを尋ねるプロンプトが表示されます。このプロンプトは、Vagrantの条項を破ります。このプロンプトを無効にするにはどうすればよいですか?

プロンプト

テキスト:

libpam、libc、libsslなどの特定のライブラリがアップグレードされたときに再起動する必要のあるサービスがシステムにインストールされています。これらの再起動はシステムのサービスの中断を引き起こす可能性があるため、通常、再起動するサービスのリストのアップグレードごとにプロンプ​​トが表示されます。このオプションを選択して、プロンプトが出されないようにすることができます。代わりに、必要なすべての再起動が自動的に行われるため、ライブラリのアップグレードごとに質問されることはありません。

****編集****

パトリックの答えこの質問おかげで修正しました。現在、私のVagrantfileには以下が含まれています。

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

使用することを提案して-yいましたが、それほど変わらないようです。参照man apt-get | less +/--force-yes
バレンティンバジラミ14

私もそのオプションを試してみましたが、それもうまくいきませんでした。
OrangeTux 14

回答:


28

環境変数を設定しますDEBIAN_FRONTEND=noninteractive

例えば:

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

これによりapt-get、デフォルトのオプションが選択されます。


2
この場合は機能しません。
ナイジェルホーン

2
「このケース」が何であるかを指定してください。質問の作成者は、この回答を正しいものとして選択しました。答えがうまくいかない場合は、新しい質問をして、あなたのケースがどのように異なっているか、そしてこれがあなたにとってうまくいかないことを明確にすることをお勧めします。
パトリック

1
私にとってもうまくいきませんでした。
フェリペ

サービスを再起動する、またはサービスを再起動しないデフォルトのオプションはありますか?
ニコリ

私にとってもうまくいきませんでした- export DEBIAN_FRONTEND=noninteractive; sudo apt-get update; sudo apt-get install -y libssl-dev openssl。ubuntu 18
RSHAP

9

を使用してこれを達成できるはずdebconf-set-selectionsです。manページから:

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も同様)で、libpq-devをapt-get installしてもプロンプトが表示されず、このエントリがあります:

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を参照してください。


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
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.