Kernel Update

From FOG Project
Revision as of 06:17, 10 February 2017 by Wayne-workman.28155 (talk | contribs) (Manual update to latest kernel)
Jump to: navigation, search

Kernel Update feature

When running FOG 1.3.0 (In development as of Feb 2016), you may change what kernels are available to you via the Kernel Update feature. You may want to do this for a special or unique machine, or all machines, depending upon your needs. The feature is located here:

Web interface -> FOG Configuration -> Kernel Update

For 32 bit systems, choose a kernel that is x86 only, for 64 bit systems, choose one that is x86_x64 bit.

FOG 1.3.0 Kernel Update Feature.png

You may name your kernel uniquely to not overwrite the default kernel if you choose.

FOG 1.3.0 kernel update name.png


If you've named your new kernel bzImage or bzImage32 then all 64 or all 32 bit clients will automatically begin using this new kernel. If you've named your kernel something unique (which is suggested), you may assign the kernel to a particular host. You may do this by setting the "Host Kernel" of a host to the file name you have chosen, as pictured below.


FOG 1.3.0 Unique Kernel name graphic.png

Kernel Update Failure

The new kernel is put in place using FTP, and the credentials used for this are in the TFTP Server area, located here:

Web Interface -> FOG Configuration -> FOG Settings -> TFTP Server

If you experience the following error or a similar error, this is a FTP related issue and could be credentials, permissions, ownership, firewall, path, or SELinux related. Usually, it is credentials or path related.

Kernel Update Failure.png


You can set the FTP username and password and destination path used for kernel updates here:


FOG 1.3.0 Kernel Update FTP Settings.png


The above steps only skim the surface of the FTP issue, for a more complete guide, please see: Troubleshoot FTP

Manual update to latest kernel

For CentOS 7+, Fedora 19+, RHEL 7+, Debian8+, and Ubuntu14+ you may manually update the kernel and/or the inits to the latest by following the below steps.

You may copy/paste the entire script to backup all kernels/inits and download all new ones.

#Delete previous backed up kernels & inits.
rm -rf /var/www/html/fog/service/ipxe/old

​#Make a directory to put old kernels & inits into.
mkdir /var/www/html/fog/service/ipxe/old

​#Move old inits, get new ones.
mv /var/www/html/fog/service/ipxe/init.xz /var/www/html/fog/service/ipxe/old
wget https://fogproject.org/inits/init.xz -O /var/www/html/fog/service/ipxe/init.xz
mv /var/www/html/fog/service/ipxe/init_32.xz /var/www/html/fog/service/ipxe/old
wget https://fogproject.org/inits/init_32.xz -O /var/www/html/fog/service/ipxe/init_32.xz

​#Move old kernels, get new ones.
mv /var/www/html/fog/service/ipxe/bzImage /var/www/html/fog/service/ipxe/old
wget https://fogproject.org/kernels/bzImage -O /var/www/html/fog/service/ipxe/bzImage
mv /var/www/html/fog/service/ipxe/bzImage32 /var/www/html/fog/service/ipxe/old
wget https://fogproject.org/kernels/bzImage32 -O /var/www/html/fog/service/ipxe/bzImage32

#Reset Ownership:
#Fedora, CentOS, RHEL:
chown -R fog:apache /var/www/html/fog/service/ipxe
#Ubuntu, Debian:
chown -R fog:www-data /var/www/html/fog/service/ipxe

#Set permissions:
chmod -R 775 /var/www/html/fog/service/ipxe

#Script complete.
echo DONE!

Steps for older Ubuntu and older Debian would be simiar, but the destination would be /var/www instead of /var/www/html.