软件包‘patch’的文件列表不是常规文件

软件包‘patch’的文件列表不是常规文件
Linux av-projects 3.11.0-14-generic #21-Ubuntu SMP Tue Nov 12 17:04:55 UTC 2013 
x86_64 x86_64 x86_64 GNU/Linux
Ubuntu 14.10

昨天我遇到了奇怪的启动问题,一些文件有点损坏。我可以修复大部分文件,但无法使用 apt-get 或 dpkg 安装和删除软件。我总是收到此错误:

dpkg: unrecoverable fatal error, aborting:
files list for package 'patch' is not a regular file
E: Sub-process /usr/bin/dpkg returned an error code (2)

它抱怨目前正在升级 Virtualbox,但它适用于任何安装、升级或删除。

有人能帮帮我吗?我已阅读了网上关于此错误消息的大部分内容,但目前仍无法解决此问题。

我已经做了一些常见的事情apt-get update,例如upgradedpkg --configure -a

这是完整的输出。

root@xxxxxx:~# apt-get upgrade
Reading package lists... Done
Building dependency tree      
Reading state information... Done
The following packages will be upgraded:
  virtualbox-4.2
1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/64.2 MB of archives.
After this operation, 828 kB of additional disk space will be used.
Do you want to continue [Y/n]? y
Preconfiguring packages ...
Selecting previously unselected package virtualbox-4.2.
dpkg: unrecoverable fatal error, aborting:
 files list for package 'patch' is not a regular file
E: Sub-process /usr/bin/dpkg returned an error code (2)

答案1

尝试 -

  1. 进入 /var/lib/dpkg 目录
  2. 备份“状态”文件
  3. 以 root 身份打开状态文件并找到导致错误的包。
  4. 删除文件中直到下一个 PACKAGE: 声明的所有文本。

或者您可以使用终端编辑状态文件,如下所示,但在编辑之前复制该文件 -

sudo edit /var/lib/dpkg/status

如果您能附上完整的错误,那么我们才能给您直接和清晰的错误,即使我们也会做同样的事情,但我们可以提及必须省略的行。

希望它对你有帮助。

相关内容