Skip to content

fix: give every VM its own machine ID - #18

Merged
ryanlewis merged 1 commit into
mainfrom
fix/per-vm-machine-id
Sep 2, 2026
Merged

fix: give every VM its own machine ID#18
ryanlewis merged 1 commit into
mainfrom
fix/per-vm-machine-id

Conversation

@ryanlewis

Copy link
Copy Markdown
Owner

Package configuration during the apt layer bakes a machine ID into /etc/machine-id and /var/lib/dbus/machine-id, so every VM created from this image shares one identity. That defeats anything assuming machine IDs are unique, such as systemd's FixedRandomDelay=.

This empties the file as the last step of the build so systemd generates a fresh ID per VM in early boot. It is emptied rather than removed: systemd treats an absent /etc/machine-id as first boot and presets all units, which would re-enable the ones this image disables.

Ported from exeuntu commit e530b2f. I checked every upstream Dockerfile commit since exeslim was forked on 26 Jul; this is the only platform-wiring change. The rest (Go bump, gh from release binary, OpenCode bundling) is agent-workstation only and does not apply.

Also adds a row to the README correlation table.

systemd's and dbus's package configuration during the apt layer bakes a
machine ID into /etc/machine-id and /var/lib/dbus/machine-id. Both survive
into every VM created from the image, so a whole fleet shares one identity,
which defeats anything that assumes machine IDs are unique (systemd's
FixedRandomDelay=, for one).

Empty the file at the end of the build so systemd generates one per VM in
early boot. Emptied rather than removed: systemd treats an absent
/etc/machine-id as first boot and presets all units, which would re-enable
the ones this image disables.

Ported from exeuntu commit e530b2f (17 Aug 2026), the only platform-wiring
change upstream since exeslim was forked.
@ryanlewis
ryanlewis merged commit 14e7a49 into main Sep 2, 2026
1 check passed
@ryanlewis
ryanlewis deleted the fix/per-vm-machine-id branch September 2, 2026 00:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant