update-alternatives:错误:/ var / lib / dpkg / alternatives / vim corrupt:无效状态
每当我尝试使用apt-get进行安装,更新或执行任何操作时,我总会得到类似于此的错误消息,关注vim:
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded. 1 not fully installed or removed. After this operation, 0 B of additional disk space will be used. Do you want to continue [Y/n]? y Setting up vim (2:7.3.154+hg~74503f6ee649-2ubuntu3.1) ... update-alternatives: error: /var/lib/dpkg/alternatives/vim corrupt: invalid status dpkg: error processing vim (--configure): subprocess installed post-installation script returned error exit status 2 Errors were encountered while processing: vim
不完全确定这里发生了什么。 我的假设是vim有些东西是腐败的? 以下是我尝试解决此问题的方法:
- 卸载vim(
sudo apt-get remove vim
) – 删除失败并返回类似于上面的错误。 -
sudo apt-get purge vim
– 失败,同样的错误。 -
删除错误消息中提到的
/var/lib/dpkg/alternatives/vim
文件,然后再次尝试删除/清除 – 删除/清除仍然失败,但不是:update-alternatives: error: /var/lib/dpkg/alternatives/vim corrupt: invalid status
在它的位置,我得到:
update-alternatives: error: /var/lib/dpkg/alternatives/vimdiff corrupt: line not terminated while trying to read status
-
再次安装vim – 失败,同样的错误。
-
sudo apt-get clean && sudo apt-get autoremove
– 失败,同样的错误。 -
sudo apt-get install --fix-broken
– 失败,同样的错误。
这有点烦人。 vim就不会死。 出了什么问题? 我做错了什么? 我该如何解决?
非常感谢帮助。
** 编辑 **
按照要求:
输出LC_MESSAGES=C update-alternatives --query vim
:
Link: vim Status: auto Best: /usr/bin/vim.basic Value: /usr/bin/vim.basic Alternative: /usr/bin/vim.basic Priority: 30
/var/lib/dpkg/alternatives/vimdiff
:
b0VIM 7.3Ýroot
不能获取/ var / lib / dpkg / alternatives / vim的内容,因为我删除了它,哈哈抱歉。
替代品条目无可救药地被打破。
-
您应该删除它们:
sudo update-alternatives --remove-all vim sudo rm -f /etc/alternatives/vim /var/lib/dpkg/alternatives/vim
如果
update-alternatives
再次抱怨损坏的文件,请忽略它,然后继续使用下一个命令删除它们。 -
然后重新安装他们的包:
sudo apt-get install --reinstall vim
这将根据系统上可用的包还原备选条目。
-
继续类似于
vimdiff
,rvim
和其他损坏的条目。
我的一台服务器上的类似问题: /var/lib/dpkg/alternatives/vtrgb
损坏
可能是因为在停电期间安装失败和计划外重启。 我通过从另一台服务器复制文件然后执行以下操作来修复此问题
sudo apt-get -f install
这修复了破碎的dpkg,我能够继续我的生活!