You are not logged in.

#1 2020-11-15 14:37:01

ynikitenko
Member
From: Aachen, Germany
Registered: 2020-11-15
Posts: 44
Website

[SOLVED] UEFI doesn't recognise SSD on an Acer laptop

I'm installing Arch Linux on my Acer Swift 5 laptop, and it seems that my UEFI doesn't see my SSD. During the installation (I used the most recent archiso) everything is mounted fine, but later only USB can be booted, not SSD. That's why I think this is connected to BIOS and the drive (not my EFI installation - but anyway my EFI System Partition is FAT32 formatted 500Mb, and `parted` flags that as a bootable ESP).

The BIOS data is the following:
System BIOS version: v1.13
HDD model name: Samsung SSD 860 EVO M.2, 500Gb. It seems that I installed this SSD myself several years ago.
SATA Mode: AHCI (anyway I see no way to change that).
I enabled and disabled Secure Boot, changed Boot priority order. The Boot mode is UEFI.
When with some changes I try to "Select an UEFI file as trusted", it still doesn't show my SSD (only USB when the key is inside).

I used the UEFI shell from archiso installation, this is what it shows (I retyped only the relevant, as I think, data).

UEFI Interactive Shell v2.2, EDK II, UEFI v2.50 (INSYDE Corp, 0x56131032)
Mapping table
FS0: Alias(s):BLK2 (USB)
BLK4: Alias(s):
    ../Sata(0x0,0x0,0x0)
There are also BLK{0,1,3} {USB, HD, HD}

Can't enter BLK4. When I type ''FS0:'', the Shell changes to ''FS0:\>'', but with BLK4 it doesn't enter that (remains Shell). As I understand, FS is file system, so the block device must correspond to some file system (and there is only one from the USB).

mount command is missing in that UEFI shell (it calls map).

I installed the most recent firmware update for my model from https://www.samsung.com/semiconductor/m … oad/tools/, but the issue remains.

I also checked updates for drivers from Acer.
BIOS/Firmware:
Version 1.15 provides update for Intel Microcode (I think this should not be important for SSD).
Drivers:
nothing for SSD or SATA.
https://www.acer.com/ac/en/US/content/s … .GLDER.005

I used Fedora Core on that SSD before, but I used it in Legacy mode (probably because of errors - but this time I wanted to fix it for UEFI).

Any idea what should be done to enable UEFI mode? I think the notebook is not so old, so the chance that it doesn't support UEFI on SSD is probably small (I obviously used UEFI with USB)?

Last edited by ynikitenko (2020-11-17 07:51:29)

Offline

#2 2020-11-15 14:45:02

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,461

Re: [SOLVED] UEFI doesn't recognise SSD on an Acer laptop

What bootloader/boot manager did you install? How did you configure it? What does efibootmgr -v show?

Offline

#3 2020-11-15 15:09:29

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 19,739

Re: [SOLVED] UEFI doesn't recognise SSD on an Acer laptop

As a sanity check, verify the SSD is formatted as a GPT device and not an MBR device.


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way

Offline

#4 2020-11-15 16:55:57

ynikitenko
Member
From: Aachen, Germany
Registered: 2020-11-15
Posts: 44
Website

Re: [SOLVED] UEFI doesn't recognise SSD on an Acer laptop

@Scimmia - I created a boot entry with efibootmgr and hibernation on swap partition as described here (https://wiki.archlinux.org/index.php/EFISTUB#efibootmgr). I used the options from there (efibootmgr --disk /dev/sdX --part Y --create --label "Arch Linux" --loader /vmlinuz-linux --unicode 'root=PARTUUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX resume=PARTUUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw initrd=\initramfs-linux.img' --verbose). Of course, I substituted my partition IDs.

'efibootmgr -v' gives

BootCurrent: 0001
BootOrder: 2001,2002,2003
Timeout: 0 seconds
Boot0000* bootx64efiarch PciRoot(0x0)/Pci(0x14,0x0)/USB(1,0)/HD(1,MBR,0x6f0785ce,0xa4,0x20000)/File(\EFI\boot\bootx64.efi)A01 ).
Boot0001* USB HDD: KingstonDT 101 II PciRoot(0x0)/Pci(0x14,0x0)/USB(1,0)/HD(2,GPT,30323032-3131-4130-b032-303633383130,0x14f00,0x1e000)RC
Boot2001* EFI USB Device RC
Boot2002* EFI DVD/CDROM RC
Boot2003* EFI Network RC

I remember that after I used efibootmgr, the system didn't boot, so I tried *bcfg*, as proposed on the wiki page, but found out that I couldn't access the SSD at all.

I also tried to install boot manager several times, so I think that the record bootx64efiarch comes from some previous attempt. Because EFI directory on ESP now contains a GRUB directory (with grubx64.efi). I also think that if at least one efi file is on ESP, it would be possible to choose that (but I don't know for sure, of course). As I understand EFI after reading several manuals, it is 'easy' in the sense, that one can load any file `.efi` file from the ESP. So if there exists a proper ESP, EFI must know about that.

@ewaller - yes, I checked that it is GPT. I think esp flag wouldn't be available on an MBR disk, but I can't be sure. Anyway that is GPT.

Offline

#5 2020-11-15 20:42:30

ynikitenko
Member
From: Aachen, Germany
Registered: 2020-11-15
Posts: 44
Website

Re: [SOLVED] UEFI doesn't recognise SSD on an Acer laptop

I installed the most recent BIOS update (which is Intel microcode - I doubted that it would help, but why not to improve the leaky CPU).
I also reset BIOS settings to defaults (as I understand, that is the only software method to 'reset' BIOS - that was proposed several times on the internets).
The answer is that nothing from this helped.

I won't take out the CMOS battery though, because I don't want to mess with hardware and I don't have a good screwdriver here.

Offline

#6 2020-11-16 07:30:56

ynikitenko
Member
From: Aachen, Germany
Registered: 2020-11-15
Posts: 44
Website

Re: [SOLVED] UEFI doesn't recognise SSD on an Acer laptop

I formatted the ESP as FAT16 and created a directory EFI there. Unfortunately, the new FS didn't appear in the UEFI shell.
I tried to format the ESP as FAT12, but mkfs.vfat refused to do that ('Attempting to create a too large filesystem'), since the size of my partition is 524MB.
It looks like it's not possible to use EFI with my SSD, but maybe someone has other suggestions.

Offline

#7 2020-11-16 08:13:52

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,410

Re: [SOLVED] UEFI doesn't recognise SSD on an Acer laptop

Acers can be a bit weird. Mine only retains EFI entries if added via it's own firmware menu. So you should check there first. It might be necessary to enable the Secure Boot option, booting back into the firmware, and then you should have the possibility of selecting an EFI executable as "trusted", save that, go back into the firmware and disable secure boot (unless you want to actively configure it...) again, but the created entry should stick.

Offline

#8 2020-11-16 11:20:04

ynikitenko
Member
From: Aachen, Germany
Registered: 2020-11-15
Posts: 44
Website

Re: [SOLVED] UEFI doesn't recognise SSD on an Acer laptop

I formatted the ESP back to FAT32, and launched efibootmgr (the command I quoted earlier). When I run it with '-v', it prints the new boot entry as if it exists,

Boot0001* Arch Linux HD(1,GPT,...(UUIDS))/File(\vmlinuz-linux)r.o.o.t.=(other options I provided)

and then generated boot files on ''/boot'' with ''pacman -S linux'' (I understand that maybe I should had done it before, but efibootmgr didn't complain).
Again it doesn't boot. It shows 'no bootable device' in the beginning.
In the BIOS I see no menu for 'Arch Linux', so I doubt it would appear somewhere else.

@v1del - yes, I tried to select an EFI executable as "trusted". Unfortunately, it looks like my BIOS/UEFI doesn't recognize my SSD at all. When I try to select an UEFI file as trusted, nothing is shown - as if there is no disk (I unplug the USB).
Just for reference, I found this bug in efibootmgr (https://github.com/rhboot/efibootmgr/issues/19) - it says that Acers don't preserve efibootmgr changes. It seems the case for me too, only that mine is worse.

I "restore secure boot to Factory Default" in BIOS, but it doesn't help.

Offline

#9 2020-11-16 16:02:34

Ropid
Member
Registered: 2015-03-09
Posts: 1,069

Re: [SOLVED] UEFI doesn't recognise SSD on an Acer laptop

Did you try using a boot-loader instead of directly booting the kernel image?

With for example "systemd-boot" you'll get an EFI executable with the "/EFI/Boot/BOOTX64.EFI" name inside your EFI partition. Maybe that BOOTX64.EFI file is what your UEFI looks for to decide if an EFI partition is good or not.

When you use a boot-loader instead of directly booting the kernel image, you also don't have to worry about efibootmgr not working right on your UEFI. The kernel command line options you need will come out of the boot-loader's config file so it then doesn't matter if the UEFI is forgetting what you do with efibootmgr.

Offline

#10 2020-11-16 16:56:54

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,410

Re: [SOLVED] UEFI doesn't recognise SSD on an Acer laptop

From how I'm interpreting the narrative, the ESP partition is not visible from the Acer's firmware. But yeah maybe populating that path helps, would be incredibly weird though

What's your output of

fdisk -l /dev/$ssddisk$

Last edited by V1del (2020-11-16 16:59:16)

Offline

#11 2020-11-16 17:03:19

ynikitenko
Member
From: Aachen, Germany
Registered: 2020-11-15
Posts: 44
Website

Re: [SOLVED] UEFI doesn't recognise SSD on an Acer laptop

Yes, I tried ''grub'' in the very beginning. Its ''.efi" was also present when I tried ''efibootmgr''. As I wrote, the UEFI could not detect anything on my ESP (and probably the partition itself). "Maybe that BOOTX64.EFI file is what your UEFI looks for to decide if an EFI partition is good or not." - I think that in that case it wouldn't show other files (there wouldn't be an option to select an .EFI for booting)? But maybe you are right. I'll test that.

Efibootmgr is not a big concern for me, because I plan to use only one OS (in the very rare case that I need FreeDOS, I use a USB for that). I also plan to use only one kernel. So I can use only UEFI boot settings and not change that (though I hope it will be updated with new installed kernel versions).

Offline

#12 2020-11-16 18:42:57

ynikitenko
Member
From: Aachen, Germany
Registered: 2020-11-15
Posts: 44
Website

Re: [SOLVED] UEFI doesn't recognise SSD on an Acer laptop

Bingo! I used grub to generate an efi file "/boot/EFI/grub/grub64.efi", and copied that to "/EFI/Boot/BOOTX64.EFI".
Now the system boots into grub menu (I didn't tune it yet), and in the UEFI shell FS1 appeared, which corresponds to my ESP.

I saw this suggestion while browsing "1000 ways to fix UEFI" scattered on the internet, but I didn't think that that was still out in the wild (for any decent and not-so-ancient UEFI). I was wrong - it seems that Acer are Windows-lovers more than I expected (or rather the company which creates their motherboard firmware). Many thanks for your suggestion, @Ropid.

@V1del - if it's still relevant, here is the output of "fdisk -l":

"""Disk /dev/sda: 465.76 GiB, 500107862016 bytes, 976773168 sectors
Disk model: Samsung SSD 860
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: BCC13655-9D64-42D6-ABCC-8A254AE2E13D

Device         Start       End   Sectors  Size Type
/dev/sda1         34      2047      2014 1007K BIOS boot
/dev/sda2    1026048 103426047 102400000 48.8G Linux filesystem
/dev/sda3  103426048 308226047 204800000 97.7G Linux filesystem
/dev/sda4  308226048 513026047 204800000 97.7G Linux filesystem
/dev/sda5  513026048 615426047 102400000 48.8G Linux filesystem
/dev/sda6  960389120 976773119  16384000  7.8G Linux swap
/dev/sda7  615426048 717826047 102400000 48.8G Linux filesystem
/dev/sda8       2048   1026047   1024000  500M EFI System

Partition table entries are not in disk order."""

I already created a BIOS boot partition this evening, and it worked without a hitch with BIOS/Legacy. I think I'll leave that for now, but mostly use the UEFI (hope it will be able to be managed reasonably). I have to add that despite a "modern" system, UEFI archiso (at least for me) boots without a logo, and also its BIOS mode offers "Hardware Information" and Memtest.

Thanks to everyone for your fast and useful advice.

I think that when I registered, I read that topics should be marked as [SOLVED], but how can I do that?..

Offline

#13 2020-11-16 20:05:00

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,410

Re: [SOLVED] UEFI doesn't recognise SSD on an Acer laptop

Glad to hear, you can mark as [SOLVED] by editing the title in the first post of the thread

Offline

#14 2020-11-18 17:21:19

ynikitenko
Member
From: Aachen, Germany
Registered: 2020-11-15
Posts: 44
Website

Re: [SOLVED] UEFI doesn't recognise SSD on an Acer laptop

Since I now have several options to boot the system, I compared their speed and would like to share the results here.

Method / Boot time (seconds)
BIOS, Grub / 22
UEFI, Grub / 16
UEFI, EFISTUB / 14

The boot time for BIOS was really slower than for UEFI. So I think that was worth it.
Apart from the boot time, of course, maybe more important was that I read lots of documentation and largely improved my knowledge. It was also an emotional experience, because when after several days of work that was solved, I felt like something heavy as a plane or a truck was suddenly lifted from me.

I marked this as [SOLVED] and removed Samsung from the title (because it appeared not relevant).

I'd also like to add that my SSD was visible when choosing a trusted EFI (which means that UEFI Shell is not required to see that, it can be done either way).

About this calculation. I counted time from the moment my laptop started to boot (directly after releasing the Power On button) to the appearance of gdm login window (with my avatar). The real times for GRUB were 5 seconds more, because I didn't press enter to load the kernel (I corrected the times above for that). I measured the times for EFISTUB 3 times: 16.65, 14.04 and 14.56 seconds. I think that the first time it was a bit slower, because I changed BIOS/UEFI settings and rebooted from there (so I dropped and repeated this measurement). Other times I booted from a powered off laptop. I didn't repeat the measurements with Grub. There was a split second in the very beginning when it showed something like "boot GRUB" and some other option. Maybe this can be eliminated in Grub and save some more time. I estimate the accuracy of my calculations and rounding as about +-1 second.

I conclude that BIOS/Legacy is perceptibly slower than UEFI. EFISTUB and GRUB are more or less similar within this precision. I prefer less programs involved, so will stay with EFISTUB for some time.

Offline

Board footer

Powered by FluxBB