Apt
使用 apt-get install 時強制非互動式“dpkg –configure”
我正在遠端伺服器上安裝軟體包,使用
ssh
:ssh root@my-host "DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true apt-get --quiet --yes install w3m"
即使我已經設置
DEBIAN_FRONTEND=noninteractive
,安裝卡在以下問題上,我必須手動按 enter:Configuration file '/etc/w3m/config' ==> File on system created by you or by a script. ==> File also in package provided by package maintainer. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** config (Y/I/N/O/D/Z) [default=N] ?
我懷疑,這個問題是由
dpkg --configure -a
而不是由提出的apt-get
,因此非互動式被忽略了。如何自動執行此操作並自動選擇預設選項而不被詢問?
這種配置文件更改衝突由 處理
dpkg
,您可以使用該選項強制它選擇預設--force-confdef
選項。請注意文件中的警告:警告:這些選項主要僅供專家使用。在不完全了解其影響的情況下使用它們可能會破壞您的整個系統。
要在 APT 呼叫時提供此選項
dpkg
,您需要將其添加到 APT 設置中,例如通過將以下行添加到/etc/apt/apt.conf
:DPkg::options { "--force-confdef"; };
或者,對於單次呼叫:
apt-get -o DPkg::Options::=--force-confdef ...
DEBIAN_FRONTEND=noninteractive
只影響debconf
,並且在這種情況下根本不涉及。