<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>系统维护 on Breaking Dawn</title><link>https://breaking-dawn.cn/tags/%E7%B3%BB%E7%BB%9F%E7%BB%B4%E6%8A%A4/</link><description>Recent content in 系统维护 on Breaking Dawn</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><lastBuildDate>Tue, 21 Jul 2026 10:15:00 +0800</lastBuildDate><atom:link href="https://breaking-dawn.cn/tags/%E7%B3%BB%E7%BB%9F%E7%BB%B4%E6%8A%A4/index.xml" rel="self" type="application/rss+xml"/><item><title>Ubuntu 忘记密码后的恢复：优先重设用户密码，不启用 root</title><link>https://breaking-dawn.cn/p/ubuntu-password-recovery/</link><pubDate>Tue, 21 Jul 2026 10:15:00 +0800</pubDate><guid>https://breaking-dawn.cn/p/ubuntu-password-recovery/</guid><description>
 &lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;仅限授权设备&lt;/strong&gt;：以下步骤适用于自己拥有或明确获授权维护的电脑。能够接触设备和 GRUB 菜单的人可能获得本地管理员权限；请同时保护好物理设备和磁盘加密密钥。&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;Ubuntu 默认把 root 账户锁定，日常管理通过普通用户加 &lt;code&gt;sudo&lt;/code&gt; 完成。忘记登录密码时，通常只需要重设&lt;strong&gt;自己的用户密码&lt;/strong&gt;，没有必要长期启用 root。&lt;/p&gt;
&lt;h2 id="通过恢复模式重设密码"&gt;通过恢复模式重设密码
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;开机时进入 GRUB；如菜单被隐藏，可在开机阶段按住 &lt;code&gt;Shift&lt;/code&gt;（传统 BIOS）或反复按 &lt;code&gt;Esc&lt;/code&gt;（常见 UEFI）尝试显示菜单。&lt;/li&gt;
&lt;li&gt;选择 &lt;strong&gt;Advanced options for Ubuntu&lt;/strong&gt;，再选择带有 &lt;code&gt;(recovery mode)&lt;/code&gt; 的内核。&lt;/li&gt;
&lt;li&gt;在恢复菜单中选择 &lt;strong&gt;root – Drop to root shell prompt&lt;/strong&gt;。&lt;/li&gt;
&lt;li&gt;将根文件系统重新挂载为可写，然后为目标用户设置新密码：&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mount -o remount,rw /
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;passwd 用户名
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sync
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;reboot
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;把 &lt;code&gt;用户名&lt;/code&gt; 替换为实际 Linux 用户名；它通常不是 Windows 账户邮箱。若不确定，可在恢复 shell 中查看 &lt;code&gt;/home&lt;/code&gt; 下的目录名。&lt;/p&gt;
&lt;h2 id="bitlocker-与磁盘加密提醒"&gt;BitLocker 与磁盘加密提醒
&lt;/h2&gt;&lt;p&gt;此操作不应修改 Windows 分区。若 Ubuntu 使用全盘加密，系统会先要求解锁磁盘；如果忘记的是磁盘解锁口令而非登录密码，恢复路径不同，不能通过简单的 &lt;code&gt;passwd&lt;/code&gt; 解决。&lt;/p&gt;
&lt;p&gt;完成恢复后，请检查是否仍有不需要的管理员账户，并为重要数据保留离线备份。&lt;/p&gt;
&lt;h2 id="出处"&gt;出处
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;原始参考：&lt;a class="link" href="https://www.sysgeek.cn/reset-root-password-ubuntu/" target="_blank" rel="noopener"
 &gt;如何在 Ubuntu 上重置 Root 密码&lt;/a&gt;（系统极客）&lt;/li&gt;
&lt;li&gt;官方参考：&lt;a class="link" href="https://help.ubuntu.com/community/LostPassword" target="_blank" rel="noopener"
 &gt;Ubuntu Community Help Wiki：LostPassword&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;本文将“重置 root”调整为 Ubuntu 更推荐的普通用户密码恢复方式。&lt;/p&gt;</description></item><item><title>Ubuntu 内核更新与固定版本：先保留回退，再考虑 hold</title><link>https://breaking-dawn.cn/p/ubuntu-kernel-update-control/</link><pubDate>Tue, 21 Jul 2026 10:05:00 +0800</pubDate><guid>https://breaking-dawn.cn/p/ubuntu-kernel-update-control/</guid><description>
 &lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;安全提示&lt;/strong&gt;：内核更新也包含安全修复。除非某个已确认的驱动 / 硬件回归正在影响使用，不建议长期冻结内核；应记录原因与恢复日期。&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;Ubuntu 通常会保留一个或多个旧内核，这正是遇到新内核与 NVIDIA、VirtualBox 等 DKMS 模块不兼容时最好的回退手段。第一选择应是从 GRUB 的“Advanced options for Ubuntu”启动上一个可用内核，而不是马上阻止所有升级。&lt;/p&gt;
&lt;h2 id="先确认当前状态"&gt;先确认当前状态
&lt;/h2&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;uname -r
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;dpkg -l &lt;span class="s1"&gt;&amp;#39;linux-image*&amp;#39;&lt;/span&gt; &lt;span class="p"&gt;|&lt;/span&gt; grep &lt;span class="s1"&gt;&amp;#39;^ii&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;apt-cache policy linux-generic linux-image-generic linux-headers-generic
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;记录可正常使用的内核版本、显卡驱动版本和故障表现。待问题解决并在新内核上验证后，再清理旧内核；不要删除当前正在运行的版本。&lt;/p&gt;
&lt;h2 id="需要短期暂停更新时"&gt;需要短期暂停更新时
&lt;/h2&gt;&lt;p&gt;Ubuntu 的内核通常由元包推进。下面只是在问题排查期间暂停元包更新；包名需以本机 &lt;code&gt;apt-cache policy&lt;/code&gt; 输出为准：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo apt-mark hold linux-generic linux-image-generic linux-headers-generic
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;apt-mark showhold
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;恢复更新：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo apt-mark unhold linux-generic linux-image-generic linux-headers-generic
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo apt update
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo apt upgrade
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;固定单个、已安装的版本包，往往不能阻止元包引入新版本；反过来，冻结元包又会连带停止内核安全更新。因此应该把 hold 当作短期隔离措施，而不是永久配置。&lt;/p&gt;
&lt;h2 id="出处"&gt;出处
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;原始参考：&lt;a class="link" href="https://blog.csdn.net/RayChiu757374816/article/details/122043270" target="_blank" rel="noopener"
 &gt;Ubuntu 锁定内核不让它升级&lt;/a&gt;（RayChiu，CSDN）&lt;/li&gt;
&lt;li&gt;原始参考：&lt;a class="link" href="https://blog.csdn.net/checknet/article/details/122257816" target="_blank" rel="noopener"
 &gt;Ubuntu 固定内核版本&lt;/a&gt;（checknet，CSDN）&lt;/li&gt;
&lt;li&gt;命令参考：&lt;a class="link" href="https://manpages.ubuntu.com/manpages/jammy/man8/apt-mark.8.html" target="_blank" rel="noopener"
 &gt;APT &lt;code&gt;apt-mark&lt;/code&gt; 手册&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;本文合并两篇原始资料，并补充了 Ubuntu 22.04 的内核元包和安全更新风险。&lt;/p&gt;</description></item><item><title>Linux 磁盘空间排查：正确使用 df、du 与大文件定位</title><link>https://breaking-dawn.cn/p/linux-disk-space/</link><pubDate>Tue, 21 Jul 2026 09:15:00 +0800</pubDate><guid>https://breaking-dawn.cn/p/linux-disk-space/</guid><description>
 &lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;适用环境&lt;/strong&gt;：Ubuntu 22.04 LTS。执行清理操作前，请先确认路径和数据归属；不要因空间不足而直接删除不认识的系统目录。&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;&lt;code&gt;df&lt;/code&gt; 看的是&lt;strong&gt;文件系统&lt;/strong&gt;剩余空间，&lt;code&gt;du&lt;/code&gt; 看的是&lt;strong&gt;目录内容&lt;/strong&gt;占用。两者结合，能快速判断是哪个分区满了、又是哪个目录导致的。&lt;/p&gt;
&lt;h2 id="第一步确认哪个分区满了"&gt;第一步：确认哪个分区满了
&lt;/h2&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;df -hT
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;关注挂载点为 &lt;code&gt;/&lt;/code&gt;、&lt;code&gt;/home&lt;/code&gt;、&lt;code&gt;/boot&lt;/code&gt; 的行。&lt;code&gt;Use%&lt;/code&gt; 接近 100% 时，先不要升级系统或安装大型软件包；这可能让包管理操作中断。&lt;/p&gt;
&lt;h2 id="第二步从大目录逐层缩小"&gt;第二步：从大目录逐层缩小
&lt;/h2&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo du -xhd1 / &lt;span class="p"&gt;|&lt;/span&gt; sort -h
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;du -xhd1 &lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;&lt;span class="nv"&gt;$HOME&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;&lt;/span&gt; &lt;span class="p"&gt;|&lt;/span&gt; sort -h
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;code&gt;-x&lt;/code&gt; 让 &lt;code&gt;du&lt;/code&gt; 不跨越到其他挂载点，避免把 Windows NTFS 分区、移动硬盘等内容混在统计里。通常先检查 &lt;code&gt;/var&lt;/code&gt;、&lt;code&gt;/home&lt;/code&gt;、&lt;code&gt;/usr&lt;/code&gt;；在 &lt;code&gt;/var&lt;/code&gt; 下，日志、软件包缓存和容器数据经常占用较多空间。&lt;/p&gt;
&lt;p&gt;继续深入某个目录时，替换路径即可：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo du -xhd1 /var &lt;span class="p"&gt;|&lt;/span&gt; sort -h
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id="第三步定位异常大文件"&gt;第三步：定位异常大文件
&lt;/h2&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo find /var -xdev -type f -size +1G -printf &lt;span class="s1"&gt;&amp;#39;%10s %p\n&amp;#39;&lt;/span&gt; &lt;span class="p"&gt;|&lt;/span&gt; sort -n
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;看到大文件后，先判断它是否为日志、下载缓存、虚拟机磁盘或数据库文件。对日志可使用 &lt;code&gt;journalctl --disk-usage&lt;/code&gt; 查看 systemd 日志占用；不要直接删除正在写入的日志文件。&lt;/p&gt;
&lt;h2 id="一个容易忽略的差异"&gt;一个容易忽略的差异
&lt;/h2&gt;&lt;p&gt;若 &lt;code&gt;df&lt;/code&gt; 显示空间已满而 &lt;code&gt;du&lt;/code&gt; 找不到对应内容，可能是进程仍打开着一个“已删除文件”。可用下面命令排查：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo lsof +L1
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;确认对应服务后，以正常方式重启服务或系统，才会释放这部分空间。&lt;/p&gt;
&lt;h2 id="出处"&gt;出处
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;原始参考：&lt;a class="link" href="https://blog.csdn.net/jadeandplum/article/details/112466387" target="_blank" rel="noopener"
 &gt;Linux 查看磁盘空间命令（df、du）&lt;/a&gt;（jadeandplum，CSDN）&lt;/li&gt;
&lt;li&gt;手册参考：&lt;a class="link" href="https://www.gnu.org/software/coreutils/manual/html_node/df-invocation.html" target="_blank" rel="noopener"
 &gt;GNU Coreutils: df invocation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;本文将原始命令按“整体—目录—文件—异常占用”的排查顺序重新组织。&lt;/p&gt;</description></item><item><title>Ubuntu 中 dpkg 返回错误代码 1：从检查到修复</title><link>https://breaking-dawn.cn/p/ubuntu-dpkg-repair/</link><pubDate>Tue, 21 Jul 2026 09:00:00 +0800</pubDate><guid>https://breaking-dawn.cn/p/ubuntu-dpkg-repair/</guid><description>
 &lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;适用环境&lt;/strong&gt;：Ubuntu 22.04 LTS。本文只处理 &lt;code&gt;apt&lt;/code&gt; / &lt;code&gt;dpkg&lt;/code&gt; 的软件包状态问题，不适用于磁盘损坏或系统无法启动的情形。&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;&lt;code&gt;E: Sub-process /usr/bin/dpkg returned an error code (1)&lt;/code&gt; 不是一个单独的故障原因，而是安装流程最后给出的概括性结果。真正的线索通常出现在它之前：可能是某个包的配置脚本失败、依赖缺失、磁盘空间耗尽，或安装被中断。&lt;/p&gt;
&lt;h2 id="先找到真正报错的包"&gt;先找到真正报错的包
&lt;/h2&gt;&lt;p&gt;先重新执行一次，并保留完整输出；重点看最后一个出现 &lt;code&gt;error processing package&lt;/code&gt; 或 &lt;code&gt;post-installation script&lt;/code&gt; 的包名。&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo apt update
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo apt install -f
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo dpkg --configure -a
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;这三个命令依次更新软件包索引、修复可满足的依赖、继续完成尚未配置的包。大多数“错误代码 1”到这里就能恢复。&lt;/p&gt;
&lt;h2 id="仍失败时的排查顺序"&gt;仍失败时的排查顺序
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;查看可用空间：&lt;code&gt;df -h&lt;/code&gt;；&lt;code&gt;/&lt;/code&gt; 或 &lt;code&gt;/var&lt;/code&gt; 写满会导致配置脚本失败。&lt;/li&gt;
&lt;li&gt;查看最近的包管理日志：&lt;code&gt;sudo tail -n 120 /var/log/dpkg.log&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;用前面找到的包名重新安装：&lt;code&gt;sudo apt install --reinstall 包名&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;只有确认该包可以移除且没有关键依赖时，才考虑 &lt;code&gt;sudo apt remove 包名&lt;/code&gt; 后再安装。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;不要把删除 &lt;code&gt;/var/lib/dpkg/info&lt;/code&gt; 当作常规修复方式。该目录保存已安装软件包的维护脚本与元数据；直接改动前必须有备份，并应先确认是元数据损坏而非某个具体包的配置错误。&lt;/p&gt;
&lt;h2 id="修复后的确认"&gt;修复后的确认
&lt;/h2&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo apt -f install
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo dpkg --audit
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo apt upgrade
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;若 &lt;code&gt;dpkg --audit&lt;/code&gt; 没有输出未完成的软件包，说明包管理状态已恢复。对驱动、内核、引导加载器等重要组件，建议在重启前确认没有待处理的错误。&lt;/p&gt;
&lt;h2 id="出处"&gt;出处
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;原始参考：&lt;a class="link" href="https://www.cnblogs.com/bymo/p/9046586.html" target="_blank" rel="noopener"
 &gt;解决 apt-get 安装中的 dpkg error code (1)&lt;/a&gt;（焦距，博客园）&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;本文为基于原始参考重新编排的排障笔记；命令应以当前终端输出为准。&lt;/p&gt;</description></item></channel></rss>