Arch Linux Day 1: Installation
- The Process
- The Installation Media
- Booting Up
- Formatting the Partitions
- Installation of the Base System
- Configure Network
- Install the Boot-Loader
- Setting root Password
- Exiting and Rebooting
- First Login
- Creating a User
- A Whole New World
This is by no means a tutorial or a guide to installing Arch Linux - it is just how I did my things. Everything that I do should be taken as (at the most) advice. Everything written here should be taken with a grain of salt, as I am going off of my memory of what I have done, and may have forgotten things, even if it was only a few days since I have actually done the deed. I don't remember every command that I execute.
The Installation Media
You won't believe me when I tell you that the most difficult part of this day was to burn the image to the disk. But let me tell you: it was.
The main tool I used was ImgBurn on Windows 10. I downloaded the ISO image, which was around 600MB. I then proceeded to insert a blank DVD into my disk drive, and started up ImgBurn. I finished burning the image onto my disk, but the problem came when ImgBurn started verifying my disk. At the 20% mark, verification errors began popping up for no reason. I know because I tried burning it on my Ubuntu laptop, and was successful (which is why I am using Arch right now). Some research showed me that it was not ImgBurn's problem, but a combined problem between old hardware and new software/drivers. Mind you that my main laptop is almost 6 years old (as of writing this).
After that fiasco, I booted my disk, and boy did it load up fast.
The first thing I did was (re)partitioning my disk. Since I did not have
multiple hard drives, I had to partition my disk. Unfortunately for me,
Windows 10 has already partitioned my disk into 3 parts: the boot-loader,
C:\ drive, and a recovery partition, making 3 primary partitions. As
you may or may not know, you can only have 4 partitions on 1 disk at the same
time. I saw that my previous Fedora 20 distribution got around this by making
a logical partition.
cfdisk, I deleted my Fedora partitions, then created a large logical
partition (with the remaining space) and pushed my root, boot, swap, and home
partitions on there. I gave every partition type ext4 (default) except swap
(Linux swap/Solaris). I then saved and exited.
Formatting the Partitions
After all the partitioning, I used
fdisk -l to list out all the available
partitions. I then tried to format my swap partition with the commands:
mkswap /dev/sda7 swapon /dev/sda7
This failed miserably with an error. I then found out that my beloved Fedora 20
installation formatted every partition it touched with lvm. I removed them all
lvremove -r /dev/mapping/fedora and tried formatting again. It worked.
mkfs.ext4 /dev/sda5 # Root mkfs.ext4 /dev/sda6 # Boot mkfs.ext4 /dev/sda8 # Home (doesn't rhyme with 'oot')
Installation of the Base System
With formatting done and out of the way, next comes installation of base packages. The instructions say that I have to install the packages to the root partition, and that's what I did.
# Mount everything mkdir /mnt/home /mnt/boot mount /dev/sda5 /mnt mount /dev/sda6 /mnt/boot mount /dev/sda8 /mnt/home # Install the base package pacstrap /mnt base
One thing that I need to do before chroot-ing into the new system is to generate an fstab file:
genfstab -p /mnt >> /mnt/etc/fstab arch-chroot /mnt # Change root
I wanted a working ethernet connection, so I did
systemctl enable [email protected] to enable the ethernet service for my machine. You may
have a different device name, like
Install the Boot-Loader
I've been using GRUB before, and didn't want to change, so I ran
pacman -S grub os-prober to install GRUB and a module called
os-prober that detects
my Windows OS so that GRUB recognizes it and allows me to boot from that as
To configure and install GRUB:
grub-mkconfig -o /boot/grub/grub.cfg # Create config file grub-install --recheck /dev/sda # Install GRUB
Setting root Password
One of the last things that you should do is to set the password for root user
for the next/first time you login. A simple
passwd does it.
Exiting and Rebooting
I exited the chroot with exit (Ctrl+D also works). Afterwards, I
unmounted all the mounted partitions with
unmount -R /mnt, the
recursive to unmount everything recursively. Apparently, unmounting also
checks for problems with
fuser. I rebooted the machine with
At last, it was time for me to login for the first time! GRUB loaded correctly, and defaulted to Arch Linux. The loading-up was very fast, as I had nearly nothing to load. I successfully logged in with my root account, and was greeted with a very nice shell prompt.
Creating a User
Creating a user is very essential - I don't want to be logging in as the root user every time because if I screw something up, I lose everything.
useradd -m cheukyin699 # Create the user passwd cheukyin699 # Change the password pacman -S sudo # Install sudo visudo # Edit sudoers file to add user reboot
A Whole New World
After rebooting, it's time to login a second time as a normal user and start installing stuff. But I thought that what I did was good enough for the day.