Python脚本
#!/usr/bin/env python#to update the soft link(if not exist, create it) to the latest kernel in#funtoo system.#The kernel generated by genkernel is in the form of#kernel-genkernel-x86-3.5.4-gento
·
#!/usr/bin/env python
#to update the soft link(if not exist, create it) to the latest kernel in
#funtoo system.
#The kernel generated by genkernel is in the form of
#kernel-genkernel-x86-3.5.4-gentoo
#initramfs-genkernel-x86-3.5.4-gentoo
#System.map-genkernel-x86-3.5.4-gentoo
#what we want to do is to strip the stuff behind the version.
#kernel-genkernel-x86
#initramfs-genkernel-x86
#System.map-genkernel-x86
#most routines are in the os module shipped with python std lib
import os
target_dir = "/boot/"
arch = os.uname()[4]
if arch == "x86_64":
pass
else:
arch = "x86"
sl_kernel = "kernel-genkernel-" + arch
sl_initrd = "initramfs-genkernel-" + arch
sl_sysmap = "System.map-genkernel-" + arch
if os.path.exists(target_dir + sl_kernel):
os.remove(target_dir + sl_kernel)
if os.path.exists(target_dir + sl_initrd):
os.remove(target_dir + sl_initrd)
if os.path.exists(target_dir + sl_sysmap):
os.remove(target_dir + sl_sysmap)
#print sl_kernel
all_files = os.listdir(target_dir)
kernel_list= []
initrd_list=[]
sysmap_list = []
for name in all_files:
if name.endswith("gentoo"):
if name.startswith("kernel") :
kernel_list.append(name)
# print kernel_list
elif name.startswith("initramfs"):
initrd_list.append(name)
# print initrd_list
elif name.startswith("System.map"):
sysmap_list.append(name)
# print sysmap_list
kernel_list.sort()
initrd_list.sort()
sysmap_list.sort()
target_kernel = kernel_list[len(kernel_list)-1]
target_initrd = initrd_list[len(initrd_list)-1]
target_sysmap = sysmap_list[len(sysmap_list)-1]
#print target_sysmap,target_kernel,target_initrd
try:
os.symlink(target_dir + target_kernel,target_dir + sl_kernel)
os.symlink(target_dir + target_initrd,target_dir + sl_initrd)
os.symlink(target_dir + target_sysmap,target_dir + sl_sysmap)
except:
print "Do you have permission? pls run as root!"
else:
print "Done!"
更多推荐
已为社区贡献1条内容
所有评论(0)