Kernel Update

= 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.



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



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.



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.



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



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.

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

​#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

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

chmod -R 775 /var/www/html/fog/service/ipxe
 * 1) Set permissions:

echo DONE!
 * 1) Script complete.

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