我正在使用 ubuntu 13.10,并且我已删除该dpkg
目录。我删除了/var/lib/dpkg
,因为系统给了我一个错误,例如:
Could not open lock file /var/lib/dpkg/lock
当我安装 ubuntu-restricted-extras 时。
有人能帮助我吗?
答案1
您必须将 dpkg 的目录恢复到以下状态:
$ ls /var/lib/dpkg/ -l
total 12543
drwxr-xr-x 2 root root 4128 апр. 8 13:01 alternatives
-rw-r--r-- 1 root root 11 сент. 10 2013 arch
-rw-r--r-- 1 root root 3075761 апр. 8 13:15 available
-rw-r--r-- 1 root root 3075761 апр. 8 13:00 available-old
-rw-r--r-- 1 root root 8 апр. 24 2013 cmethopt
-rw-r--r-- 1 root root 2052 апр. 2 07:51 diversions
-rw-r--r-- 1 root root 2096 апр. 2 07:50 diversions-old
drwxr-xr-x 2 root root 483752 апр. 8 13:16 info
-rw-r----- 1 root root 0 апр. 8 13:16 lock
drwxr-xr-x 2 root root 48 марта 23 2013 parts
-rw-r--r-- 1 root root 288 февр. 12 11:45 statoverride
-rw-r--r-- 1 root root 260 февр. 12 09:58 statoverride-old
-rw-r--r-- 1 root root 3081465 апр. 8 13:16 status
-rw-r--r-- 1 root root 3082826 апр. 8 13:15 status-old
drwxr-xr-x 2 root root 744 апр. 8 13:00 triggers
drwxr-xr-x 2 root root 48 апр. 8 13:16 updates
问题在于你切断了你所在的分支。简单的重新安装 dpkg 不起作用,因为它依赖于你删除的目录。幸运的是,我们有 dpkg 状态文件备份/var/backups
。因此你必须这样做:
sudo mkdir /var/lib/dpkg
sudo cp /var/backups/dpkg.status.0 /var/lib/dpkg/
sudo mv /var/lib/dpkg/dpkg.status.0 /var/lib/dpkg/status
sudo mkdir /var/lib/dpkg/updates
sudo mkdir /var/lib/dpkg/info
sudo touch /var/lib/dpkg/available
sudo apt-get install --reinstall dpkg
之后,你应该能够使用apt-get
。最后,一个很好的建议:除非您知道自己在做什么,否则不要删除系统中的任何文件/目录!