Build, install, and boot the latest Linux kernel fresh off Linus Torvaldsâ tree.
Get access to a Linux system on which you have root permissions.
sudo dnf builddep kernel
This roughly equivalent to:
sudo dnf -y install gcc flex make bison openssl openssl-devel elfutils-libelf-devel ncurses-devel bc git tar dwarves
Install ccache to speed up subsequent kernel builds:
sudo dnf -y install ccache
Be sure to restart your terminal after installing ccache so that it gets added to your path
Compile the kernel with a custom version tag.
# clone the kernel tree
git clone https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
# change the current directory to the kernel tree
cd linux
# change the current directory to the kernel tree
cp /boot/config-$(uname -r)* .config
# set any new config options to the defaults
make olddefconfig
# to add label to the new kernel version string,
# edit âMakefileâ and add something cool to the âEXTRAVERSIONâ variable
# you can print the new version string to test it by:
make kernelversion
# build the kernel
# -j species the number of threads
# nproc finds the correct number for your machine
make -j $(nproc)
# install the modules
# you need to be root for this step so use sudo
sudo make modules_install -j $(nproc)
# install the new kernel
sudo make install
# reboot â hopefully the new kernel is set as the default :)
reboot
...
uname -a
dmesg | head
whoami
The output of uname -a
and dmesg | head
and whoami
on the system running your newly compiled Linux kernel. Make a copy of template.md
in the assignment directory renamed to firstname_lastname.md
and submit it as a patch.
Donât forget a cover letter.