ubuntu好久沒有使用了,使用apt-get install 安裝軟件,會出現很多錯誤
dpkg: warning: files list file for package 'mokutil' missing; assuming package has no files currently installed
dpkg: warning: files list file for package 'libquadmath0:amd64' missing; assuming package has no files currently installed
dpkg: warning: files list file for package 'python-apt-common' missing; assuming package has no files currently installed
dpkg: warning: files list file for package 'zerofree' missing; assuming package has no files currently installed
dpkg: warning: files list file for package 'python-dnspython' missing; assuming package has no files currently installed
dpkg: warning: files list file for package 'libnpth0:amd64' missing; assuming package has no files currently installed
dpkg: warning: files list file for package 'libgtk2.0-bin' missing; assuming package has no files currently installed
dpkg: warning: files list file for package 'python-secretstorage' missing; assuming package has no files currently installed
......
解決辦法,使用 apt-get install --reinstall "package_name" -y 進行重新安裝,如果列表太多,一個一個的手動安裝太慢,可以使用腳本方式。
將所有的警告復制到文件 warning.txt 中;
編寫如下腳本,命名為 auto_reinstall.sh
#!/bin/bash
for package in $(cat warning.txt | grep "warning: files list file for package '" | grep -Po "'[^']*'" | sed "s/'//g");
do
apt-get install --reinstall "$package" -y;
done
chmod a+x auto_reinstall.sh
sudo ./auto_reinstall.sh
執行完成后,如果報如下錯誤
dpkg: error processing package ******** (--configure)
使用如下命令來解決
sudo mv /var/lib/dpkg/info /var/lib/dpkg/info_old
sudo mkdir /var/lib/dpkg/info
sudo apt-get update
sudo apt-get -f install
sudo mv /var/lib/dpkg/info/* /var/lib/dpkg/info_old #//執行完上一步操作后會在新的info文件夾下生成一些文件,現將這些文件全部移到info_old文件夾下
sudo rm -rf /var/lib/dpkg/info
sudo mv /var/lib/dpkg/info_old /var/lib/dpkg/info