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