Professional Documents
Culture Documents
md
archlinux_install_guide.md
Foundation
Partition a drive on Windows and delete it so that it's free space. Note the size since we'll
need it later.
Run parted .
Run print free to see the free space and note the Start and End points.
Create the following partitions, keeping in mind to replace the start and end values with
the appropriate numbers:
Boot: No need for this since we are dual booting and will use the Windows EFI System
Partition (ESP) directly.
/root: mkpart primary ext4 {Start}GiB {Start+20}GiB
Swap Space: mkpart primary linux-swap {Start+20}GiB {Start+21}GiB
/home: mkpart primary ext4 {Start+21}GiB {End}GiB
Check your newly created partitions with fdisk -l and note down their names (e.g.
/dev/sda8 ).
Mine are /dev/sda8 for root, /dev/sda9 for swap and /dev/sda10 for home.
Time to create the filesystems. You have only created the parititions, you still need to tell
Linux how to lay out your filesystem:
mkfs.ext4 /dev/sda8
mkswap /dev/sda9
mkfs.ext4 /dev/sda10
mkdir -p /mnt/boot/
With fdisk -l get the device name with type EFI System. Mine is /dev/sda1 (it's
usually the first device/sector).
mount /dev/sda1 /mnt/boot
mkdir -p /mnt/home
Set up Wifi to download all the needed packages. We'll use wpa_supplicant .
Set up pacman GPG keys so that the packages download without issues:
Install the base system with pacstrap -i /mnt base base-devel . Choose the defaults
and hit Y to proceed with installation when prompted. Go grab a coffee while it
downloads.
Install a Boot Manager (systemd-boot) which will take care of the task of starting
bootloaders such as GRUB as well as make it super easy to discover and generate the
boot menu.
default arch
timeout 5
editor 0
Edit the file /etc/hosts and in the line with 127.0.0.1 append the hostname after
localhost .
Set the root password with passwd . We initially run as root to make sure things worked
as expected.
Reboot!
NOTE In case Windows does not show in GRUB, you can manually edit the GRUB entry by
creating a /boot/grub/custom.cfg custom configuration. See the notes for more details.
If you encounter an error that a PARTUUID could not be found, then do the following:
X. Get the PARTUUID of your /root partition blkid -s PARTUUID -o value /dev/sdxY .
Write the PARTUUDI down as you will need it later.
Y. Open the arch.conf with nano /boot/loader/entries/arch.conf .
Z. Replace the existing PARTUUID with the one you wrote down on the line that says:
options root=PARTUUID=the-id-you-just-copied rw .
Notes
We create different partitions for root and home since that means our user data is
separated from the system files, making it easier to organize, recover and even change
OSes without affecting our data (which crappy Ubuntu does not do).
ctrl_interface=/var/run/wpa_supplicant
network={
ssid="GTwifi"
key_mgmt=WPA-EAP
eap=PEAP
identity="vagrawal38"
password="whatever-the-password-is"
ca_cert="/etc/ssl/certs/AddTrust_External_Root.pem"
phase1="peaplabel=0"
}
The fstab (pronounced "F S Tab") file tells your system what your filesystems are and
what they should be called.
I have a weird issue where when I boot my machine I need to press the Spacebar in order
to see the boot menu. From my research this seems to be a firmware issue in my laptop.
Need to investigate more.
The Arch Wiki has a great page on how to create a GRUB entry for Windows. Personally
tried it and it worked beautifully. You most probably want to look at the section Windows
installed in UEFI-GPT Mode menu entry . Placing a copy of my GRUB entry here for
reference:
Desktop Environment
Comment on gist
Sign in to comment
Desktop version