Ben Hutchings composed on 2024-11-10 01:50 (UTC+0100):
The ext2 filesystem uses 32-bit timestamps and will be unable to
represent timestamps beyond early 2038. It is now deprecated in Linux
for this reason.
As we're generally moving to 64-bit time times in the trixie release,
I
think it's time to address this in partman, so far as possible.
Currently many of the partman recipes specify ext2 for the /boot
partition. In some cases I expect that this is necessary due to
limitations of older boot loaders. For mainstream architectures using
GRUB to boot, ext4 can be used for the /boot partition.
Should I start proposing specific changes or does someone else have
time to work on this?
Last week I was under a misunderstanding that upgrading EXT2
filesystems to EXT4
would be a satisfactory solution to eventual 64 bit timestamp support
necessity,
when it turns out some EXT4 filesystems suffer the same condition. EXT4
supported,
and supports, inode size 128, as does EXT2. I had quite a number of
EXT2, as well
as having EXT4 configured with 128. Only after I managed to get most of
my EXT2s
converted to EXT4 did I discover the 128 byte inodes on those converted
from EXT2
to EXT4 do not support timestamps after January 2038. Furthermore, EXT4
filesystems with feature flex_bg cannot be converted to 256 byte inode
size by
simply using e2fsck and tune2fs. So, all those already converted EXT2s
need
another conversion, /and/ many more than not of my (much large quantity
of) EXT4s
need complete reformats. :(
Simply switching to EXT4 for /boot/ won't go far enough. Small sizes of
those
EXT4s suited to /boot/ use by default feature 128 byte inodes.
Formatting those
may require explicit use of '-I 256', and/or a change to mke2fs.conf to
prevent
small EXT4s from misfeaturing 128 byte inodes.