Update Kernel Slackel 64 live running from usb with persistent
Posted: 05 Feb 2017 13:03
You can upgrade the system using persistent but upgrading the kernel as well it will not work.
To upgrade the kernel additional work is needed.
While on live environment booting from usb with persistent.
Copy the code bellow and save it to a file named e.g. make_new_init+kernel_pack.txt File can be also downloaded from here
Run the script
To return to user one type
Now copy the following files somewhere on hard disk or in another usb. You will need them to copy to LIVE usb later.
Create a folder
Reboot to your hard disk system
cd work_files
Copy initrd.gz to usb boot folder to replace the previous one
Copy vmlinuz to usb boot folder to replace the previous one
Copy 05-kernel.slm to usb boot/modules folder to replace the previous one
Copy initrd.gz to usb EFI/BOOT folder to replace the previous one
Copy vmlinuz to usb EFI/BOOT folder to replace the previous one
Reboot and boot with live USB
To upgrade the kernel additional work is needed.
While on live environment booting from usb with persistent.
Code: Select all
sudo slapt-get -u
Code: Select all
sudo slapt-get -i --reinstall kernel-huge kernel-modules
sudo rm -rf /tmp/work
mkdir -p /tmp/work/new_kernel
cd /tmp/work
sudo spkg -i --root=/tmp/work/new_kernel /var/slapt-get/slackware64/a/kernel-huge-4.4.38-x86_64-1.txz
sudo spkg -i --root=/tmp/work/new_kernel /var/slapt-get/slackware64/a/kernel-modules-4.4.38-x86_64-1.txz
sudo mksquashfs new_kernel 05-kernel.slm -comp xz -b 1M
sudo mkinitrd -c -o /tmp/initrd.gz -s /tmp/initrd-tree -k 4.4.38 -m "squashfs:overlay:loop:xhci-pci:ohci-pci:ehci-pci:xhci-hcd:uhci-hcd:ehci-hcd:usb-storage:hid:usbhid:i2c-hid:hid-generic:hid-cherry:hid-logitech:hid-logitech-dj:hid-logitech-hidpp:hid-lenovo:hid-microsoft:hid_multitouch:ext3:ext4:isofs:nls_cp437:nls_iso8859-1"
sudo rm -f /tmp/initrd-tree/{initrd-name,keymap,luksdev,resumedev,rootfs,rootdev,wait-for-root}
sudo cp /usr/share/slackware-live/{init,keymaps} /tmp/initrd-tree/
sudo chmod +x /tmp/initrd-tree/init
sudo cp /usr/sbin/build-slackware-live.sh /tmp/initrd-tree/
(
cd /tmp/initrd-tree
sudo su
find . | cpio -o -H newc 2>/dev/null | gzip -9c > /tmp/work/initrd.gz
)
cd /tmp/work
Code: Select all
sh make_new_init+kernel_pack.txt
Code: Select all
exit
Create a folder
Code: Select all
cd ~/
rm -rf ~/work_files
mkdir work_files
cp /tmp/work/initrd.gz work_files
cp /tmp/work/05-kernel.slm work_files
cp /tmp/work/new_kernel/boot/vmlinuz work_files
cp -R ~/work_files somewhere-to-hard-disk
cd work_files
Copy initrd.gz to usb boot folder to replace the previous one
Copy vmlinuz to usb boot folder to replace the previous one
Copy 05-kernel.slm to usb boot/modules folder to replace the previous one
Copy initrd.gz to usb EFI/BOOT folder to replace the previous one
Copy vmlinuz to usb EFI/BOOT folder to replace the previous one
Reboot and boot with live USB