I’m playing with FCOS and I also have as server old notebook. This notebook is always by any fedora distro recognized as supporting GPT, but it is not. When GPT is installed it will not boot.
I understand from the article above, there is need to delete storage.discs, so it will not partition that and create MBR manually with all partitions.
My question is, as I understand, with this configuration
storage:
disks:
- # The link to the block device the OS was booted from.
device: /dev/disk/by-id/coreos-boot-disk
# We do not want to wipe the partition table since this is the primary
# device.
wipe_table: false
partitions:
- number: 4
label: root
# Allocate at least 8 GiB to the rootfs. See NOTE above about this.
size_mib: 8192
resize: true
(Configuring Storage :: Fedora Docs)
the immutable system is installed to root partition. And when I remove this part, it will not install it.
I like idea of having immutable system on server with all configuration in ignite file. But I’m not sure how will this work after reapplying the ignite file.
I’m not sure I fully understand the question. Have you tried installing FCOS? Was it installed and if not, what was the exact error message?
Ignition runs only once during the first boot of the system. If you want to reapply the config, you will need to reprovision the machine, i.e. run the installer again.
I’m not sure I fully understand the question. Have you tried installing FCOS? Was it installed and if not, what was the exact error message?
I’m testing the configuration in virtualbox, which I’m going to use on server. But I noticed it is GPT, so I have to find workaround before installation.
Ignition runs only once during the first boot of the system. If you want to reapply the config, you will need to reprovision the machine, i.e. run the installer again.
I think I understand this in manual. But I’m not sure, how the partitioning will look like on bare methal. I presume I will have to do:
But I’m not sure what exactly will force installer to install immutable system to /dev/sda1, when there will be no disk section in ignite file. Is it the labels of the partitions? So, should I set /dev/sda1 to root?
btw. I have there only one wired network interface, is possible create minimal installation only with systemd-networkd with this:
I’m using the server, so I don’t want to have server down for too long and then find out it is impossible to install there FCOS, so I would have to reinstall there fedora server again…
So, now I’m looking for answers before real installation.
We do use GPT formatted disks, but I would encourage you to try it and see if it works on your system. Our ISO image is created with isohybrid so that should work even if the full install doesn’t. If the full install doesn’t work you may be still be able to run workloads in a live environment.
On the networking front, if you just need DHCP on a single interface then you don’t need to provide any configuration for it. It will just work out of the box.
Regarding network and bootable iso, that is good. Few problems less.
What does mean full install?
If I copy the disk directly into /dev/sda1, it will be still the live environment? then how is performed the update of the immutable system? Only manually?
If so, how to perform the full install? is it dependent on label? I haven’t seen the install scripts for FCOS and I haven’t found the answer in FCOS manuals.
“full install” meaning you boot the live ISO environment and run coreos-installer to install to a disk and then reboot. After reboot you are running from the hard drive and not from the ISO.
Alternatively you can just run workloads from the booted live ISO (without actually writing to your hard drive) if you have enough RAM. See the link that @hricky shared above.
You can’t install to a partition. You have to give the installer a path to a disk. i.e. /dev/sda in this case.
Our installer code is at GitHub - coreos/coreos-installer: Installer for CoreOS disk images but it really is mainly just a dd of the raw metal disk image and then a mount of the boot partition to add in the Ignition config so the machine has it when it reboots and runs Ignition.
I want to make sure this is understood: you do not have to specify any storage configuration by default when installing an FCOS node. You only specify storage configuration if you want to change the defaults.
Thank you so much for answers. Now I understand the storage configuration. I know I have to test it. I have seen, there is possibility to convert GPT to MBR in gdisk after installation and then dont modify the filesystem. That could be the best option, if the filesystem will still be bootable. I will test it and keep this open.
I understand /var is persistent. But I’m not sure how it is with /etc/
It is only rewritten during reprovisioning (reapply ignite) and during autoupdate of system, the user changed files like fstab or shadow are kept, so it is possible to just install, try some things which will change files in /etc, add changes to ignite file and reprovision without any issues?
I’m beginning to think, after reading, MBR is not possible for FCOS. MBR doesn’t have label on partition, but on filesystem, which has to support it. GPT has labels on partitions. And because main thing as label for root partition is mandatory and there is impossible to create filesystem, which wouldn’t be rewritten, I don’t see a way to get through.
It seems like you are currently using your server, don’t want to shut it down, and haven’t tested any configs on a separate bare metal machine. If so, and since this is an interesting topic for me, I could try booting the live ISO on a bare metal machine, then try manually formatting the disk as MBR, replicating the FCOS disk layout, and testing various Ignition configs to install the system without repartitioning. I haven’t tried anything like this before and I don’t know if it will work, but I think it will be a good addition from my side to the usual Fedora 42 CoreOS Test Week test cases.
I’m not sure, if the FCOS is what i need. So, I don’t want to spend your time.
When I’m thinking about FCOS, it makes me worried:
there is configuration for all. Even the raid. I have HDD raid 1, but would rather write my own fstab, than loose the important data on raid, because installation process could format the disc before mounting.
I also using wireguard vpn, which connects server with VPS, which has public ip. I found article to include wireguard Configuring FCOS to use WireGuard :: Fedora Docs to ignition. But I don’t understand from it, how are the keys transfered. I think normal way, the ignite file can be accessible from VPS, but if it would contain the wireguard keys (public and private), it is impossible.
I think I will stay in fedora server. I haven’t find other distro, which would have selinux support, podman, cockpit, newer packages etc. and without gui.