
自從今天運行升級以來,我無法再使用 apt-get。
例證:
sudo apt-get install curl
Reading package lists... Done
Building dependency tree
Reading state information... Done
curl is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 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 linux-image-3.2.0-24-generic (3.2.0-24.38) ...
Running depmod.
Failed to symbolic-link /boot/initrd.img-3.2.0-24-generic to initrd.img: File exists
dpkg: error processing linux-image-3.2.0-24-generic (--configure):
subprocess installed post-installation script returned error exit status 17
Errors were encountered while processing:
linux-image-3.2.0-24-generic
E: Sub-process /usr/bin/dpkg returned an error code (1)
據我所知,這就是它失敗的原因:
sudo dpkg --configure linux-image-3.2.0-24-generic
Setting up linux-image-3.2.0-24-generic (3.2.0-24.38) ...
Running depmod.
Failed to symbolic-link /boot/initrd.img-3.2.0-24-generic to initrd.img: File exists
dpkg: error processing linux-image-3.2.0-24-generic (--configure):
subprocess installed post-installation script returned error exit status 17
Errors were encountered while processing:
linux-image-3.2.0-24-generic
然而,當我運行這個時,一切似乎都正常...
/var/lib/dpkg/info/linux-image-3.2.0-24-generic.postinst
echo $?
0
到底發生了什麼事?我有點害怕亂搞,因為我認為這是至關重要的事情...
答案1
我initrd
通過運行從根目錄中刪除了符號鏈接
sudo rm /initrd.img
但如果你想有一個故障保護,當然可以initrd.img
在刪除之前備份現有的。
然後運行
sudo apt-get -f install [package]
並且應該能夠成功運行。
答案2
嘗試
sudo apt-get -f install [package]
這將強制升級。至少值得一試。做一個
sudo apt-get update
也不會受傷。