You are not logged in.
Hi all,
I have recently installed Arch on my new build (with UEFI firmware). I successfully set up xorg, alsa/pulseaudio, xfce, etc... things were looking pretty good. Then, I tried to blacklist the pcspkr in order to silence the annoying beep every time I selected "Log Out" inside xfce. I executed
mkinitcpio -p linux
and was presented with the following errors:
==> Building image from preset: 'default'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-fallback.img -S autodetect
==> ERROR: specified kernel image does not exist: `/boot/vmlinuz-linux'
==> Building image from preset: 'fallback'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-fallback.img -S autodetect
==> ERROR: specified kernel image does not exist: `/boot/vmlinuz-linux`
There were no such files anywhere on /boot. I tried doing
find / -name vmlinuz-linux
and nothing was found. I wasn't quite sure why that was happening, but I tried uninstalling/reinstall grub (grub-common and grub2-efi-x86_64). I installed grub to /boot using
grub-install --directory=/usr/lib/grub/x86_64-efi --target=x86_64-efi --efi-directory=/boot --bootloader-id="Arch Linux" --boot-directory=/boot --recheck --debug
and then generated /boot/grub/grub.cfg. I tried rebuilding the initramfs again but got the same error. I was tired and frustrated so I removed the old grub efi entry with
efibootmgr -b 0 -B
and then went to sleep.
I didn't have the chance to turn the computer back on until tonight... I was then presented with a grub2 shell. Since I didn't know where the kernel/initrd were located I tried
set root=(hd1,gpt1)
chainloader +1
but grub told me
error: invalid EFI file path
So that's about it. It appears that grub-mkconfig is having trouble locating the kernel/initrd so it doesn't make any entries, dropping me right into a shell. I've tried booting up with my installation USB and chrooting in and reinstalling grub again but nothing seems to work. So what I'd like to try to do is just boot up into my system and then modify add the grub boot entries entries I want... but I just can't figure out what's causing all these issues.
Sorry if I mess up any terminology... still learning the ropes here. Thanks for any input.
Last edited by cogeary (2012-09-17 05:35:51)
Offline
==> ERROR: specified kernel image does not exist: `/boot/vmlinuz-linux'
Probably because you have a separate boot partition (not just the 512 MB "UEFISYS" FAT32 partition), which you forgot to mount (in fstab).
Post your /etc/fstab.
I have made a personal commitment not to reply in topics that start with a lowercase letter. Proper grammar and punctuation is a sign of respect, and if you do not show any, you will NOT receive any help (at least not from me).
Offline
==> ERROR: specified kernel image does not exist: `/boot/vmlinuz-linux'
Probably because you have a separate boot partition (not just the 512 MB "UEFISYS" FAT32 partition), which you forgot to mount (in fstab).
Post your /etc/fstab.
Thank you for your reply!
However, I do not have a separate boot partition apart from the "UEFISYS" partition. Here is my fstab:
# UUID=3ec307aa-0ead-4d33-b292-42bbe783d6ee
/dev/sda2 / ext4 rw,relatime,data=ordered 0 1
# UUID=B192-6C57
/dev/sda1 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=cp437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 2
When I first looked at the fstab I saw that both of the entries repeated themselves. This was because I had even tried reformatting /boot so I had to generate a new fstab, but for some reason I used ">> /mnt/etc/fstab" rather than "> ..."
So I executed
genfstab /mnt > /mnt/etc/fstab
and reinstalled grub, but still no difference... mkinitcpio fails and I reboot to a grub shell.
Last edited by cogeary (2012-09-16 18:15:51)
Offline
So you have a combined EFI/boot partition? That is, you do have a separate /boot (separate from /) but it is identical to your EFI partition?
Do you know if that set up can work? That is, can grub use a /boot which is formatted as fat 32?
The usual set up, I think, is to mount the efi partition at /boot/efi. (Whether /boot is separate from / or not.)
CLI Paste | How To Ask Questions
Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L
Offline
So you have a combined EFI/boot partition? That is, you do have a separate /boot (separate from /) but it is identical to your EFI partition?
Do you know if that set up can work? That is, can grub use a /boot which is formatted as fat 32?
The usual set up, I think, is to mount the efi partition at /boot/efi. (Whether /boot is separate from / or not.)
Well, it worked for me for a day or so before I messed it all up.
Looking at the Arch documentation for grub-efi, I am seeing that mine is not the usual setup. However, I loosely followed a guide that installed grub on /boot, which was the EFI partition, so it seems that others have had it work that way.
I will probably try the "usual" setup and see how it goes, but since I've tried installing grub without success the same way I installed it will success originally, I don't think that's my problem.
Thanks!
Offline
try to mount /boot paritition manually.
Offline
try to mount /boot paritition manually.
What do you mean? Mount it before running grub-install (while booted into the install disk)? I already do that...
mount /dev/sda1 /mnt/boot
Mount it while in grub shell? How would that work, and what would that accomplish?
Offline
if your /boot partition was mounted and ls command don't show vmlinuz-linux, i think /boot partition wasn't mounted when you were installing system (pacstrap /mnt base base-devel).
if that mount your /boot partition and reinstall kernel (pacman -S linux) then install grub-efi.
Offline
if your /boot partition was mounted and ls command don't show vmlinuz-linux, i think /boot partition wasn't mounted when you were installing system (pacstrap /mnt base base-devel).
if that mount your /boot partition and reinstall kernel (pacman -S linux) then install grub-efi.
Thank you so much! Everything is working now. I'm still a bit puzzled why it didn't give me the errors right after I installed arch, but I must have messed up somewhere...
Many thanks to those that have helped.
Offline
I've had this problem before, i fixed by using this commands
pacman -S linux
I guess somehow it didn't install correctly using
pacstrap
Offline