最初にコマンドを実行する自動ビルドbashスクリプトがあります。
apt-get update;
apt-get upgrade -q -y -u
--allow-downgrades --allow-remove-essential --allow-change-held-packages
--allow-change-held-packages --allow-unauthenticated;
ところがターミナルにずっとこういう質問が浮かびます。
設定ファイル/etc/default/grub(/tmp/grub.xC3mMKP0zx)の新しいバージョンが利用可能ですが、現在インストールされているバージョンはローカルで修正されました。
これが自動スクリプトの実行が中断される理由です。 --allow*または-yオプションを使用して強制的にスキップすることはできません。
私たちのUbuntuは16.04
ポップアップを防ぐにはどうすればよいですか?
助けてくれてありがとう
- 更新 -
私は多くの解決策を試しました これ: apt-get installを使用するときに非対話型「dpkg --configure」を強制するこの質問の重複と呼ばれています
apt-get -o DPkg::Options::=--force-confdef upgrade -q -y -u --force-yes
それでも、デフォルトのオプションを選択するようにプロンプトが表示されます。
答え1
私が見つけたDEBIAN_FRONTEND =非対話型オプションは次のとおりです。https://superuser.com/questions/164553/automatically-answer-yes-when-using-apt-get-install
DEBIAN_FRONTEND=noninteractive と Dpkg::Options::="--force-confdef" の組み合わせのみがこれを防止できます。オプションポップアップ開いている
だから最後のコマンドは
apt-get update;
DEBIAN_FRONTEND=noninteractive apt-get upgrade -q -y -u -o
Dpkg::Options::="--force-confdef" --allow-downgrades
--allow-remove-essential --allow-change-held-packages
--allow-change-held-packages --allow-unauthenticated;