The elemental-system-agent on initial boot after i...
# elemental
w
The elemental-system-agent on initial boot after installation of the live CD is failing to run the initial registration plans that are created by default by the operator. Specifically it is failing on writing to the
/usr/local/etc/hostname
file on the node. This is the exact error I am seeing from
journalctl -u elemental-system-agent
.
Copy code
elemental elemental-system-agent[1864]: time="2025-10-06T16:11:23-04:00" level=error msg="error syncing 'fleet-default/m-10c5a9e9-ac44-4d3a-a13b-62bae7269985': handler secret-watch: error encountered when running apply: open /usr/local/etc/hostname: read-only file system, requeuing"
From reading the documentation it looks like the /usr/local/etc/hostname file would be immutable by default by elemental. Is there something I am missing? Not sure what to try next. Note, I am also using my own derivative image I have created.
b
my own derivative image
As in not SLE Micro?
w
correct
b
If not, then I think the answer for that is going to be whatever OS you picked that is providing a read-only system.
I don't think elemental is going to be able to grok how to trigger a RW layer when the underlying OS is RO.
Unless it's SLE Micro.
w
I created a rocky linux derivative but have all the tooling for elemental according to SLE Micro 6.0 Elemental toolkit - v2.1.3 Elemental register - v1.6.9 Elemental system agent - v0.3.4
b
Yeah but rocky is what's saying what should be RO or RW at that point.
So either you got to make those changes as part of your installer, or tell Rocky to make that part RW
w
ah ok that makes sense, thanks!
I thought elemental made the filesystem immutable when the installer runs.
b
Kinda? I could be wrong, but I think that's part of the reason that Elemental uses SLE Micro by default.
Like Fedora CoreOS.
Or SilverBlue.
It's meant to run on top and manage/trigger.
w
Ok so what makes it immutable is the fact that its SLE Micro. Like if I were to use the SLE Micro ISO and just create a machine with that without elemental, the filesystem would still be immutable.
b
but not meant to make something like Ubuntu LTS into an immutable OS.
w
ok that makes sense
Thanks for the info. I'm just learning about all of this.
b
No worries, I'm not at SUSE and reserve the right to be horribly wrong, but that's how I understand it.
It might be able to fake parts of it as mounting things as ReadOnly, but that doesn't mean that all the bells and leavers are there for overlaying RW portions of the OS.
Cause in a strict sense you can have an immutable disk (read only pxe boot or something) that's not running an immutable OS that's using containers or something like all the other ones I mentioned.
But then you shouldn't be using Elemental hooks to write in the hostnames, you should be using dhcp/boot variable to set something like that. Hope that makes sense.
w
It seems to me though the elemental operator generates a bootstrap plan and in that plan it is hardcoded to set the hostname in that file I mentioned.
b
I've set it with DHCP transient name before, but otherwise I think you're stuck with the UID generated name.
But only with SLE Micro.
But SLEMicro is also configured to do that at some level.
As is Silverblue or Kinoite for Fedora.