因此,为了防止在安装 dpkg 后出现控制台 UI(newt、snack、dialog)提示,您必须执行以下操作:
debconf-set-selections <<< 'mysql-server mysql-server/root_password password password'
debconf-set-selections <<< 'mysql-server mysql-server/root_password_again password verify_password'
apt-get -y install mysql-server
Run Code Online (Sandbox Code Playgroud)
谢谢。
笔记
看起来设置这个变量是采用默认值的解决方案:
DEBIAN_FRONTEND=noninteractive
Run Code Online (Sandbox Code Playgroud) 默认的 nginx 包会创建一个default在sites-enableddir 中命名的符号链接,它指向sites-available. 我目前正在为位于 Nginx 之上的应用程序创建一个包,我想删除或移开default符号链接,并将其替换为我的包中的配置文件。理想情况下,如果我的包被删除,原始default符号链接将被恢复。
我一直在阅读 的联机帮助页和示例dpkg-divert,但我不太明白它可以做到这一点。这是可以实现的dpkg-divert,还是我必须想出另一种方式?
运行 Ubuntu 12.04 lts 的服务器
前几天我在服务器上安装了 munin。我后来决定用 apt-get 删除它。
我注意到并非所有内容都从安装中删除,因此手动删除了 munin web 目录,并从服务器中删除了 munin 用户名和组。
但是,我刚刚尝试运行 apt-get upgrade 现在返回错误:
dpkg:不可恢复的致命错误,中止:语法错误:statoverride 文件中的未知用户“munin” E:子进程 /usr/bin/dpkg 返回错误代码 (2)
我现在已经超出了我的深度。这是什么意思?谷歌结果并没有真正有帮助。
任何人都可以帮忙吗?
谢谢,约翰
如何在使用救援模式时从挂载到 /mnt/ 的 debian 设置中获取已安装软件包的列表?
场景:服务器崩溃,只能使用救援模式。设置新服务器,使用 rsync 将数据从旧服务器迁移到新服务器。
但是如何在旧服务器上安装的新服务器上安装所有软件包(是的,仅限救援模式)?
谢谢!
不小心删除了/var/lib/dpkg/info/,现在我在安装/删除包时遇到问题,它提示错误,导致找不到有关已安装包的信息。
有什么办法可以保存系统或者需要完全重装debian?:/
我们使用 Puppet 来管理我们的 Linux 台式机,并使用 SSSD 来根据中央身份验证系统对我们的用户进行身份验证。最近在安装几台新机器的时候发现puppet在安装软件包的时候就卡住了。罪魁祸首是 kdm 包,它试图在最近将“kdm”用户名添加到中央机构时添加本地“kdm”用户。
通常我看到这个问题是用命名空间划分机制(例如 Windows 域)处理的,但是我在 Linux 管理方面的时间很短,并没有真正帮助我找到一个好的方法来做到这一点。
我可以想出一些关于如何解决这个问题的一般想法(从最优雅到最不优雅):
当然,(2) 和 (3) 并不能解决根本问题,但是如果 (1) 中的解决方案对我们当前的设置特别有害,那么 (2) 或 (3) 之类的方法可能更可取.
安装软件包后apt-get然后覆盖一些软件包特定的配置文件后,每当系统自行升级时,它都会尝试用软件包的默认配置覆盖我的自定义配置。
有没有更好的方法来特定的自定义配置,而不会在包更新时询问我是否要重置为默认配置?
运行后
apt-get update
apt-get upgrade
apt-get dist-upgrade
apt-get install -f
dpkg --configure -a
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
dpkg --configure -a
Setting up initramfs-tools (0.112) ...
update-initramfs: deferring update (trigger activated)
Setting up linux-image-3.8-2-amd64 (3.8.13-1) ...
Running depmod.
vmlinuz(/boot/vmlinuz-3.8-2-amd64
) points to /boot/vmlinuz-3.8-2-amd64
(/boot/vmlinuz-3.8-2-amd64) -- doing nothing at /var/lib/dpkg/info/linux-image-3.8-2-amd64.postinst line 268.
The link /initrd.img is a dangling linkto /boot/initrd.img-3.8-2-amd64
Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 3.8-2-amd64 /boot/vmlinuz-3.8-2-amd64
update-initramfs: Generating /boot/initrd.img-3.8-2-amd64
gzip: stdout: No space left on device
E: mkinitramfs failure cpio 141 gzip 1
update-initramfs: …Run Code Online (Sandbox Code Playgroud) 我想转储使用dpkg.
到现在为止我都使用dpkg -l.
但它有一个缺点:对结果进行排序没有意义。
头:
root@aptguettler:~# LANG=C dpkg-query -l| sort | head
+++-===========================================================-=================================================-============-================================================================================
Desired=Unknown/Install/Remove/Purge/Hold
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
ii a11y-profile-manager-indicator 0.1.10-0ubuntu3 amd64 Accessibility Profile Manager - Unity desktop indicator
Run Code Online (Sandbox Code Playgroud)
尾巴:
root@aptguettler:~# LANG=C dpkg-query -l| sort | tail
rc texlive-publishers-doc 2015.20160320-1 all TeX Live: Documentation files for texlive-publishers
rc texlive-science 2015.20160320-1 all TeX Live: Natural and computer sciences
rc texlive-science-doc 2015.20160320-1 all TeX Live: Documentation files for texlive-science
rc tpconfig 3.1.3-15 amd64 touchpad device configuration utility
rc …Run Code Online (Sandbox Code Playgroud)