Another MBR --> UEFI question, sorry

I did a fresh install of tumbleweed today on a new ssd. I decided to install it on another computer while using virtualbox with a physical harddrive(the new ssd). I then transfered the ssd to it’s new tower. Unfortunately I now realize that it installed a MBR instead of UEFI. This is also my first time trying out brtfs on / and xfs on /usr. Is there any easy way to convert MBR to UEFI? I am ok live editing partitions, but I do not want future errors as a result. If reinstall is the only recourse, I might do it in a month. Apart from driving me nuts due to being outdated, is there any reason I should fuss about having a MBR? I had mistakenly thought the bios boot partition was the UEFI as I have never dealt with a bios boot partition before.

I’m sorry that this has been mentioned before, often with complicated setups and multiple operating systems booting. I did not find a simple answer, and have no experience with brtfs or xfs ( I know I cannot extfs grow, shink, etc.) Very little was edited from the default installation except I dropped srv from brtfs(other harddrive), didn’t do a home, but instead a usr.

openSUSE is the only system, installed today.

There is another harddrive on the system, also booting openSUSE(to be removed later). It is possible to copy partitions with enough space into files and put them back(500gb ssd vs 3tb mechanical). But again, no experience with brtfs.

Linux asrock 4.19.1-1-default #1 SMP PREEMPT Sun Nov 11 09:17:28 UTC 2018 (5bec309) x86_64 x86_64 x86_64 GNU/Linux

fdisk -l
Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
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: 8A6675F9-0702-4E4F-9F34-DE39A6BA883F

Device         Start       End   Sectors   Size Type
/dev/sda1       2048     18431     16384     8M BIOS boot
/dev/sda2      18432  83904511  83886080    40G Linux filesystem
/dev/sda3   83904512 188762111 104857600    50G Linux filesystem
/dev/sda4  188762112 959995903 771233792 367.8G Linux filesystem
/dev/sda5  959995904 976773134  16777231     8G Linux swap

Not really, you need a ~260MB type ef00 partition for the UEFI files, this is mounted as /boot/efi and formated to vfat…


sda      8:0    0 119.2G  0 disk 
├─sda1   8:1    0   260M  0 part /boot/efi
├─sda2   8:2    0    40G  0 part /
├─sda3   8:3    0    75G  0 part /data
└─sda4   8:4    0     4G  0 part [SWAP]

gdisk -l /dev/sda

GPT fdisk (gdisk) version 1.0.4

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
Model: OCZ-VERTEX4     
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 5248C783-2290-4376-8D09-1B0AF7D3379D
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 250069646
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048          534527   260.0 MiB   0700  EFI System
   2          534528        84420607   40.0 GiB    8300  Linux filesystem
   3        84420608       241707007   75.0 GiB    8300  Linux filesystem
   4       241707008       250069646   4.0 GiB     8200  Linux swap

It depends on what you mean by “easy”. And that depends on your linux experience.

You will need to redo the grub setup. And that requires booting with UEFI – normally, booting the installer to rescue mode is fine for this.

If you need guidance, just ask.

I’ll add to what Malcolm has already said. You will need an EFI partition. If you already have one (might be for Windows), you can probably use that. The same EFI partition can be shared by several operating systems.

The EFI partition need not be on your SSD. Putting it somewhere else would also work. It is not used except for booting or for reinstalling grub (happens occasionally with during updates). The speedup from putting the EFI partition on your SSD is probably too small to notice. So if you have space elsewhere, put it there.

It needs to be mounted at “/boot/efi”. So you need an entry to mount it in “/etc/fstab”.

And this another instance is using EFI boot? Will this harddrive remain after you fixed booting new instance on SSD?

Thanks for the responses, more than I expected so soon.

There is no other operating system on the sdd, bought it new as of Friday. No existing EFI partition(I based my config on the openSUSE defaults).

I am thinking I should pull the ssd and use another linux computer to run gparted; Resize btrfs(older forum posts on google advised against this), and reduce it by 200mb, then bump both the btrfs / and bios boot partitions toward the end of the drive. I am not sure how linux takes moving the kernel these days. Then sticking the 200mb UEFI at the front. Unless software exists within openSUSE that would let me do it on an ‘offline’ drive and with only a console(Usually runs headless but does have a poor monitor and keyboard). The mechanical drive in the computer will likely stay for at least 12 months(and does have a UEFI partition currently booting openSUSE). Though, I would appreciate the freedom to remove and replace the second drive.

Not sure what my idea of difficult is, I did have some trouble with ipv6.

If it was a fresh install, why do not you simply reinstall it again using EFI? You do not have anything to lose. It will be the most easy and simple solution.

P.S. and do you actually need EFI in the first place? Cannot you simply boot from SSD in legacy BIOS?

I’ll agree with arvidjaar here. If you have nothing else on the system, then reinstall is going to be easier than messing around with shrinking the “btrfs” partition. Or just stick with MBR booting for now.

Some time ago I succeeded in converting my main machine from mbr to gpt, bios to uefi and HDD to SSD with Tumbleweed running on the old mbr/bios configuration, but I will never do this again. Based on this experience I converted another machine successfully past Friday as follows:

  • download the matching rescue system and install it on an USB stick, preferably a real USB 3.0 pen drive with a SATA controller
  • switch your main board from compatibilty mode to uefi mode and boot from pen drive
  • copy the system partition on HDD with rsync to the SSD partition
  • install the bootloader on the new system

Performing the above steps resulted in the easiest transformation I ever experienced.

Yes, I think this would be the best solution.

I do not reinstall due to about 10 hours of configurations, firewall setup, etc. I also really don’t like wickedd as I am used to a FreeBSD method of configuring. I still cannot figure out why it REQUIRES wireless data when it will not be doing any wireless what so ever, hostapd does that. I currently pulled the drive and am taking an image of it on another computer. I think I then get to bump the entire drive by 300mb starting with shrinking the swap.