List the current partition structure of the hard drive on which you want to install Arch:
1 | lsblk |
The commands listed below assume the following:
/dev/sda
,/
, one for /home
, and
one for Swap space, andIf your setup deviates from these assumptions, then you will need to change it accordingly.
To partition and format your drive run:
1 | cgdisk /dev/sda |
This is a version of cfdisk
that creates GPT partition tables. It works pretty
much like cfdisk
. In most cases, you can ignore the warning about damages GPT
structures. Ensure that free space
is selected in the the partition list, then
invoke the New
action.
A quick digression... There is 2 ways that the partitioning can go at this
point, in my experience. If the First Sector
of the new partition is set to a
default value of 2048 it means that the tool will leave 1007Kb of free space at
the front of the drive. This is fine at this point and the we will use that free
space later. If the First Sector
of the new partition is set to a default of
value of 34 it means that you will need to allocate a small BIOS Boot partition
at the beginning of the drive with a size of 1007Kb. Below we set the BIOS boot
partition now before the other partitions.
Create a small BIOS boot partition with the following settings:
Create a /
root partition with the following settings:
Create a swap partition with the following settings:
Create a /home
partition with the following settings:
Now select the Write
action in cgdisk
and confirm by typing yes
and then
Quit
. Now you can check the partition structure again by running lsblk
. We
expect to see something like this:
1 2 3 4 5 6 | NAME SIZE TYPE sda 1TB disk |- sda1 1007K part |- sda2 200G part |- sda3 16G part \- sda4 784G part |
At this point you have a new partition table written to the disk. But to make it
useful, you will also need to create a file system in each partition. In our
example, we will leave the /dev/sda1
BIOS boot partition untouched. Make a
usable file system for our Linux partitions:
1 2 | mkfs.ext4 /dev/sda2 mkfs.ext4 /dev/sda4 |
Then create and activate the swap area:
1 2 | mkswap /dev/sda3 swapon /dev/sda3 |
Check everything is nice and tight:
1 | lsblk /dev/sda |
Now you can mount the newly created local hard disk:
1 | mount /dev/sda2 /mnt |
You should also create a mount point for /home
and mount it now:
1 2 | mkdir /mnt/home mount /dev/sda4 /mnt/home |
At this point you are ready to install the base system with the
pacstrap
script.