清理ubuntu老内核的小脚本
ubuntu用久了,升级了几次内核以后,就免不了需要清理一下老的内核,毕竟一套内核就有170多M的空间呢。但是每次都打一堆字来清理也烦了。虽然Ubuntu 命令技巧(这里再罗嗦几句:如果还有ubuntuer没看过这个,强烈建议看一遍。)里有删除旧内核的命令,而且就一行:
sudo aptitude purge ~ilinux-image-.*\(\!`uname -r`\) |
但是我却不是很喜欢,因为这这个没有把linux-headers-xxx删除掉。
于是自己写了个繁的,需要的可以自己保存,以便不时之需。
#!/bin/bash # 清理ubuntu的老内核 # by bones7456 # http://li2z.cn CURRENT="`uname -r | awk -F"-" '{print $1"-"$2}'`" HEADERS="" IMAGES="" for HEADER in `dpkg --get-selections | grep ^linux-headers | \ grep -vE "(generic|386|virtual)" | awk '{gsub(/linux-headers-/,"",$1);print $1}'` do if [[ "$CURRENT" < "$HEADER" ]] then echo "正在运行的内核不是最新的。 $CURRENT < $HEADER" echo "Running kernel is not the newest. $CURRENT < $HEADER" exit 1 else [[ "$CURRENT" != "$HEADER" ]] && { HEADERS="${HEADERS} linux-headers-${HEADER}" IMAGE="`dpkg --get-selections | grep ^linux-image | \ grep "${HEADER}" | awk '{print $1}'`" IMAGES="${IMAGES} $IMAGE" } fi done if [[ x"$HEADERS" == x"" ]] then echo "没有要清理的老内核." echo "No old kernel need to clean." exit 0 fi CMD="sudo apt-get purge $HEADERS $IMAGES" echo "$CMD" if [ "$1" == "-e" ] then sh -c "$CMD" else echo "请确定以上命令是否正确,然后输入 $0 -e 来执行以上命令。" echo "Be sure this command is right, then type $0 -e to execute." fi |
young001 在 2010年02月28日 21:24 说:【 】
不错的东东,前排留名
Iven 在 2010年02月28日 21:25 说:【 】
呵呵,不是有 Ubuntu Tweak 帮你清理么……
bones7456 在 2010年02月28日 22:14 说:【 】
对,还有TX大侠的tweak,不过系统维护这块我还是习惯在CLI下,也懒得再个程序了。
xiooli 在 2010年02月28日 22:47 说:【 】
为虾米if后面的框框要加个套?
bones7456 在 2010年03月01日 08:41 说:【 】
加个套,小于号不用转义。
吼吼 在 2010年02月28日 23:11 说:【 】
好东西,纳入我的脚本库。
shellexy 在 2010年03月01日 17:59 说:【 】
一行脚本搞定了啦~
xiooli 在 2010年03月01日 23:51 说:【 】
这一行可是惊天地泣鬼神阿。
ps:貌似任何长度的 shell 脚本都可以写成一行 ^^
bones7456 在 2010年03月02日 08:32 说:【 】
如果有人刚装了新内核,还没重启就执行了这行,就会把最新的内核给卸载了。。。
而我的脚本则会有提示。
lds 在 2010年03月07日 14:43 说:【 】
保存了,不错,
lds 在 2010年03月07日 14:52 说:【 】
理工大linux群,76392717
欢迎加入我们,这一个自由与开放的Linux社区,也是我们交流与学习的圣殿。
bones7456 在 2010年03月07日 17:54 说:【 】
呃,你也不要多次留同样内容的言啊,不然可是会被判为spam的哦。
PS: linuxer更喜欢irc等方式,QQ群可能不是最好的选择哦。
hlcfan 在 2010年03月14日 22:15 说:【 】
太强了!!!太厉害了!!好佩服!!!
清理ubuntu老内核的小脚本 - Linux进行时 在 2010年03月14日 22:54 说:【 】
[…] 今天在http://li2z.cn/2010/02/28/clean_ubuntu_kernel/ […]
清理Debian内核和头文件的脚本 « Adam's 在 2010年05月10日 20:25 说:【 】
[…] 改自bones7456清理ubuntu内核的脚本, 原文地址在此: http://li2z.cn/2010/02/28/clean_ubuntu_kernel/. […]