Skip to content

Automated install can silently fail to format the root partition and fill the live tmpfs #181

Description

@ggiesen

Summary

In the guided "Automated Installation" (erase a disk), full_disk_format() formats each new partition without waiting for udev to settle after parted's partition-table rescan and without checking the mkfs return code. mkfs can race a momentarily-removed partition node; because the failure is swallowed, the root mount then fails silently and the file copy lands in the live session's tmpfs, filling it until ENOSPC.

Affected path

GUI "Automated Installation — erase a disk and install" (radio_automated), and the auto-format prompt for an unpartitioned disk in manual partitioning. Both call partitioning.full_disk_format().

Impact

Intermittent. On a plain (non-encrypted) automated install the root filesystem is never created, so do_mount() mounts nothing (its return code is not checked) and rsync copies the system into the live overlay until the disk-full error. Whether it triggers depends on udev timing after each parted mkpart. For LUKS/LVM the root partition is reformatted later by cryptsetup luksFormat / pvcreate, so the silent tmpfs-fill is specific to the plain install; those layouts still benefit for the EFI/boot partitions full_disk_format() creates.

Root cause

After each parted call the loop only waits for the node to appear; it does not wait for udev to finish a rescan that briefly removes and recreates the partition nodes, and it discards the mkfs return code. A format that races a vanished node is silently tolerated, leaving the partition unformatted.

Found while developing #180. Fix in the linked PR.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions