インストール、更新、または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で何かが壊れているということですか?ここに私が問題を修正しようとしたものがあります:
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は死なないでしょう。何が悪いの?何がI間違っていますか?どうすれば修正できますか?
ヘルプは大歓迎です。
** 編集 **
要求どおり:
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
、およびその他の破損したエントリについても同様に進めます。
サーバーの1つでの同様の問題:/var/lib/dpkg/alternatives/vtrgb
破損
停電中のインストールの失敗と予定外の再起動による可能性があります。別のサーバーからファイルをコピーしてからこれを修正することでこれを修正しました:
Sudo apt-get -f install
これにより壊れたdpkgが修正され、私は自分の人生を進めることができました!