Ubuntu 22.04中initramfs-tools 0.140ubuntu13.4版本从官方仓库消失后的处理方案咨询
看起来你遇到了Ubuntu软件仓库里临时版本被撤回的常见问题,别担心,咱们结合你给出的系统信息来一步步分析处理:
首先,从你提供的apt-cache policy initramfs-tools输出能明确看到:
initramfs-tools:
Installed: 0.140ubuntu13.4
Candidate: 0.140ubuntu13.4
Version table:
*** 0.140ubuntu13.4 100
100 /var/lib/dpkg/status
0.140ubuntu13.2 500
500 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 Packages
0.140ubuntu13 500
500 http://archive.ubuntu.com/ubuntu jammy/main amd64 Packages
这个版本只存在于本地的dpkg状态库中,官方仓库已经没有这个包了——大概率是Ubuntu推送这个版本后发现了bug,紧急撤回了。针对这种情况,我给你两个可行的处理方向:
方案一:降级到官方仓库提供的稳定版本(推荐)
既然官方已经撤回了0.140ubuntu13.4,说明这个版本可能存在潜在问题,优先降级到仓库中可用的最新稳定版0.140ubuntu13.2是更稳妥的选择,步骤如下:
- 先备份当前的initramfs文件,防止降级过程中出现启动问题:
sudo cp /boot/initrd.img-$(uname -r) /boot/initrd.img-$(uname -r).backup - 同时降级
initramfs-tools和它的依赖包initramfs-tools-core(两者版本必须匹配,否则会引发依赖错误):sudo apt install initramfs-tools=0.140ubuntu13.2 initramfs-tools-core=0.140ubuntu13.2 - 重新生成适配新版本的initramfs:
sudo update-initramfs -u - 重启系统,确认启动流程、硬件识别等功能都正常即可。
方案二:暂时忽略(仅当系统无异常时)
如果你的系统目前运行完全正常,没有出现启动故障、硬件驱动异常等问题,也可以暂时忽略这个状态。但要注意两个点:
- 后续执行
apt upgrade时,APT可能会因为候选版本与仓库版本不一致而给出提示 - 长期保留非仓库版本可能会在后续安装其他依赖包时引发冲突,所以还是更推荐方案一
另外,你可以查看系统的APT历史日志,确认这个版本的安装来源:
cat /var/log/apt/history.log | grep initramfs-tools
这能帮你确认它是通过官方临时更新推送的,还是误操作手动安装的。
备注:内容来源于stack exchange,提问作者Uli Heller

