Old desktop pc (app 12 years old, i5 3 series cpu) running Manjaro Cinnamon edition, kernel: 5.15.167-1
After a 4 month road trip came back home and switch on pc - all good working fine, but had 2.3gb of update to do. I was a bit worried because it’s been a long time since last update, but what else can I do - I wasn’t here. Anyway the updates installed fine except for an error with ‘VirtualBox’ vnc module.
However after I rebooted the pc it go stuck after ‘Grub’ with the following text on a black background
‘Loadknap: short read
/dev/sda3: clean, 568059/6291456files, 6917823/25165824 blocks
[FAILED] Failed to start Virtual Console Setup.’ I re-booted a few more times and tried the fold-back option, but no change.
Please note that the above error message appears always for a second or two and then the system loads as normal. what should I do?
So:
you are not unable to boot?
But that’s what your title says.
Yes i’m unable to boot. To clarify, what I meant to say is that PRIOR to today the same error message flashes on the screen for 1 second and then the computer continues booting to a working pc.
I’d do the standard procedure:
- boot Manjaro from USB
- chroot (
manjaro-chroot -a
) - refresh mirrors and run the update again - if only to see again the exact source of error, to then be able to address that or ask about it
Check the available disk space - it is just speculation on my part, but: make sure there is enough to work with.
points to at least one damaged file - or to a faulty drive
(or some other reason … it would all be speculation as of now)
Since my last post I also encountered what looked like a hardware issue. I switch on the pc, the fans kicked in but instead of the usual single post beep, I got a single long beep? and just a black screen!? I googled the ‘beep’ codes for Award bios but there was no listing for a single long beep? Anyway I open the box dusted the fans, checked all the connectors, re-seated the RAM and Graphics card. Close the box, connect everything, switch on = Hear the single short post beep but screen till blank. Then the monitor displays a text ‘No input Check cable’ Replaced the cable, replaced the Manjaro HD with another one containing Windows 7. Switch on computer - all good windows loads fine - Hardware issue seems solved.
Put back Manjaro HD switch on - alas no change stops at exactly the same point as before.
I already did refresh the mirrors before the update.
When you say to boot with a USB, Do you mean running a ‘Live’ instance of Manjaro (I do have a USB with manjaro on it), but If I open a terminal from within the ‘Live’ version, don’t I just interact with the live version? I can probably look at the files on the HD and edit/delete them, but how do I run a command on a system that is not running? Could you elaborate on the command 'chroot (manjaro-chroot -a)
I also have a ‘Rescuezilla’ image of the HD from 01 May 2024 that I could restore but it’s probably too old. The only other option would be to re-install a current version and copy data across - I leave that for last.
Problems with virtualbox packages might have been mentioned in update announcements
Could you elaborate on the command 'chroot (manjaro-chroot -a)
GRUB/Restore the GRUB Bootloader - Manjaro
Chroot environment
Chroot is a method to restrict various tasks to a restricted area e.g. package installation and other system maintenance tasks. Follow the link to read more about chroot on the Arch wiki.
Use manjaro-chroot
Manjaro deploys a script called
manjaro-chroot
takes an optional argument which will search the visible devices - scan the partitions for signs of an operating system. If more than one Linux operating system is found you will get a choice of which system to chroot otherwise the file /etc/fstab from the system is used to mount the partitions and chroot into this system
Yes, at first - you use it to access your defunct system.
What chroot means and how to do it is explained multiple times here in the forum and in the wiki.
From the terminal, in your live session, you can chroot into your system,
by simply typing:
manjaro-chroot -a
and proceed to repair it - run the update again, for instance.
I may elaborate, but if I keep it short, you may not understand what is happening, but just follow commands and instructions.
The more elaborate explanations are … already there.
Thanks for the explanation (i followed the link) So I assume that only ‘Pacman’ will be available for updates?
Not correct.
Every tool will be available that was/is present in your system (if there is not real damage to a lot of files).
You can also install new software - it actually is your system you are in then.
The only limitation is that you are restricted to that terminal - no GUI apps.
but pacman
is likely all you need to fix it
It should also be possible to use pamac
in CLI or pamac-manager
GUI
But I would not recommend using GUI tools in a chroot environment
Thanks all for your help, it’s getting late here in Oz I will give it a trial tomorrow.
Hi, After accessing my system with a live system and using the command manjaro-chroot -a
I get the following text:
grub-probe: error: cannot find a GRUB drive for /dev/sdc1. Check your device.map.
grub-probe: error: cannot find a GRUB drive for /dev/sdc1. Check your device.map.
==> Mounting (ManjaroLinux) [/dev/sda3]
--> mount: [/mnt]
--> mount: [/mnt/home]
[manjaro-cinnamon /]#
I think the first 2 lines refer to the usb drive (sdc1) so can probably be ignored.
I don’t normally use the terminal for update/upgrade so I searched this forum and find the following command. Could you confirm that this is the command I need? or if not, let me know what command - Thanks.
[ -f /var/lib/pacman/db.lck ] && rm -f /var/lib/pacman/db.lck
pacman-mirrors -f && pacman -Syyu
update-grub
exit
followed by this text: ‘Be sure to let all of the above commands take their time and finish up. When prompted for the replacement of certain packages, be sure to answer Y
.’
Yes, confirm.
Be aware that:
- is only needed when pacman will not run because another instance has left behind the
db.lck
file, which prevents two instances running at the same time - you can omit that line
- be aware that these are actually two separate commands, chained together with
&&
It might be preferable to issue one at a time:
pacman-mirrors -f
followed by, once it is finished:
pacman -Syyu
exit
ends the chroot - you are than back in your live system and can shut down/reboot
The recommendation means:
go with the default answer/response - the default choice is always printed in capital letters (it could be N or Y)
the alternative is always given as lower case
… always go with the default (just hit Enter) - if you don’t specifically know, that and why you would not want to go with the default
In essence: don’t think too much - just hit Enter
Followed the instructions
updated the mirrors, then
pacman -Syyu
the last line of text said ‘Nothing to do’ so it was up to date.
re-start the pc (remove usb) alas no change still hangs on the same error!!
What can I try next?
to see all the messages during boot, hit ESC after the system has started booting -
you might see more and that might not be the actual error
When I looked up the error you stated:
I found this:
more specifically this post:
Failed to start Virtual console Setup error message - #23 by Nachlese
apparently my advice there solved the problem back then.
So:
what is the content of:
/etc/vconsole.conf
and, perhaps related:
what is the content of /etc/mkinitcpio.conf
the HOOKS line in particular
?
these PATHs are from within chroot
I have no idea what:
could mean or what could have caused it
Perhaps it is also time for you to provide hardware info:
inxi -zv8
but this one not from within chroot, please
copy/paste, the format using </>
this issue is known and in length discussed here: Failed to start Virtual console Setup error message
There are many ways a Linux machine can boot. Most likely if you fail to a graphical environment like Cinnamon, most say the boot fails. However, you might be able to boot into a TTY. To force a boot into a TTY you can temporally edit the grub boot entry. To do that:
- hit ESC to see the boot options of grub
- select the entry you want to boot but press E for edit
- search for the line which has
splash quiet
in it and remove those words. You can write 3 instead for a TTY session - hit CTRL+X to start that session
Then login with your user and password. You can then do similar things as in the chroot, if it is able to boot so far. Else you have to use the rescue solution.
You should check /var/log/pacman.log
to see which packages got updated. Also check if you ran out of space and somehow only partly files got added to your system. It is recommended to do a backup of your personal files before analyzing the situation further.
If changing mkinitcpio.conf helps do it.
Hi I don’t seem to be able to get the files you ask for from within ‘chroot’ even with using ‘sudo’
[manjaro@manjaro-cinnamon ~]$ manjaro-chroot -a
grub-probe: error: cannot find a GRUB drive for /dev/sdc1. Check your device.map.
grub-probe: error: cannot find a GRUB drive for /dev/sdc1. Check your device.map.
==> Mounting (ManjaroLinux) [/dev/sda3]
--> mount: [/mnt]
--> mount: [/mnt/home]
[manjaro-cinnamon /]# /etc/vconsole.conf
bash: /etc/vconsole.conf: Permission denied
[manjaro-cinnamon /]# sudo /etc/vconsole.conf
sudo: unable to find terminal name for device 136, 1
sudo: /etc/vconsole.conf: command not found
[manjaro-cinnamon /]# etc/mkinitcpio.conf
bash: etc/mkinitcpio.conf: Permission denied
[manjaro-cinnamon /]#
However using the file manager from within the ‘Live’ session, I can navigate to the files and copy/paste the content here.
/etc/vconsole.conf ‘KEYMAP=us’
/etc/mkinitcpio.conf
# vim:set ft=sh
# MODULES
# The following modules are loaded before any boot hooks are
# run. Advanced users may wish to specify all system modules
# in this array. For instance:
# MODULES=(usbhid xhci_hcd)
MODULES=()
# BINARIES
# This setting includes any additional binaries a given user may
# wish into the CPIO image. This is run last, so it may be used to
# override the actual binaries included by a given hook
# BINARIES are dependency parsed, so you may safely ignore libraries
BINARIES=()
# FILES
# This setting is similar to BINARIES above, however, files are added
# as-is and are not parsed in any way. This is useful for config files.
FILES=()
# HOOKS
# This is the most important setting in this file. The HOOKS control the
# modules and scripts added to the image, and what happens at boot time.
# Order is important, and it is recommended that you do not change the
# order in which HOOKS are added. Run 'mkinitcpio -H <hook name>' for
# help on a given hook.
# 'base' is _required_ unless you know precisely what you are doing.
# 'udev' is _required_ in order to automatically load modules
# 'filesystems' is _required_ unless you specify your fs modules in MODULES
# Examples:
## This setup specifies all modules in the MODULES setting above.
## No RAID, lvm2, or encrypted root is needed.
# HOOKS=(base)
#
## This setup will autodetect all modules for your system and should
## work as a sane default
# HOOKS=(base udev autodetect modconf block filesystems fsck)
#
## This setup will generate a 'full' image which supports most systems.
## No autodetection is done.
# HOOKS=(base udev modconf block filesystems fsck)
#
## This setup assembles a mdadm array with an encrypted root file system.
## Note: See 'mkinitcpio -H mdadm_udev' for more information on RAID devices.
# HOOKS=(base udev modconf keyboard keymap consolefont block mdadm_udev encrypt filesystems fsck)
#
## This setup loads an lvm2 volume group.
# HOOKS=(base udev modconf block lvm2 filesystems fsck)
#
## NOTE: If you have /usr on a separate partition, you MUST include the
# usr and fsck hooks.
HOOKS=(base udev autodetect modconf kms keyboard keymap consolefont block filesystems fsck)
# COMPRESSION
# Use this to compress the initramfs image. By default, gzip compression
# is used. Use 'cat' to create an uncompressed image.
#COMPRESSION="gzip"
#COMPRESSION="bzip2"
#COMPRESSION="lzma"
#COMPRESSION="xz"
#COMPRESSION="lzop"
#COMPRESSION="lz4"
#COMPRESSION="zstd"
# COMPRESSION_OPTIONS
# Additional options for the compressor
#COMPRESSION_OPTIONS=()
# MODULES_DECOMPRESS
# Decompress kernel modules during initramfs creation.
# Enable to speedup boot process, disable to save RAM
# during early userspace. Switch (yes/no).
#MODULES_DECOMPRESS="yes"
Of course you can do that - but those are not the files in your system, those are the files in the live system.
The files of your system are either accessible from chroot:
cat /etc/vconsole.conf
and
cat /etc/mkinitcpio.conf
or from outside chroot (your file manager):
your system is mounted to /mnt
so:
you’ll find the files there:
cat /mnt/etc/vconsole.conf
and
cat /mnt/etc/mkinitcpio.conf
D’oh! sorry about that
vconsole.conf
[manjaro-cinnamon /]# cat /etc/vconsole.conf
KEYMAP=au
FONT=
FONT_MAP=
mkinitcpio.conf
[manjaro-cinnamon /]# cat /etc/mkinitcpio.conf
# vim:set ft=sh
# MODULES
# The following modules are loaded before any boot hooks are
# run. Advanced users may wish to specify all system modules
# in this array. For instance:
# MODULES=(piix ide_disk reiserfs)
MODULES=()
# BINARIES
# This setting includes any additional binaries a given user may
# wish into the CPIO image. This is run last, so it may be used to
# override the actual binaries included by a given hook
# BINARIES are dependency parsed, so you may safely ignore libraries
BINARIES=()
# FILES
# This setting is similar to BINARIES above, however, files are added
# as-is and are not parsed in any way. This is useful for config files.
FILES=()
# HOOKS
# This is the most important setting in this file. The HOOKS control the
# modules and scripts added to the image, and what happens at boot time.
# Order is important, and it is recommended that you do not change the
# order in which HOOKS are added. Run 'mkinitcpio -H <hook name>' for
# help on a given hook.
# 'base' is _required_ unless you know precisely what you are doing.
# 'udev' is _required_ in order to automatically load modules
# 'filesystems' is _required_ unless you specify your fs modules in MODULES
# Examples:
## This setup specifies all modules in the MODULES setting above.
## No raid, lvm2, or encrypted root is needed.
# HOOKS=(base)
#
## This setup will autodetect all modules for your system and should
## work as a sane default
# HOOKS=(base udev autodetect block filesystems)
#
## This setup will generate a 'full' image which supports most systems.
## No autodetection is done.
# HOOKS=(base udev block filesystems)
#
## This setup assembles a pata mdadm array with an encrypted root FS.
## Note: See 'mkinitcpio -H mdadm' for more information on raid devices.
# HOOKS=(base udev block mdadm encrypt filesystems)
#
## This setup loads an lvm2 volume group on a usb device.
# HOOKS=(base udev block lvm2 filesystems)
#
## NOTE: If you have /usr on a separate partition, you MUST include the
# usr, fsck and shutdown hooks.
HOOKS=(base udev autodetect modconf kms block keyboard keymap consolefont resume filesystems fsck)
# COMPRESSION
# Use this to compress the initramfs image. By default, gzip compression
# is used. Use 'cat' to create an uncompressed image.
#COMPRESSION="gzip"
#COMPRESSION="bzip2"
#COMPRESSION="lzma"
#COMPRESSION="xz"
#COMPRESSION="lzop"
#COMPRESSION="lz4"
#COMPRESSION="zstd"
# COMPRESSION_OPTIONS
# Additional options for the compressor
#COMPRESSION_OPTIONS=()
# MODULES_DECOMPRESS
# Decompress kernel modules during initramfs creation.
# Enable to speedup boot process, disable to save RAM
# during early userspace. Switch (yes/no).
#MODULES_DECOMPRESS="yes"
au
is not a valid keymap
What your keyboard layout really is is something only you know
but probably us
read the thread I linked to
list the valid keymaps (scroll using arrow keys):
localectl list-keymaps
change what you have now to something valid - or comment out that line (put a #
in front of it)
in fact: comment out all three lines
the default will then be used
mkinitcpio -P
grub-mkconfig -o /boot/grub/grub.cfg
update-grub
which would do the same
might not work in chroot