Debian Buster中添加systemd-coredump作为包依赖的安装问题
Debian Buster自定义包依赖systemd-coredump失败的解决方法
问题背景
在Debian Buster环境下构建自定义包rmd-baseconfig,尝试将systemd-coredump添加为依赖以实现安装时自动部署,但编译成功后安装出现依赖错误,手动安装systemd-coredump也提示依赖不满足。
现有配置
control文件内容
Source: rmd-baseconfig Section: admin Priority: optional Maintainer: NAME <MAIL> Build-Depends: debhelper (>= 11), Standards-Version: 4.5.1 Homepage: http://www.google.com Package: rmd-baseconfig Architecture: all Depends: ${misc:Depends}, systemd-coredump Description: Base configuration for RMD device
debian/rules内容
#!/usr/bin/make -f # See debhelper(7) (uncomment to enable) # output every command that modifies files on the build system. #export DH_VERBOSE = 1 %: dh $@ override_dh_systemd_enable: dh_systemd_enable --name=coredump
报错信息
安装自定义包时的dpkg错误
Preparing to unpack ../rmd-baseconfig_1.0_all.deb ... Unpacking rmd-baseconfig (1.0) over (1.0) ... dpkg: dependency problems prevent configuration of rmd-baseconfig: rmd-baseconfig depends on systemd-coredump; however: Package systemd-coredump is not installed. dpkg: error processing package rmd-baseconfig (--install): dependency problems - leaving unconfigured Errors were encountered while processing: rmd-baseconfig
手动安装systemd-coredump的错误
The following packages have unmet dependencies: systemd-coredump : Depends: libdw1 (>= 0.158) but it is not going to be installed Depends: systemd (= 241-7~deb10u8) but it is not going to be installed E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
解决步骤
修复系统依赖链
先处理systemd-coredump本身的依赖缺失问题,执行:apt --fix-broken install该命令会自动识别并安装缺失的
libdw1和对应版本的systemd包,修复系统的依赖状态。用APT安装自定义包
避免直接使用dpkg -i安装,改用APT工具处理,它会自动解析并安装所有依赖项:apt install ./rmd-baseconfig_1.0_all.deb执行后APT会自动下载并安装
systemd-coredump及其依赖,完成自定义包的配置。检查源配置(若上述步骤无效)
如果apt --fix-broken install无法获取所需包,检查Debian Buster的源配置是否完整。编辑/etc/apt/sources.list,确保包含以下仓库:deb http://deb.debian.org/debian buster main deb http://deb.debian.org/debian buster-updates main deb http://security.debian.org/debian-security buster/updates main保存后执行
apt update刷新源缓存,再重新尝试安装。关于systemd启用规则的说明
你在debian/rules中添加的override_dh_systemd_enable配置本身没有问题,它用于启用coredump服务,但systemd-coredump默认通常已启用,无需额外调整。
内容的提问来源于stack exchange,提问作者ms_stud
相关产品推荐
相关产品推荐

