Kernel test cases¶
This list comprises some test cases that are useful to identify missing kernel configuration.
Docker¶
Launch a container
sudo apt-get install docker.io
sudo docker pull ubuntu:noble
sudo docker run -ti ubuntu:noble
exit
sudo container prune -f
sudo image rm ubuntu:noble
File systems¶
EFI variable file system¶
Check that the EFI variable file system is mounted at /sys/firmware/efi/efivars.
mount | grep efivarfs
LVM and encrypted volumes support¶
Test creating and managing an encrypted LVM (Logical Volume Manager) setup.
truncate -s 1G disk
sgdisk --new=1::0: --typecode=1:8300 --change-name=1:'root' disk
sudo kpartx -a -v disk
# Take note of the created loop device. Assuming loop0p1 below.
# Replace it by the actual value.
sudo cryptsetup luksFormat /dev/mapper/loop0p1
sudo cryptsetup open /dev/mapper/loop0p1 encrypted-vg
sudo pvcreate /dev/mapper/encrypted-vg
sudo vgcreate vg_data /dev/mapper/encrypted-vg
sudo lvcreate -n lv_data -L 512M vg_data
sudo mkfs.ext4 /dev/vg_data/lv_data
sudo mount /dev/vg_data/lv_data /mnt
# Tearing down
sudo umount /mnt
sudo vgchange -a n vg_data
sudo kpartx -d -v disk
rm disk
Firewall¶
Add Firewall rules
sudo ufw enable
sudo ufw status
sudo ufw allow from 192.168.0.0/16 proto udp port 1714:1764 comment 'KDE Connect'
sudo ufw allow from 192.168.0.0/16 proto tcp port 1714:1764 comment 'KDE Connect'
sudo ufw status numeric
sudo ufw disable
sudo ufw status
LXC, LXD¶
Launch a container
sudo snap install --channel latest/stable lxd
# If the snap is already installed
# sudo snap refresh --channel latest/stable lxd
lxc init --auto
lxc launch ubuntu:24.04 noble1
lxc shell noble1
sudo poweroff
lxc delete noble1
QEMU¶
Launch an EFI Shell in QEMU
sudo apt install qemu-system-riscv qemu-efi-riscv64
cp /usr/share/qemu-efi-riscv64/RISCV_VIRT_VARS.fd .
qemu-system-riscv64 -machine virt -m 4096 -nographic \
-drive if=pflash,format=raw,unit=0,file=/usr/share/qemu-efi-riscv64/RISCV_VIRT_CODE.fd,readonly=on \
-drive if=pflash,format=raw,unit=1,file=RISCV_VIRT_VARS.fd
Snapcraft¶
Build a snap
sudo snap install --classic snapcraft
sudo ufw disable
lxd init
git clone https://git.code.sf.net/p/sispmctl/git sispmctl
cd sispmctl/
snapcraft pack --use-lxd --verbose
find . -name '*.snap'
Task accounting¶
Check that task accounting is usable:
sudo apt-get install iotop
sudo iotop