web-dev-qa-db-ja.com

Ubuntu 1604および1804で対話型ダイアログを無効にする方法

私はこれを見つけました question そして、基本的に私のスクリプトに同じ問題がありました。

しかし!私はpackerではなく単純なスクリプトで実行しています:

DEBIAN_FRONTEND=noninteractive Sudo apt-get update
DEBIAN_FRONTEND=noninteractive Sudo dpkg --configure -aq
DEBIAN_FRONTEND=noninteractive Sudo apt-get upgrade -yq --force-yes
DEBIAN_FRONTEND=noninteractive Sudo apt-get dist-upgrade -yq --force-yes

...と他のこと。

このスクリプトは1404で機能しましたが、1604 Xenialと1804 Bionicでは、ダイアログプロンプトがスクリプトで開きたいと思っており、自分では続行できないという問題が発生しています。これは、ワークステーションでキーボード入力で応答できないためです。

この解決策 は私の意見ではGRUBにはリスクが高すぎるようですが、数百台のサーバーを手動で更新できないため自動化する必要があります。

これは、すべての「新しい」1604および1804マシンの問題だと思います。

誰かがこれの解決策を知っていますか?

更新:私は this 回答ソリューションを受け入れましたが、次のエラーが表示されました:

E: Invalid operation Dpkg::Options::=--force-confdef
3
min hundje

DEBIAN_FRONTEND=noninteractiveSudo環境内に設定する必要があります-その前ではありません:

例.

$ Sudo DEBIAN_FRONTEND=noninteractive sh -c 'echo $DEBIAN_FRONTEND'
noninteractive

一方、

$ DEBIAN_FRONTEND=noninteractive Sudo sh -c 'echo $DEBIAN_FRONTEND'
(empty)
3
steeldriver