Hi all,
Over the next couple months, we'll be rolling out a change to the Fedora CoreOS default console. The current default depends on the CPU architecture:
- On x86_64, the first serial port ttyS0 is the primary console and the graphical console is secondary.
- On other architectures, Fedora CoreOS generally does not configure a particular console, leaving the bootloader and kernel to follow their own defaults. This typically means that a graphical console is used if one is available, and a serial console otherwise.
The new defaults will depend on both the CPU architecture and platform. The exact configuration is in [1]; in summary:
- On many architecture/platform pairs, Fedora CoreOS will allow GRUB and the kernel to follow their own defaults. On x86_64, this causes the graphical console to be selected, even if no video card is available. In particular, *x86_64 bare metal installs will no longer use a serial console by default*.
- On platforms that expect specific system consoles to be used, such as AWS, Azure, and GCP, Fedora CoreOS will select those consoles by default.
- The QEMU image will continue to select ttyS0 as the primary console and the graphical console as secondary.
These changes will be introduced to the Fedora CoreOS `next` stream the week of October 3, `testing` the week of November 28, and `stable` the week of December 12. The changes will only affect new Fedora CoreOS installations; upgraded systems will retain their current console settings.
If the new defaults aren't appropriate for your environment, you can override them in several ways:
- For bare metal machines installed with coreos-installer 0.16.0+, use the `--console` install option to specify the desired consoles using kernel command-line syntax [2]. This will configure both the GRUB bootloader and the kernel. For example, to retain the previous console behavior, install with `--console tty0 --console ttyS0,115200n8`. To customize the --console parameter in a live image, use `iso customize --dest-console` or `pxe customize --dest-console`.
- For machines launched directly from an OS image, use the Butane kernel_arguments section to configure the desired console kernel arguments. For example:
variant: fcos version: 1.4.0 kernel_arguments: # Order is significant, so treat these as a single argument should_exist: ["console=tty0 console=ttyS0,115200n8"]
Note that this will not affect the consoles used by the bootloader.
- For the unusual case of a virtual machine installed with coreos-installer, be sure to use the `--platform` install option to specify the virtualization platform, such as `vmware`. coreos-installer 0.15.0+ will automatically configure the default console for that platform.
If the Fedora CoreOS console configuration is important for your environment, please test the new defaults in the `next` stream after October 6. If you have any questions or concerns, contact us in #fedora-coreos on Libera.Chat or open an issue in the Fedora CoreOS tracker [3].
--Benjamin Gilbert, for the Fedora CoreOS team
[1]: https://github.com/coreos/fedora-coreos-config/pull/1781/files [2]: https://www.kernel.org/doc/html/v4.14/admin-guide/serial-console.html [3]: https://github.com/coreos/fedora-coreos-tracker/issues/new/choose
coreos-status@lists.fedoraproject.org