环境
- 操作系统:SUSE Linux Enterprise Server 11 (x86_64)
- 服务器型号:HP DL系列 G7/G8
检查
- 检查RAM Disk文件中的模块:
lsinitrd /boot/initrd-3.0.76-0.11-default | grep ko$
- 手动挂载RAM Disk文件:
mount -o loop -t sysfs /boot/initrd-3.0.76-0.11-default /mnt
- 查看系统模块信息:
lspci -v; lsmod; modinfo
- 检查模块的依赖性:
depmod -a
- 检查当前系统分区:
df -Th
- 当前内核引导参数:
cat /boot/grub/menu.lst | grep -i hpsa
- 系统内核配置参数:
cat /etc/sysconfig/kernel| grep -v ^# | grep -v ^$
- 配置zypper库(Yast源):
mount /dev/sr0 /media && zypper ar file:///media SLE11
- 查看zypper库及软件更新:
zypper lr && zypper lu
通过 rpm 方式
- 安装新版本内核包(保留多个版本内核):
[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 - 升级或安装新内核包(覆盖当前系统内核):
[root@SLE ~]#tar zcvfpP /kernel_3.0.76.tar.gz /boot/ \
/lib/firmware/3.0.76-0.11-default/ \
/lib/modules/3.0.76-0.11-default/
[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 - 安装旧版本内核包(保留多个版本内核):
[root@SLE ~]#rpm -ivh --oldpackage kernel-default-3.0.76-0.11.1.x86_64.rpm \
kernel-default-base-3.0.76-0.11.1.x86_64.rpm - 降级或安装旧内核包(覆盖当前系统内核):
[root@SLE ~]#tar zcvfpP /kernel_3.0.101.tar.gz /boot/ \
/lib/firmware/3.0.101-0.47.86-default/ \
/lib/modules/3.0.101-0.47.86-default/
[root@SLE ~]#rpm -Uvh --oldpackage kernel-default-3.0.76-0.11.1.x86_64.rpm \
kernel-default-base-3.0.76-0.11.1.x86_64.rpm
通过 zypper 方式
- 升级安装系统内核(覆盖当前系统内核,挂载SLE 11 SP4光盘):
[root@SLE ~]#tar zcvfpP /kernel_3.0.76.tar.gz /boot/ \
/lib/firmware/3.0.76-0.11-default/ \
/lib/modules/3.0.76-0.11-default/
[root@SLE ~]#zypper clean && zypper ref
[root@SLE ~]#zypper lu | grep kernel-default
[root@SLE ~]#zypper up kernel-default kernel-default-base
[root@SLE ~]#zypper pa | grep kernel-default
- 移除并安装旧内核包(覆盖当前系统内核,挂载SLE 11 SP3光盘):
[root@SLE ~]#tar zcvfpP /kernel_3.0.101.tar.gz /boot/ \
/lib/firmware/3.0.101-0.47.86-default/ \
/lib/modules/3.0.101-0.47.86-default/
[root@SLE ~]#zypper clean && zypper ref
[root@SLE ~]#zypper rm kernel-default kernel-default-base
[root@SLE ~]#zypper in kernel-default kernel-default-base
[root@SLE ~]#zypper pa | grep kernel-default
省略步骤
- 更改内核引导参数:
vim /boot/grub/menu.lst
# 添加 hpsa.hpsa_allow_any=1, 引导时加载hpsa内核模块以解决引导失败问题
1kernel /vmlinuz-3.0.76-0.11-default root=/dev/vg_root/root_lv resume=/dev/vg_root/swap_lv splash=silent crashkernel=256M-:128M hpsa.hpsa_allow_any=1 showopts vga=0x314 - 更改内核配置参数:
vim /etc/sysconfig/kernel
# 在INITRD_MODULES参数中添加 hpsa 以加载HP RAID模块, 封装initrd时会加载此配置
1INITRD_MODULES="hpsa" - 安装RAID控制器驱动:
rpm -ivh hpsa-kmp-default-3.4.18-105.sles11sp3.x86_64.rpm
升级RAID控制器驱动:rpm -Uvh hpsa-kmp-default-3.4.18-105.sles11sp3.x86_64.rpm
说明:可以在搜索引擎中输入关键字" HP DL380 G8 Drivers site:hpe.com "来获得HP DL380 G8服务器的驱动下载页面,此驱动安装过程包含了initrd重封装步骤。
- 手动封装initrd镜像:
mkinitrd
验证
重启前验证:lsinitrd /boot/initrd-3.0.76-0.11-default | grep hpsa
重启后验证:lsmod | grep hpsa
回退
- 无法正常启动时通过系统安装光盘引导后进入救援模式
- 救援模式下需要执行“挂载与切换根分区操作”:
Rescue:~ #mkdir /sysroot
Rescue:~ #mount /dev/sda2 /sysroot
Rescue:~ #chroot /sysroot
- 解压备份的旧内核引导包:
tar zxvf /kernel_3.0.76.tar.gz -C /
- exit退出当前所在根,
shutdown -r now
重启服务器; - 降级或御载内核安装包(执行失败时使用 --force 参数):
[root@SLE ~]#rpm -Uvh --oldpackage kernel-default-3.0.76-0.11.1.x86_64.rpm \
kernel-default-base-3.0.76-0.11.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
总结
- 物理服务器kernel升级建议是重新安装kernel和硬件驱动,避免kernel与module兼容问题;
- 上述步骤可用于kernel升级和raid驱动升级过程的操作及故障排查。
文章出自: 本站技术文章均为原创,版权归 "Desen往事 - 个人博客" 所有;部分图片来源于 Yandex ,转载本站文章请注明来源。
good
强势围观
强烈围观。
强势围观
来瞧瞧,速度还不错!