dpkg:警告:无法找到软件包 XXXX 问题解决

dpkg:警告:无法找到软件包 XXXX 问题” 终于解决了!

先来讲讲 这个问题是咋出来的

一.由于前段时间想安装一个vsftpd+ldap在服务器上,google了各种安装配置方法,没装成功!

因为多次尝试,使用了各种apt-get install  +apt-get remove ,结果就导致出现了 一些“pkg:警告:无法找到软件包 XXXX ” 问题

当时,警告还是很少的 也就是提示无法找到的包不多,渐渐地,服务器装的东西多了,这个问题就越来越明显

于是求google 大师,找各种答案  其中:

  1.$ sudo mv /var/lib/dpkg/info /var/lib/dpkg/info_old //现将info文件夹更名
2.$ sudo mkdir /var/lib/dpkg/info //再新建一个新的info文件夹
3.$ sudo apt-get update, apt-get -f install
4.$ sudo mv /var/lib/dpkg/info/* /var/lib/dpkg/info_old //执行完上一步操作后会在新的info文件夹下生成一些文件,现将这些文件全部移到info_old文件夹下
5.$ sudo rm -rf /var/lib/dpkg/info //把自己新建的info文件夹删掉
6.$ sudo mv /var/lib/dpkg/info_old /var/lib/dpkg/info //把以前的info文件夹重新改回名字

被我尝试多次,依然会出现那个问题!

其实这里 我们可以发现为什么会在安装新的内容时会出现无法找到软件包问题,因为在apt-get install 安装一个新包时 先回去检查/var/lib/dpkg/info/目录下的已安装包的配置文件信息;如果发现有已经安装的应用 的配置文件信息不在info目录下 就会提示这个错误

 所以这个时候我们 可以通过:sudo dpkg --configure -a

然后通过:dpkg -l | grep ^ii | awk '{print $2}' | grep -v XXX | xargs sudo aptitude reinstall 

重新获取包内容配置信息 ,这样一步步重新安装下去 很快就可以解决这个问题了

二.当然也还有第二种方法,那就是通过:sudo apt-get --reinstall install `dpkg --get-selections | grep '[[:space:]]install' | cut -f1`

来重新安装全部软件,会全部刷新info目录 不过这个方法就要多花点时间去等了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值