LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   Slackware64 and EFI (https://www.linuxquestions.org/questions/slackware-14/slackware64-and-efi-4175492545/)

azinulbizar 01-25-2014 01:39 PM

Slackware64 and EFI
 
I've been running an EFI installation of Slackware64 since 13.37 and I'm having some serious trouble now. I've been running reiserfs for a while, but I recently decided to put linux on my Samsung 840 Pro SSD. This has led me to move my esp as well. I've moved it from /dev/sde1 to /dev/sda1. My system is 14.1, and it is the same as it was, but I'm running ext4 now instead of reiser's system.

The EFI suddenly now does not want to work. I used to use rEFInd and it was a breeze to set up previously. Now, all I get is a blinking cursor on a black screen. Why would a change in filesystem be a problem? Must be something else so:

/dev/sda1 is ef00 and is formatted to fat32.
The esp is mounted at /boot/efi.
It's been formatted and deleted a handful of times this weekend already.
The directory structure is thus:
Code:

/EFI/
/EFI/refind/
/EFI/slackware/
/EFI/boot/

I've tried the renaming strategy for refind, to force the firmware to find bootx64.efi and it doesn't work. Also, placing Shellx64.efi into /boot/efi/EFI/ does not work any more, and it's the same shell I used previously. I've tried v2, from multiple places(my board has accepted both v1 and 2 in the past).

This is weird and I'm getting to the hair-pulling stage. Any help would really be appreciated. Here's a murphy's stout to ya :p

Oh, I forgot; I'm using a Sabertooth 990fx motherboard, Revision 01.

aaditya 01-25-2014 01:51 PM

Maybe your /dev/sde was higher up in the firmware boot order than /dev/sda, so now its not able to find it?

metaschima 01-25-2014 01:51 PM

Can you post the output of 'gdisk -l /dev/sda' and '/dev/sde' as well.

azinulbizar 01-25-2014 02:15 PM

Quote:

Originally Posted by metaschima (Post 5105115)
Can you post the output of 'gdisk -l /dev/sda' and '/dev/sde' as well.

Code:

root@xibalba:~# gdisk -l /dev/sda
GPT fdisk (gdisk) version 0.8.7

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 250069680 sectors, 119.2 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): C766A951-3415-45B9-B62C-51D673C04315
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 250069646
Partitions will be aligned on 2048-sector boundaries
Total free space is 2669 sectors (1.3 MiB)

Number  Start (sector)    End (sector)  Size      Code  Name
  1            2048          526335  256.0 MiB  EF00  EFI System
  2          526336        63440895  30.0 GiB    8300  slackware
  3        63440896        78120959  7.0 GiB    8300  var
  4        78120960      250068991  82.0 GiB    8300  home

And here's /dev/sde(which is now just a copy of the old /home)

Code:

root@xibalba:~# gdisk -l /dev/sde
GPT fdisk (gdisk) version 0.8.7

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.
Disk /dev/sde: 1953525168 sectors, 931.5 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): FE28B5D1-7C86-491A-AA03-45297CD2FB48
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 1953525134
Partitions will be aligned on 2048-sector boundaries
Total free space is 2099166 sectors (1.0 GiB)

Number  Start (sector)    End (sector)  Size      Code  Name
  2        2099200      1953525134  930.5 GiB  8300  home

They're listed in the BIOS, I can view them using ASUS' ez update utility(for flashing).

Edit:

Someone may ask, here's efibootmgr output and the commands I've tried:
Code:

root@xibalba:~# efibootmgr -v
BootCurrent: 0004
Timeout: 2 seconds
BootOrder: 0000,0002,0003,0004
Boot0000* rEFInd        HD(1,800,80000,8ae67830-d143-4686-b6be-a22166a915d8)File(\EFI\refind\refind_x64.efi)
Boot0002* Hard Drive        BIOS(2,0,00)P0: Samsung SSD 840 PRO Series.
Boot0003* CD/DVD Drive        BIOS(3,0,00)P5: TSSTcorp CDDVDW SH-224BB  .
Boot0004* UEFI: TSSTcorp CDDVDW SH-224BB        ACPI(a0341d0,0)PCI(11,0)03120a000500ffff0000CD-ROM(1,10256,1b80)

I've tried using

Code:

efibootmgr -c -l \\EFI\\refind\\refind_x64.efi -L "rEFInd"
As well as using single quotes (') to avoid using double backslashes, also have used single forward slashes which has gotten me from a simple boot into the UEFI firmware to the blinking cursor on the black background. Progress of a sort, I guess.

azinulbizar 01-26-2014 04:28 PM

Well, seems I've solved this myself. For some odd reason, the esp must be created via a Windows installation. I would first lay blame with efibootmgr, however the first time I set this system up under Slackware 13.37 I used an Arch install disk and efibootmgr to compile my kernel and set up refind, however I already had the EFI partition created under Windows 8 and there is the solution. Why does the ASUS firmware need the partition to be created by Windows and what is MS doing that GParted or gdisk isn't?

Mark Pettit 01-27-2014 07:15 AM

Scratch ASUS from my list of future motherboard purchase.

granth 01-27-2014 10:50 AM

I have an ASUS board and created my efi partition using the Slackware installer. I think the problem was with your bootloader.

azinulbizar 01-27-2014 05:18 PM

Quote:

Originally Posted by granth (Post 5106178)
I have an ASUS board and created my efi partition using the Slackware installer. I think the problem was with your bootloader.

I'm not using a bootloader. I'm using EFI stub kernels. A bad bootloader wouldn't explain why it worked, then didn't simply by moving the partitions around.


All times are GMT -5. The time now is 02:59 PM.