Stretch+ NFSROOT for building Ubuntu Trusty and Xenial

Andrew Ruthven andrew at etc.gen.nz
Fri Jan 3 01:43:31 CET 2020


Hey,

If you use Stretch or beyond as the NFSROOT to build anything less than
Ubuntu 16.10 with ext4 filesystems, then those filesystems can't be
fsck'ed on the resulting system.

Because of this I've had to keep a Jessie NFSROOT around to build those
systems. But I finally encountered a system which can't be built by
Jessie with my FAI Profile [0].

However, there is a fix!

This assumes that you mount an NFSROOT using aufs or overlayfs so any
modifications are transient. Use a hook to modify /etc/mke2fs.conf if
building affected systems. In my case I create a class called UBUNTU or
Ubuntu machines, so I created hooks/partition.UBUNTU with the following
content:

-- Begin --
#!/bin/bash

# Trusty and Xenial can't fsck ext4 filesystems with the metadata_csum
# flag.
# See: https://bugs.launchpad.net/ubuntu/+source/e2fsprogs/+bug/1601997
ifclass -o XENIAL TRUSTY \
    && sed -i 's/,metadata_csum//' /etc/mke2fs.conf
-- End --

Cheers,
Andrew

[0] I run lspci during the build to identify PCI cards which need
customised actions, and a new server uses 32 byte PCI IDs which lspci
on Jessie doesn't support.

-- 
Andrew Ruthven, Wellington, New Zealand
andrew at etc.gen.nz        | linux.conf.au 2020, Gold Coast, AU
https://catalystcloud.nz |    https://lca2020.linux.org.au



More information about the linux-fai mailing list