libpq-devのインストール時にサービスを再起動するように求められないようにする方法

libpq-devのインストール時にサービスを再起動するように求められないようにする方法

libpq-devVagrantマシンにインストールしたいです。私がインストールした

$ apt-get install -y libpq-dev

インストールプロセス中に特定のサービスを自動的に再起動できるかどうかを尋ねるメッセージが表示されます。このヒントは私のVagrant用語に違反しています。このメッセージをどのようにオフにできますか?

早く

テキスト:

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

****編集する****

ありがとうパトリックの答えそしてこれ問題を解決しました。今私のVagrantfileには以下が含まれます。

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

答え1

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

たとえば、

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

これでapt-getデフォルトオプションが選択されます。

答え2

を使用してこれを達成できるはずです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」にアップグレードしたときに再起動するサービスのリストを設定します。

questions.datDebianでは、以下のファイルにこの行の有効な値に関する詳細情報が必要です/var/lib/cdebconf。バラよりhttps://www.debian.org/releases/stable/i386/apbs03.html.en詳細については。

答え3

既存の回答が少し古いかもしれないと思います。最近、次は私にとって効果的でした。

パッケージ設定の表示

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

答え4

パッケージを削除してDebian 11でこの機能を無効にすることができますneedrestart

apt remove needrestart

関連情報