内核包下载链接:
kernel-default:https://download.csdn.net/download/qq_44451165/89632621
kernel-default-devel:https://download.csdn.net/download/qq_44451165/89638623
kernel-devel:https://download.csdn.net/download/qq_44451165/89638631
kernel-macros:https://download.csdn.net/download/qq_44451165/89638634
kernel-source:https://download.csdn.net/download/qq_44451165/89638637
suse-module-tools:https://download.csdn.net/download/qq_44451165/89638640
1.本次测试系统环境为SUSE Linux Enterprise Server 12 SP5
suse12sp5:~ # hostnamectl
Static hostname: suse12sp5
Icon name: computer-vm
Chassis: vm
Machine ID: 5b0e22175b3d9abe669c335c65f26cdf
Boot ID: 650185a95cf6451ca54205e5b6ff7f8b
Virtualization: vmware
Operating System: SUSE Linux Enterprise Server 12 SP5
CPE OS Name: cpe:/o:suse:sles:12:sp5
Kernel: Linux 4.12.14-120-default
Architecture: x86-64
2.查看当前内核
suse12sp5:~ # uname -sr
Linux 4.12.14-120-default
3.下载对应内核包,上传到系统中,本次要将内核升级为4.12.14-122.113.1.x86_64。
kernel-default-4.12.14-122.113.1.x86_64.rpm
kernel-default-devel-4.12.14-122.113.1.x86_64.rpm
kernel-devel-4.12.14-122.113.1.noarch.rpm
kernel-macros-4.12.14-122.113.1.noarch.rpm
kernel-source-4.12.14-122.113.1.noarch.rpm
4.执行升级命令
suse12sp5:~ # rpm -Uvh kernel-*
错误:依赖检测失败:
suse-kernel-rpm-scriptlets 被 kernel-default-4.12.14-122.147.1.x86_64 需要
libelf-devel 被 kernel-default-devel-4.12.14-122.147.1.x86_64 需要
提示报错:suse-kernel-rpm-scriptlets 被 kernel-default-4.12.14-122.147.1.x86_64 需要,因为kernel-default的关联包suse-module-tools也需要同步升级,否则无法升级。
5.确认当前suse-module-tools包的版本。
suse12sp5:~ # rpm -qa|grep suse-module-tools
suse-module-tools-12.7-1.6.x86_64
6.下载suse-module-tools包,上传到系统中。
suse12sp5:~ # ll
-rw-r--r-- 1 root root 57463600 8月 13 14:45 kernel-default-4.12.14-122.147.1.x86_64.rpm
-rw-r--r-- 1 root root 10247215 8月 13 14:44 kernel-default-devel-4.12.14-122.147.1.x86_64.rpm
-rw-r--r-- 1 root root 21155577 8月 13 14:44 kernel-devel-4.12.14-122.147.1.noarch.rpm
-rw-r--r-- 1 root root 7639198 8月 13 14:45 kernel-macros-4.12.14-122.147.1.noarch.rpm
-rw-r--r-- 1 root root 128204716 8月 13 14:45 kernel-source-4.12.14-122.147.1.noarch.rpm
-rw-r--r-- 1 root root 44826 8月 13 14:53 suse-module-tools-12.11-3.8.1.x86_64.rpm
7.再次执行升级命令。
suse12sp5:~ # rpm -Uvh suse-module-tools-12.11-3.8.1.x86_64.rpm
准备中... ################################# [100%]
正在升级/安装...
1:suse-module-tools-12.11-3.8.1 ################################# [ 50%]
正在清理/删除...
2:suse-module-tools-12.7-1.6 ################################# [100%]
suse12sp5:~ # rpm -Uvh kernel-*
准备中... ################################# [100%]
正在升级/安装...
1:kernel-macros-4.12.14-122.147.1 ################################# [ 11%]
2:kernel-devel-4.12.14-122.147.1 ################################# [ 22%]
Changing symlink /usr/src/linux from linux-4.12.14-120 to linux-4.12.14-122.147
3:kernel-default-devel-4.12.14-122.################################# [ 33%]
Changing symlink /usr/src/linux-obj/x86_64/default from ../../linux-4.12.14-120-obj/x86_64/default to ../../linux-4.12.14-122.147-obj/x86_64/default
4:kernel-source-4.12.14-122.147.1 ################################# [ 44%]
5:kernel-default-4.12.14-122.147.1 ################################# [ 56%]
Creating initrd: /boot/initrd-4.12.14-122.147-default
dracut: Executing: /usr/bin/dracut --logfile /var/log/YaST2/mkinitrd.log --force /boot/initrd-4.12.14-122.147-default 4.12.14-122.147-default
dracut: *** Including module: bash ***
dracut: *** Including module: systemd ***
dracut: *** Including module: warpclock ***
dracut: *** Including module: systemd-initrd ***
dracut: *** Including module: i18n ***
dracut: *** Including module: drm ***
dracut: *** Including module: plymouth ***
dracut: *** Including module: kernel-modules ***
dracut: *** Including module: resume ***
dracut: *** Including module: rootfs-block ***
dracut: *** Including module: suse-btrfs ***
dracut: *** Including module: suse-xfs ***
dracut: *** Including module: terminfo ***
dracut: *** Including module: udev-rules ***
dracut: Skipping udev rule: 40-redhat.rules
dracut: Skipping udev rule: 50-firmware.rules
dracut: Skipping udev rule: 50-udev.rules
dracut: Skipping udev rule: 91-permissions.rules
dracut: Skipping udev rule: 80-drivers-modprobe.rules
dracut: *** Including module: dracut-systemd ***
dracut: *** Including module: haveged ***
dracut: *** Including module: usrmount ***
dracut: *** Including module: base ***
dracut: *** Including module: fs-lib ***
dracut: *** Including module: shutdown ***
dracut: *** Including module: suse ***
dracut: *** Including modules done ***
dracut: *** Installing kernel module dependencies and firmware ***
dracut: *** Installing kernel module dependencies and firmware done ***
dracut: *** Resolving executable dependencies ***
dracut: *** Resolving executable dependencies done***
dracut: *** Hardlinking files ***
dracut: *** Hardlinking files done ***
dracut: *** Stripping files ***
dracut: *** Stripping files done ***
dracut: *** Generating early-microcode cpio image ***
dracut: *** Constructing GenuineIntel.bin ****
dracut: *** Store current command line parameters ***
dracut: Stored kernel commandline:
dracut: resume=UUID=46b338ba-ff41-4957-b6da-8e9aba4b12fa
dracut: root=UUID=33531211-10a1-4c29-9840-9629057857c3 rootfstype=ext4 rootflags=rw,relatime,data=ordered
dracut: *** Creating image file '/boot/initrd-4.12.14-122.147-default' ***
dracut: *** Creating initramfs image file '/boot/initrd-4.12.14-122.147-default' done ***
正在清理/删除...
6:kernel-default-devel-4.12.14-120.################################# [ 67%]
7:kernel-devel-4.12.14-120.1 ################################# [ 78%]
8:kernel-macros-4.12.14-120.1 ################################# [ 89%]
9:kernel-default-4.12.14-120.1 ################################# [100%]
8.重启系统即可。
suse12sp5:~ # reboot
9.查看内核是否升级成功。
suse12sp5:~ # uname -sr
Linux 4.12.14-122.147-default
可能出现的报错:
⚠️:如果出现如下报错:libelf-devel 被 kernel-default-devel-4.12.14-122.147.1.x86_64 需要。
suse12sp5:~ # rpm -Uvh kernel-*
错误:依赖检测失败:
libelf-devel 被 kernel-default-devel-4.12.14-122.147.1.x86_64 需要
则先执行zypper install -y kernel-default-devel命令
suse12sp5:~ # zypper install -y kernel-default-devel
正在加载软件源数据...
正在读取已安装的软件包...
正在解决软件包依赖关系...
将安装以下 13 个新软件包:
gcc gcc48 glibc-devel kernel-default-devel kernel-devel kernel-macros libasan0 libatomic1 libelf-devel libgomp1 libitm1 libtsan0 linux-glibc-devel
自动选中了以下 1 个推荐软件包:
gcc
13 个软件包将新装.
总下载大小:41.9 MiB。已缓存:0 B。 操作完成后,将使用额外的 106.8 MiB。
继续吗? [y/n/...? 显示全部选项] (y): y
正在检索 软件包 kernel-macros-4.12.14-120.1.noarch (1/13), 5.6 MiB (解压后 20.7 KiB)
正在检索 软件包 linux-glibc-devel-4.12-3.3.1.noarch (2/13), 1.2 MiB (解压后 5.5 MiB)
正在检索 软件包 libasan0-4.8.5-31.20.1.x86_64 (3/13), 79.8 KiB (解压后 166.8 KiB)
正在检索 软件包 libatomic1-8.2.1+r264010-1.3.3.x86_64 (4/13), 16.1 KiB (解压后 26.1 KiB)
正在检索 软件包 libgomp1-8.2.1+r264010-1.3.3.x86_64 (5/13), 102.2 KiB (解压后 255.7 KiB)
正在检索 软件包 libitm1-8.2.1+r264010-1.3.3.x86_64 (6/13), 34.5 KiB (解压后 110.4 KiB)
正在检索 软件包 libtsan0-8.2.1+r264010-1.3.3.x86_64 (7/13), 280.9 KiB (解压后 929.1 KiB)
正在检索 软件包 kernel-devel-4.12.14-120.1.noarch (8/13), 17.0 MiB (解压后 57.3 MiB)
正在检索 软件包 glibc-devel-2.22-100.15.4.x86_64 (9/13), 665.3 KiB (解压后 3.0 MiB)
正在检索 软件包 libelf-devel-0.158-7.7.2.x86_64 (10/13), 268.8 KiB (解压后 2.5 MiB)
正在检索 软件包 gcc48-4.8.5-31.20.1.x86_64 (11/13), 8.6 MiB (解压后 33.1 MiB)
正在检索 软件包 gcc-4.8-6.189.x86_64 (12/13), 5.4 KiB (解压后 0 B)
正在检索 软件包 kernel-default-devel-4.12.14-120.1.x86_64 (13/13), 8.1 MiB (解压后 4.0 MiB)
正在检查文件冲突: ............................................................................................................................................[完毕]
( 1/13) 正在安装:kernel-macros-4.12.14-120.1.noarch ..........................................................................................................[完毕]
( 2/13) 正在安装:linux-glibc-devel-4.12-3.3.1.noarch .........................................................................................................[完毕]
( 3/13) 正在安装:libasan0-4.8.5-31.20.1.x86_64 ...............................................................................................................[完毕]
( 4/13) 正在安装:libatomic1-8.2.1+r264010-1.3.3.x86_64 .......................................................................................................[完毕]
( 5/13) 正在安装:libgomp1-8.2.1+r264010-1.3.3.x86_64 .........................................................................................................[完毕]
( 6/13) 正在安装:libitm1-8.2.1+r264010-1.3.3.x86_64 ..........................................................................................................[完毕]
( 7/13) 正在安装:libtsan0-8.2.1+r264010-1.3.3.x86_64 .........................................................................................................[完毕]
( 8/13) 正在安装:kernel-devel-4.12.14-120.1.noarch ...........................................................................................................[完毕]
( 9/13) 正在安装:glibc-devel-2.22-100.15.4.x86_64 ............................................................................................................[完毕]
(10/13) 正在安装:libelf-devel-0.158-7.7.2.x86_64 .............................................................................................................[完毕]
(11/13) 正在安装:gcc48-4.8.5-31.20.1.x86_64 ..................................................................................................................[完毕]
(12/13) 正在安装:gcc-4.8-6.189.x86_64 ........................................................................................................................[完毕]
(13/13) 正在安装:kernel-default-devel-4.12.14-120.1.x86_64 ...................................................................................................[完毕]
然后重新执行rpm -Uvh kernel-*命令即可。