View previous topic :: View next topic |
Author |
Message |
davidshen84 Guru
Joined: 09 Aug 2008 Posts: 314
|
Posted: Sat Nov 04, 2023 7:54 am Post subject: systemd-vconsole-setup starts before root is mounted |
|
|
Hi,
I have edited my /etc/vconsole.conf file with:
Code: | KEYMAP=/usr/local/share/keymaps/personal.map
|
When I boot, I saw an error message relating to the "systemd-vconsole-setup.service" unit. In the journal, I can see these messages:
Code: |
Nov 04 18:37:20 localhost systemd-vconsole-setup[416]: loadkeys: Unable to open file: /usr/local/share/keymaps/personal.map: No such file or directory
Nov 04 18:37:20 localhost systemd-vconsole-setup[414]: /usr/bin/loadkeys failed with exit status 1.
Nov 04 18:37:20 localhost systemd[1]: systemd-vconsole-setup.service: Main process exited, code=exited, status=1/FAILURE
Nov 04 18:37:20 localhost systemd[1]: systemd-vconsole-setup.service: Failed with result 'exit-code'.
Nov 04 18:37:20 localhost systemd[1]: Failed to start systemd-vconsole-setup.service.
Nov 04 18:37:21 gentoo systemd[1]: Finished systemd-vconsole-setup.service.
Nov 04 18:37:21 gentoo systemd[1]: systemd-vconsole-setup.service: Deactivated successfully.
|
The file at "/usr/local/share/keymaps/personal.map" does exist, and it seems the service failed to load it, tried a few times and eventually succeeded.
I suspect the service tried to load that file before the root filesystem is mounted.
Should I include keymap files in initramfs? Or is there's a way to delay starting this service?
Thanks _________________ David Shen |
|
Back to top |
|
|
alamahant Advocate
Joined: 23 Mar 2019 Posts: 3882
|
Posted: Sat Nov 04, 2023 10:10 pm Post subject: |
|
|
According to the service file
Code: |
[Unit]
Description=Virtual Console Setup
Documentation=man:systemd-vconsole-setup.service(8) man:vconsole.conf(5)
ConditionPathExists=/dev/tty0
DefaultDependencies=no
Before=sysinit.target
Before=initrd-switch-root.target shutdown.target
[Service]
Type=oneshot
# This service will be restarted by udev whenever a new vtcon device appears.
# If the previous instance is still running, it shall be interrupted without
# error.
SuccessExitStatus=SIGTERM
RemainAfterExit=yes
ExecStart=/usr/lib/systemd/systemd-vconsole-setup
ImportCredential=vconsole.*
|
It is supposed to start very early @boot process.
Maybe include the map file in the initramfs. _________________
|
|
Back to top |
|
|
davidshen84 Guru
Joined: 09 Aug 2008 Posts: 314
|
Posted: Sat Nov 11, 2023 9:07 am Post subject: |
|
|
Yeah. I just found out I should include that file in the initramfs. _________________ David Shen |
|
Back to top |
|
|
|