Installing Linux on a UEFI boot system

Moderators: Nanook, carl

Post Reply
User avatar
Nanook
Posting Freak
Posts: 335
Joined: Tue Jun 25, 2013 10:08 pm
Location: Shoreline
Zodiac:
Contact:

Installing Linux on a UEFI boot system

Post by Nanook » Wed Aug 22, 2018 6:17 am

With a UEFI boot there are a few differences from conventional BIOS boot up requirements. First, conventional BIOS boot only works with DOS formatted drives and the DOS partition table is only capable of mapping 2gb. If you use a larger drive, only the first 2TB will be usable.

With UEFI boot, a gpt type partition table is required. This form of partition table has many advantages. GPT can support drive sizes up to 2^64 logical blocks in length. In
theory it can support 256 primary partitions but Linux without kernel modifications limits this to 16 partitions for most devices (RAID devices and some others can support
more).

Here is my recommendation for installing Linux on a drive that will be given a gpt partition table. Most Linux distribution these days include a live boot ISO that can both boot the system into Linux and install from one DVD. With your existing operating system download a copy of the live boot / install ISO and burn it to a DVD. On Macs you can use the same software that burns Mac .img files, an .img is Mac's name for a .iso and the software will work fine with an ISO.

After you have burned the DVD, backup any data on the hard drive you wish to save as you will be creating a new partition table and wiping the old.

Boot off of the DVD, when it comes up do not immediately install Linux, first invoke gparted (it is present with most distributions but if not install it), and fire it up.

Start by creating a new partition table, choose "gpt" as the partition table type.

Next create a 1MB partition with the data type set to "cleared". After the partition is created use the partition modify flags function to set the grub_bios flag.

Next create a 300MB partition (you can get away with 250MB or even smaller if your BIOS is small and you have an old 512 byte physical block disk). You should select FAT32 for the file system on this partition.

Next create a 512MB to 1GB partition with ext4 type file system. This will mount on /boot.

Next create a swap partition, you should set the file system type to "Linux Swap". This should be 2x your physical memory. If you do not create it, Linux will create a swap file but a partition keeps it in one contiguous location for better performance.

If this is a single user workstation, at this point I recommend creating a final partition with file system with a file system type of ext4, and mount point will be /.

If this is a multi user machine or server, then I suggest making the root partition around 40GB, if a large server a separate /var partition for logging, and the remainder of the space to a /home partition, all of these being ext4 file systems.

Exit gparted.

Now, if you have a static IP table, now is the time to configure the interface with the parameters of your static IP, else if you have dynamic IP, Linux will default to DHCP
to get the address. It is important that you set up networking and verify it functions (ping 8.8.8.8) before you start the install so you can install 3rd party drivers and updates concurrently.

Now you are ready to install Linux so choose the Install option. It will give you several prefab partitioning schemes, ignore them and select "Something Else".

Use the change option on each partition. On the 1MB cleared partition, make sure the system knows it is the grub_bios partition.

Next use change on the fat32 partition and make sure it is set to EFI System Disk.

Select the 512M-1GB boot partition and set the file system type to EXT4 and the mount point to /boot. It is not necessary to format because gparted already did that.

You can ignore the swap, Linux will see the file system type and use it appropriately automatically.\

Next select the remaining partitions and set the file system type to EXT4 and the mount points as you desire.

Exit the partitioner. Next it will ask where to write the boot block, tell it the drive that you just partitioned, i.e., /dev/sda or whatever.

It will then ask a series of questions such s keyboard layout, language, time zone, the name of your computer, an account login and password, and a root password, and then it will proceed to copy files and install. When it finishes, remove the DVD and reboot.

Play .. or work if you must.



Post Reply

Who is online

Users browsing this forum: No registered users and 2 guests