Debian使用dpkg安装Package,但是此Package有很多其它相依性,造成安装完成后,需要补相依Package,但相依的Package无法安装,而此Package也无法移除,造成很大的困扰.
移除Package,使用apt-get remove / dpkg -r都移不掉的时后,那就只好手动来做.
手动移除deb Package步骤
找出此Package相关安装的档案,下述两种都是列出Package file list的方法.
dpkg -L Package-Name (都砍掉)
cd /var/cache/apt/archives; dpkg -c Package-Name.deb
将索引文件中的Package讯息删除.
vim /var/lib/dpkg/status #找到"Package: Package-Name",将此到下一个Package:开头前的都删除.
cd /var/lib/dpkg/info
rm -fr Package-Name.* #一些md5/list/shlibs等
重建索引
apt-get update
大多数应该只要执行2, 3步骤即可, 1没砍干净是比较无所谓. (1砍的时后要注意有些Package可能会共用设定之类的)
如果Package本身要安装,只是要补其它相依性,而造成无法安装的问题,那只要执行2, 3的步骤,然后补足相依性后,再直接安装即可(相同档案会被盖掉,所以还是一样的).
Leo.dingwl 于 2008-09-22 17:59:55发表:
可以使用强制删除的参数嘛,就是有点不安全