所有apt
类似命令都无法创建锁定文件,因为/var/lib/dpkg/
不存在。此外,/lost+found/
还有内容:
pi@pi-top:~ $ sudo ls -al /lost+found/
total 102456
drwx------ 11 root root 16384 Apr 3 16:26 .
drwxr-xr-x 23 root root 4096 May 5 17:00 ..
-rw------- 1 root root 104857600 Apr 3 16:30 #29025
lrwxrwxrwx 1 root root 9 Mar 29 10:05 #87867 -> /run/lock
lrwxrwxrwx 1 root root 4 Mar 29 10:05 #87868 -> /run
drwxr-xr-x 2 root root 4096 May 5 10:35 #89863
drwxr-xr-x 12 root root 4096 Apr 3 16:41 #89864
drwxr-xr-x 44 root root 4096 Apr 3 16:30 #89865
drwxrwsr-x 2 root staff 4096 Mar 12 14:03 #89866
drwxr-xr-x 6 root root 4096 May 5 16:30 #89867
drwxrwsr-x 2 root mail 4096 Mar 29 10:05 #89868
drwxr-xr-x 2 root root 4096 Mar 29 10:05 #89869
drwxr-xr-x 5 root root 4096 Mar 29 10:32 #89870
drwxrwxrwt 3 root root 4096 May 5 16:31 #89871
/var/lib/
尽管系统没有显示任何其他症状,但也缺少很多。是否可以恢复系统(或至少dpkg
)?如果是这样,怎么做?
很抱歉,但在这个阶段,您最好从干净的备份中恢复。当在
fsck
中放置这么多目录时/lost+found
,这表明存在大量损坏。很可能有更多的损坏,但是因为它在文件内容中而不是在元数据中,所以 fsck 无法知道。从备份还原时,请确保它是干净的备份。损坏可能在检测到之前就已开始。
识别文件内容的唯一方法
lost+found
是查看它们并弄清楚。没有系统的方法。如果有的话,fsck 会这样做。查看您显示的内容
/lost+found
,目录似乎已/var
损坏。您可以尝试通过创建/var
适当的条目并将其移动/lost+found
到/var
.我从元数据(所有权和符号链接目标)中找出了上面的条目。您可以通过查看目录内容来了解更多信息。与现有的系统安装进行比较(最好是相同的发行版或至少接近的版本,但处理器架构无关紧要)。
/var/lib
可能是#89865
因为它往往有很多子目录,但这只是一个猜测。它可能完全来自系统的另一部分。不要专注于恢复
/var/lib/dpkg
而忽略其余的。缺乏/var/lib/dpkg
只是你注意到的第一个症状。在 PC 上,我建议进行 RAM 测试(使用Memtest86+,它在大多数发行版上作为一个软件包提供,并且至少在 Ubuntu 上默认安装)。在 Raspberry Pi 上,如果您的系统使用 SD 卡,我建议更换 SD 卡:SD 卡是系统中最不可靠的部分,如果您继续使用它,它可能会不断损坏您的数据。