SUSE 11物理服务器内核升级实践

文章目录
  1. 环境
  2. 检查及备份
  3. 内核升级
  4. 验证
  5. 回退
  6. 发表评论

环境

  • 操作系统:SUSE Linux Enterprise Server 11 (x86_64)
  • 内核版本:3.0.13-0.27-default x86_64
  • 服务器型号:IBM System x3650 M4

检查及备份

  • 检查RAM Disk文件中的模块:lsinitrd /boot/initrd-3.0.13-0.27-default | grep ko$
  • 检查RAID卡模块信息:lspci -v | grep -A30 -B0 RAID; modinfo megaraid_sas.ko
  • 检查模块的依赖性:depmod -a
  • 检查当前系统分区:df -Th
  • 当前内核引导参数:cat /boot/grub/menu.lst
  • 系统内核配置参数:cat /etc/sysconfig/kernel| grep -v ^# | grep -v ^$

备份当前系统内核
[root@SLE ~]# tar zcvfpP /kernel_3.0.13.tar.gz /boot/ \
/lib/firmware/3.0.13-0.27-default/ \
/lib/modules/3.0.13-0.27-default/

内核升级

  1. 安装新版本新内核包(保留多个版本内核):
    [root@SLE ~]# rpm -ivh kernel-default-3.0.101-0.47.86.1.x86_64.rpm \
    kernel-default-base-3.0.101-0.47.86.1.x86_64.rpm
  2. 升级或安装新内核包(覆盖当前系统内核):
    [root@SLE ~]# rpm -Uvh kernel-default-3.0.101-0.47.86.1.x86_64.rpm \
    kernel-default-base-3.0.101-0.47.86.1.x86_64.rpm

省略步骤

  1. 更改内核配置参数:vim /etc/sysconfig/kernel
    # 在INITRD_MODULES参数中添加 megaraid_sas 以加载IBM RAID模块, 封装initrd时会加载此配置
  2. 手动封装initrd镜像:mkinitrd

验证

  1. 重启前验证:lsinitrd /boot/initrd | grep megaraid_sas.ko
  2. 重启后验证:lsmod | grep megaraid_sas

回退

  1. 无法正常启动时通过系统安装光盘引导后进入救援模式
  2. 救援模式下需要执行“挂载与切换根分区操作”:
    Rescue:~ # mkdir /sysroot
    Rescue:~ # mount /dev/sda2 /sysroot
    Rescue:~ # chroot /sysroot
  3. 解压备份的旧内核引导包:tar zxvf /kernel_3.0.13.tar.gz -C /
  4. exit 退出当前所在根,shutdown -r now 重启服务器;
  5. 降级或御载内核安装包(执行失败时使用 --force 参数):
    [root@SLE ~]# rpm -Uvh --oldpackage kernel-default-3.0.13-0.27.1.x86_64.rpm \
    kernel-default-base-3.0.13-0.27.1.x86_64.rpm

    [root@SLE ~]# rpm -e kernel-default-3.0.101-0.47.86.1 \
    kernel-default-base-3.0.101-0.47.86.1
文章出自: 本站技术文章均为原创,版权归 "Desen往事 - 个人博客" 所有;部分图片来源于 Yandex ,转载本站文章请注明来源。

1 comment

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

Captcha Code

ˆ Top