Home / Community / Blog

I would like to upgrade kernel on diskless machine.

First upgrade system as regular one:

yum upgrade

Copy new installed initramfs and vmlinuz files somewhere, I've copied them directly to TFTP server

scp /boot/vmlinuz-3.10.0-1127.19.1.el7.x86_64 /boot/initramfs-3.10.0-1127.19.1.el7.x86_64.img 192.168.1.28:

as you can see my TFTP (and also PXE/iSCSI) server is 192.168.1.28.

Then you have to expose new files via TFTP server and modify PXE config files.

My TFTP server files are in /data/tftpboot, and I've decided to store boot files in /networkboot/CentOS7-2003 directory so:

mkdir /data/tftpboot/networkboot/CentOS7-2003
mv ~/initramfs-3.10.0-1127.19.1.el7.x86_64.img ~/vmlinuz-3.10.0-1127.19.1.el7.x86_64 /data/tftpboot/networkboot/CentOS7-2003

You can edit /data/tftpboot/pxelinux.cfg/default. I've per-machine PXE config files that's why I added to /data/tftpboot/pxelinux.cfg/4c4c4544-0042-4410-8053-b2c04f43334a instead of default:

LABEL Centos7-Optiplex745-3.10.0-1127.19.1
MENU LABEL CentOS 7 DELL Optiplex 745 (3.10.0-1127.19.1)
kernel /networkboot/CentOS7-2003/vmlinuz-3.10.0-1127.19.1.el7.x86_64 root=/dev/mapper/centos00-root ro netroot=iscsi:@192.168.1.28::::iqn.1994-11.com.netgear:nas:08303042:centos-pxe rd.iscsi.initiator=iqn.1994-05.com.redhat:2f3474eec735 vconsole.keymap=pl LANG=en_GB.UTF-8  console=tty0 ip=enp3s0:dhcp  rhgb quiet
append initrd=/networkboot/CentOS7-2003/initramfs-3.10.0-1127.19.1.el7.x86_64.img

as you can see kernel and initrd are updated to point at new files.

When You test that system boots from this new config you can change set it as default.

Just my blog...

Mon Tue Wed Thu Fri Sat Sun
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30