Skip to content
  • Helmut Grohne's avatar
    debvm-create: switch from genext2fs to mkfs.ext4 · f0979fae
    Helmut Grohne authored
    Why?
    
    genext2fs is slow. It has O(n^2) behaviour, which becomes annoying with
    larger filesystems. It also creates an ext2 image and we have to upgrade
    it to ext4 in multiple steps. Even then, the image has an inode size of
    128, which is incompatible with 2038 and does not allow storing
    sub-second precision time stamps.
    
    How?
    
    We use mkfs.ext4 from e2fsprogs (which is required anyway) instead.
    Running this from within a --customize-hook does not work, because the
    user namespace used for the hook often has no privileges to write to the
    output image. Instead, we now ask mmdebstrap to output to a directory
    and create the filesystem separately. We construct a special namespace
    that has both access to the tree and to the output image and perform the
    mkfs.ext4 there. As a consequence, we no longer support any mode but
    unshare and since mkfs.ext4 consumes the size parameter, the size syntax
    is reduced a bit.
    f0979fae
Loading