Kernel Update

From FOG Project
Revision as of 21:27, 13 February 2016 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 Arguments" 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 or firewall 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 21+, and RHEL 7, 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 old kernels directory.
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 kernels, 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 inits, 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 permissions.
chown -R fog:apache /var/www/html/fog/service/ipxe
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. For owner:group permissions, on Ubuntu and Debian they would be fog:www-data instead of fog:apache