发表于 2013-07-18 | 更新于: 2018-02-16 | 分类于 Linux , CentOS , Fedora | | 阅读次数: 408
字数统计: 699 | 阅读时长 ≈ 3
以前对于多余的内核,都是rpm-grep-remove你懂的,这次发现了这个软件包。神呐,节省了很多时间,只需要package-cleanup –oldkernels就可以把就内核(对于版本升级而言)删除,加上–count参数就可以指定留下几个grub选项,注意最好轻易不要设定1,除非你确定刚升级好的内核是OK的,默认值是2,即会保存前一个内核。
package-cleanup : 用于清理本地安装的RPM软件包
注意:这是一个只对RPM有用的工具,Ubuntu 之类的无法使用。
Fedora系统中package-cleanup是默认安装的,而且manpage也比较好懂,这里挑出几个命令来解释一下。
命令格式:
1 | package-cleanup [options] <item …> |
---|
1 2 3 4 5 6 7 8 9 10 11 12 | $ package-cleanup –leaves libacl-devel-2.2.49-8.fc14.i686 libcap-devel-2.17-1.fc13.i686 libchamplain-gtk-0.6.1-4.fc14.i686 libcurl-devel-7.21.0-5.fc14.i686 libdbi-dbd-mysql-0.8.3-6.fc14.i686 libertas-usb8388-firmware-5.110.22.p23-4.fc13.noarch libgail-gnome-1.20.3-1.fc14.i686 libgtop2-devel-2.28.2-1.fc14.i686 libidn-devel-1.18-1.fc14.i686 libiodbc-3.52.7-1.fc12.i686 |
---|
可以看到,列出的都是一些函数库,这些库函数没有被其他程序用到。
1 2 3 4 5 6 7 8 9 10 | $ package-cleanup –orphans alchemist-1.0.37-8.fc12.i686 antlr-2.7.7-6.fc12.i686 kernel-2.6.34.7-61.fc13.i686 kernel-devel-2.6.34.7-61.fc13.i686 kmod-nvidia-2.6.34.7-61.fc13.i686-260.19.12-1.fc13.1.i686 schroedinger-1.0.10-1.fc13.i686 system-config-display-2.2-1.fc12.i686 xorg-x11-drv-wacom-0.10.8-2.fc13.i686 |
---|
1 | $ package-cleanup –oldkernels |
---|
前面一篇文章提到过如何手工删除旧内核文件,这条命令就可以解决了。
可以用参数 “–count ” 指定要保留的内核个数,默认是2。
可以用参数 “–keepdevel” 指定不要删除 kernel-devel 。
例如:
1 | $ package-cleanup –oldkernels –count=3 –keepdevel |
---|
含义是:保留最近3个内核文件和kernel-devel文件,并删除其余的kernels。
1 2 3 4 5 6 | $ package-cleanup –problems Package alchemist-1.0.37-8.fc12.i686 requires python(abi) = (’0′, ’2.6′, None) Package alchemist-1.0.37-8.fc12.i686 requires python-abi = (’0′, ’2.6′, None) Package system-config-display-2.2-1.fc12.i686 requires libpython2.6.so.1.0 Package system-config-display-2.2-1.fc12.i686 requires python(abi) = (’0′, ’2.6′, None) |
---|
我的运行结果显示有些软件包需要python 2.6的支持,Fedora 14已经默认安装python 2.7。
1 | $ package-cleanup –dupes |
---|
1 | $ package-cleanup –cleandupes |
---|