My system does not show log in entreis for linux, nor will log in chroot with iv usb

Hey guys

I was updating my system today. And out of nowhere my laptop freezes.
I tried to reboot it and in my systemd-boot menu I could only log into the windows or bios menu.

I plugged in a liv eos usb and tried to chroot into my system to repair the sytemd boot menu. But it won’t chroot and shows error.

See below.

[liveuser@eos-2023.05.28 ~]$ lsblk -f
NAME        FSTYPE   FSVER            LABEL       UUID                                 FSAVAIL FSUSE% MOUNTPOINTS
loop0       squashfs 4.0                                                                     0   100% /run/archiso/airootfs
sda                                                                                                   
├─sda1                                                                                                
└─sda2      ntfs                      Data        ACB8E6D1B8E6995A                                    
sdb         iso9660  Joliet Extension EOS_202305  2023-05-28-11-02-36-00                              
├─sdb1      iso9660  Joliet Extension EOS_202305  2023-05-28-11-02-36-00                     0   100% /run/archiso/bootmnt
└─sdb2      vfat     FAT16            ARCHISO_EFI 5770-579C                                           
nvme0n1                                                                                               
├─nvme0n1p1 vfat     FAT32            SYSTEM_DRV  BE06-D24C                                           
├─nvme0n1p2                                                                                           
├─nvme0n1p3 ntfs                      Windows-SSD F8E80860E808200C                                    
├─nvme0n1p4 ntfs                      WINRE_DRV   EE14095214091EE9                                    
├─nvme0n1p5 vfat     FAT32                        3E4E-89BF                                           
├─nvme0n1p6 ext4     1.0              endeavouros 3d03e897-6bf0-4063-b681-cbac7e9e3ccf                
└─nvme0n1p7 swap     1                            0a30e8fb-f0b9-4a9a-a0b3-736c894653e2                

sudo mount /dev/nvme0n1p6 /mnt
[liveuser@eos-2023.05.28 ~]$ sudo cat /mnt/etc/fstab 
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
#
# <file system>             <mount point>  <type>  <options>  <dump>  <pass>
UUID=3E4E-89BF                            /efi           vfat    defaults,noatime 0 2
UUID=3d03e897-6bf0-4063-b681-cbac7e9e3ccf /              ext4    defaults,noatime 0 1
tmpfs                                     /tmp           tmpfs   defaults,noatime,mode=1777 0 0

sudo mount /dev/nvme0n1p5 /mnt/efi
[liveuser@eos-2023.05.28 ~]$ sudo arch-chroot /mnt
chroot: failed to run command ‘/bin/bash’: Exec format error

I’m stuck here.

And below are my mount points

[liveuser@eos-2023.05.28 ~]$ lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
loop0         7:0    0   1.7G  1 loop /run/archiso/airootfs
sda           8:0    0 931.5G  0 disk 
├─sda1        8:1    0    16M  0 part 
└─sda2        8:2    0 931.5G  0 part 
sdb           8:16   1    29G  0 disk 
├─sdb1        8:17   1   1.8G  0 part /run/archiso/bootmnt
└─sdb2        8:18   1   111M  0 part 
nvme0n1     259:0    0 476.9G  0 disk 
├─nvme0n1p1 259:1    0   260M  0 part 
├─nvme0n1p2 259:2    0    16M  0 part 
├─nvme0n1p3 259:3    0 182.7G  0 part 
├─nvme0n1p4 259:4    0  1000M  0 part 
├─nvme0n1p5 259:5    0  1000M  0 part /mnt/efi
├─nvme0n1p6 259:6    0 272.7G  0 part /mnt
└─nvme0n1p7 259:7    0  19.3G  0 part 

Any ideas on what I can do?

Welcome back @culcal :wave: :sunglasses: :enos_flag:

From the Arch Wiki, it says:

Note: If you see the error:

  • chroot: cannot run command '/usr/bin/bash': Exec format error, it is likely that the architectures of the host environment and chroot environment do not match.

Are you able to confirm your Live ISO environment and the chroot environment match? (eg: amd64, arm)

I’m not sure how to check it. But I’m sure it’s not an amd system.

I have used the same live iso to chroot last time I had problems.
I don’t know if it is the EOS iso that is buggy, my labtop or my usb drive. When I log on to my live system, I sometimes have to choose default and other nvidia to log on.

sam said, I still use my old iso, and when I made it back in the day, I tried to make it in different ways to avoid it becoming buggy. But regardless, the iso behaved in the same way. But it worked for installing EOS and for chrooting.

AMD64 is synonymous with x86_64. It’s just AMD who created the spec that Intel also uses now. So… same same. This superceded what’s now often referred to as i686 (32bit).

In terms of checking it:

uname -m

Might output something like:

x86_64

The next obvious question though, is how to check what architecture the environment you’re trying to chroot to is using, without first chroot’ing to it…

I don’t have a definitive answer to that, but I did notice my /etc/makepkg.conf file specifies my system architecture. I’m not sure if that’s a reliable indicator. If you can locate that file on your failed system drive, perhaps let us know what the line CARCH= says (around line #38).

Eg:

CARCH=“x86_64”

Ok thanks.

uname -m

shows

x86_64

And I can see the files on my EOS installation through my file manager from my live usb.

And when I navigate to /etc/makepkg.conf I have two files, they don’t say anything. One file is called fortran.conf and the other is called rust.conf

So it looks like I have access to my home and other files.

Ok, I think I approx. know what the problem is.
There is something wrong with pacman because it was interrupted while updating.

I found this link https://wiki.archlinux.org/title/Pacman#Q:I_get_an_error_when_updating:.22file_exists_in_filesystem.22.21

But I can’t do anything because I can’t chroot. I think it’s because I have to manually repair some files that are broken.

I tried to open a terminal on my EOS installation through my file browser in the live iso. I don’t have access to root, but I have access to pretty much all other files home etc.

The terminal opened in the mnt folder and I tried to update my EOS installation with sudo pacman -Syu, last in the update it failed and it did not update the system, I also tried to do it through my home folder and it also failed.

The terminal shows that there are some files that are broken since it will not update.

So now I’m getting closer to what the problem is, but stuck here.

Would it help if I copy and paste the errors the terminal shows when it tries to update my EOS system?

The file you’re after to see if we can verify the installed environment is etc/makepkg.conf, but where that is will be relative to where you’ve mounted your original system drive. Something like:

/some-mountpoint/etc/makepkg.conf

Where you’re running a pacman update doesn’t really matter. You’ll only be updating (or attempting to update) the live ISO, and there are space limitations which will probably cause that to fail. This is unless you’ve successfully run arch-chroot.

At this point, if arch-chroot can not be run, you might need to back up all important data from your old installation to an external drive, and start fresh.

You’re probably right.
I don’t like Calamares. I have to find out how Calamares works, so I can create a separate home and swap partition.
Last time I did swap after I had installed EOS.

But with all the time it will take to fix this problem, it’s probably faster to do a new installation.

You can easily do that on the install using manual partitioning.