发新话题
打印

ubuntu apt install 不提示覆盖已有文件的办法

ubuntu apt install 不提示覆盖已有文件的办法

export DEBIAN_FRONTEND=noninteractive
(不能 export DEBIAN_FRONTEND= ,应该是 unset DEBIAN_FRONTEND)

执行命令时直接用 "-o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold'" 选项
apt-get -o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' --ignore-missing  -y install snmpd


脚本中使用选项变量:
# for /bin/bash
apt_option=( -o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confold -y )
apt-get "${apt_option[@]}" install snmpd

# for /bin/sh
set -x
apt_option="-o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' --ignore-missing -y "
eval "sudo apt-get ${apt_option} install snmpd"
注意:不能在/bin/sh 脚本中直接引用${apt_option}变量,否则会当成一个参数,而不是多个参数,只能通过eval 执行,可以 通过 set -x 查看 解析过程

Configuration file '/etc/snmp/snmpd.conf'
==> File on system created by you or by a script.
==> File also in package provided by package maintainer.
==> Keeping old config file as default.

重置环境:
# apt -y purge snmpd
# touch /etc/snmp/snmpd.conf


apt安装历史:
cat /var/log/apt/history.log
cat /var/log/dpkg.log
cat /var/log/apt/term.log

yum、apt-get、zypper安装程序
https://www.trustcomputing.com.cn/bbs/viewthread.php?tid=1106

[ 本帖最后由 linda 于 2025-5-15 12:18 编辑 ]

TOP

发新话题