简单地说,我想清理旧内核的模块。它是"uname“,但我需要用-r获取所有内核的此类信息(我已经知道它们的名称,并且可以清理内核文件、initramfs和System.map)。如果可能的话..。
谢谢。
发布于 2011-07-19 20:02:30
uname命令报告正在运行的内核,因此它对您没有帮助。但是这些模块都存储在/lib/modules下。下面的程序可以将它们全部清除。
#!/usr/bin/python2
import os
import shutil
moddirs = os.listdir("/lib/modules")
moddirs.remove(os.uname()[2])
for d in moddirs:
shutil.rmtree(os.path.join("/lib/modules", d))发布于 2011-07-19 19:59:09
可能有点粗糙,但您可以尝试在/boot中查找
aix@aix:~$ ls -al /boot/vmlinu[xz]-*
-rw-r--r-- 1 root root 4050848 2010-09-16 19:24 /boot/vmlinuz-2.6.32-24-generic
-rw-r--r-- 1 root root 4050592 2010-10-16 21:37 /boot/vmlinuz-2.6.32-25-generic
-rw-r--r-- 1 root root 4050080 2010-11-24 10:58 /boot/vmlinuz-2.6.32-26-generic
-rw-r--r-- 1 root root 4049888 2010-12-02 04:42 /boot/vmlinuz-2.6.32-27-generic
-rw-r--r-- 1 root root 4052512 2011-01-11 00:27 /boot/vmlinuz-2.6.32-28-generic
-rw-r--r-- 1 root root 4053280 2011-02-11 21:37 /boot/vmlinuz-2.6.32-29-generic
-rw-r--r-- 1 root root 4055488 2011-03-02 01:24 /boot/vmlinuz-2.6.32-30-generic
-rw-r--r-- 1 root root 4055840 2011-04-08 23:26 /boot/vmlinuz-2.6.32-31-generic
-rw-r--r-- 1 root root 4049376 2011-04-20 23:38 /boot/vmlinuz-2.6.32-32-generic
-rw-r--r-- 1 root root 4050464 2011-07-08 02:00 /boot/vmlinuz-2.6.32-33-generic这些是安装在我的机器上的内核。
或者,在Debian类型的发行版(例如Ubuntu)上,您可以运行:
aix@aix:~$ dpkg --list | grep linux-image
ii linux-image-2.6.32-24-generic 2.6.32-24.43 Linux kernel image for version 2.6.32 on x86
ii linux-image-2.6.32-25-generic 2.6.32-25.45 Linux kernel image for version 2.6.32 on x86
ii linux-image-2.6.32-26-generic 2.6.32-26.48 Linux kernel image for version 2.6.32 on x86
ii linux-image-2.6.32-27-generic 2.6.32-27.49 Linux kernel image for version 2.6.32 on x86
ii linux-image-2.6.32-28-generic 2.6.32-28.55 Linux kernel image for version 2.6.32 on x86
ii linux-image-2.6.32-29-generic 2.6.32-29.58 Linux kernel image for version 2.6.32 on x86
ii linux-image-2.6.32-30-generic 2.6.32-30.59 Linux kernel image for version 2.6.32 on x86
ii linux-image-2.6.32-31-generic 2.6.32-31.61 Linux kernel image for version 2.6.32 on x86
ii linux-image-2.6.32-32-generic 2.6.32-32.62 Linux kernel image for version 2.6.32 on x86
ii linux-image-2.6.32-33-generic 2.6.32-33.70 Linux kernel image for version 2.6.32 on x86
ii linux-image-generic 2.6.32.33.39 Generic Linux kernel image基于RPM的发行版(例如RedHat)需要类似以下内容:
$ rpm -qa kernel
kernel-2.6.18-128.7.1.el5
kernel-2.6.18-128.2.1.el5
kernel-2.6.18-194.17.4.el5发布于 2011-07-19 19:59:36
正如@utdemir指出的那样,没有每个人都必须遵守的内核路径,但有许多发行版遵循的Fileystem Hierarchy Standard。根据FSH的说法,内核文件应该位于/boot中,并被称为vmlinux/vmlinuz (未压缩/压缩)。
https://stackoverflow.com/questions/6746614
复制相似问题