Mur*_*urz 16 upgrade package-management do-release-upgrade
有时,当我通过 升级系统时do-release-upgrade,更新过程失败,脚本告诉我通过 手动完成该过程dpkg --configure -a。这不是一个严重的问题 - 在手动解决依赖关系问题和完成升级过程后一切正常。
但是do-release-upgrade脚本在升级完成后有一个清理过程:
Remove obsolete packages?
XXX packages are going to be removed.
Continue [yN] Details [d]y
Run Code Online (Sandbox Code Playgroud)
它从旧版本的系统中删除了一些过时的软件包。
当自动升级失败并且我手动完成升级时,似乎不会执行此过程,因此旧版本的过时软件包仍安装在系统中。
手动完成升级后,如何手动运行“删除过时的软件包”过程?
kyo*_*ake 23
测试这个:
打开终端(按Ctrl+ Alt+ T)。
运行这个:
sudo -i
apt-get update
apt-get autoremove
apt-get clean
UNUSCONF=$(dpkg -l|grep "^rc" | awk '{print $2}')
apt-get remove --purge $UNUSCONF
NEWKERNEL=$(uname -r|sed 's/-*[a-z]//g'|sed 's/-386//g')
ADDKERNEL="linux-(image|headers|ubuntu-modules|restricted-modules)"
METAKERNEL="linux-(image|headers|restricted-modules)-(generic|i386|server|common|rt|xen)"
UNUSKERNELS=$(dpkg -l | awk '{print $2}' | grep -E $ADDKERNEL | grep -vE $METAKERNEL | grep -v $NEWKERNEL)
apt-get remove --purge $UNUSKERNELS
update-grub
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
27428 次 |
| 最近记录: |