How to install Arch Linux – easy way [December 2014]

Step #9 Configure repositories

Now it’s time to configure repositories. Open the pacman.conf file:

# nano /etc/pacman.conf

If you are using 64 bit system you should go ahead and enable (un-comment) the “multilib” repo:

Include = /etc/pacman.d/mirrorlist

Then hit Ctrl+X and then type ‘y‘ when asked.

Now it’s time to update the repositories by running this command:

pacman -Sy

Step #10 Create users

We first need to give a root password so we can perform administrative tasks. But we will also create a user for the system as it’s not recommended to run as root.

First set root password. Run this command and give the password and give the desired password:

# passwd

Now it’s time to create a user for the system and also add some groups to it. So run the following command and replace ‘mukt‘ with your user-name.

# useradd -m -g users -G wheel,storage,power -s /bin/bash mukt

Then give the password for this new user (which in my case was mukt). When you run this command it will again ask you to enter new password:

# passwd mukt

Now we have to allow this use to do administrative jobs as sudo so let’s install sudo.

# pacman -S sudo

Once that is done, we will now allow the users in wheel group to be able to performance administrative tasks with sudo. Run the following command to edit the sudoers:

# EDITOR=nano visudo

It will open the sudoers file where you have to uncomment this line:

%wheel ALL=(ALL) ALL

I will also recommend installing bash-completion so that Arch auto-complete commands of names of packages:

# pacman -S bash-completion

Step #11 Install boot loader

We are now going to install grub and configure the boot loader. In my case I have a system with BIOS (if you have UFI then check out the appropriate Arch Wiki page).

Let’s first install grub for bios and configure it. Run these commands:

# pacman -S grub
# grub-install --target=i386-pc --recheck /dev/sda

I have other operating systems installed on the same system (namely openSUSE) and I wanted Arch to show these systems in the grub menu so I can select at the boot. Even if you don’t have other OSes installed I would recommend installing OS Prober:

pacman -S os-prober

Once it is installed update the grub so Arch knows about other operating systems. Run this command:

# grub-mkconfig -o /boot/grub/grub.cfg

In order for it to stay connected to the Internet after reboots, find the interface for lan by run this command:

ip link

Then enable and start the network for that interface by running these commands:

# systemctl enable dhcpcd@_name_of_interface.service
# systemctl start dhcpcd@_name_of_interface.service

We are now done with the installation and configuration of Arch Linux. There is still some work left – installing the Display Manager (X server), the desktop environment and appropriate graphics drivers. Since the OS is installed let’s reboot into the new OS. So first exit from the chroot environment:

# exit

And now unmount the root, home and reboot the system:

# umount -R /mnt
# reboot

Note: Remove the USB so that the system doesn’t boot into it again.

  • Gurdeep

    Hi Swapnil
    I followed all your instructions for the installation but after reboot it is stuck on a blank screen. I have “/dev/sda2: clean, 34631/1310720 files, 349376/5242880 blocks” on my screen.
    Please help!

    • arnieswap

      what is the screen output? Where did you install grub? Which is the primary drive name where you installed the OS?

    • Burak

      this is x server problem , can not open graphics screen.Probably you have optimus graphics card and laptop.Search bumblebee

  • Koen Hardy

    First off, my compliments on the nice tut. I haven’t installed Arch myself, I will though in the near future. I use Manjaro now, which is based on Arch. And my favorite piece of software on it is Pacman. Very powerfull, flexible packagemanager which, in my humble opinion, is the best in the whole wide Linux world. I’ve build LFS and BLFS several times, just as a learning experiece, which resulted in an extreme fast and stable OS. I even dreamed of distributing it, but since that meant creating repo’ s and such which had to be maintained, I backed off.Mostly because of the financial cost. It still is my dream though, because I somehow managed to build an OS on which my 70 year old mother would have been happy to work with. Maybe…someday when I can get the right funding, things will happen. One thing’ s for sure…it’s packagemanger will be Pacman… :-)

  • darvein

    I’m installing arch on Vmware all is OK until I try to execute: startx
    I got this:


    [ 400.013] Current Operating System: Linux arch 3.15.1-1-ARCH #1 SMP PREEMPT Tue Jun 17 09:32:20 CEST 2014 x86_64
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    [ 400.059] Initializing built-in extension MIT-SCREEN-SAVER
    [ 400.065] (EE) Failed to load module “glx” (module does not exist, 0)
    [ 400.065] (EE) Failed to load module “vmware” (module does not exist, 0)
    [ 400.065] (EE) Failed to load module “modesetting” (module does not exist, 0)
    [ 400.065] (EE) Failed to load module “fbdev” (module does not exist, 0)
    [ 400.065] (EE) Failed to load module “vesa” (module does not exist, 0)
    [ 400.065] (EE) No drivers available.
    [ 400.065] (EE)
    [ 400.066] (EE) no screens found(EE)
    [ 400.066] (EE)
    [ 400.067] (EE) Please also check the log file at “/var/log/Xorg.0.log” for additional information.
    [ 400.068] (EE)

    • mhm

      you need to run this:
      pacman -S xf86-video-vesa

  • Vellanki Ganesh

    I have a doubt while installing boot loader…

    I already have Ubuntu in my PC so there is already GRUB, if I skip this boot loader installation, and run grub-update in ubuntu can I find Arch in the boot screen…

    Skipping step:-11 cause any problems for my situation…..???

    How to deal with this kind of problem….

  • Tarun

    Instead of following that long method for AUR, here’s a simple one

    Add these to /etc/pacman.conf file :-

    SigLevel = Never
    Server =$arch

    Save it & then do pacman -Sy yaourt
    The, simply search yaourt packagename. For e.g. yaourt dropbox.
    You can also update your entire system using yaourt along with the AUR packages with yaourt -Syu –aur.

    Yaourt can also be used as pacman replacement. Just do yaourt -S packagename. That’s it!!

    • Danilo Vilas Boas

      Yaourt can be used as pacman replacement. But it shouldn’t to. As you shouldn’t install nothing with “pacman -Sy”. Always do “pacman -Syu” before, then just “pacman -S”.

  • Brian Haines

    At step 9 I hit two questions

    Q1 – This isn’t in mirrorlist to uncomment so I added at the bottom

    Include = /etc/pacman.d/mirrorlist

    Did we miss a step where we setup the network? I haven’t read past here, but without the network this just produced a list of errors? Maybe my network should have been setup automatically on the live CD?

    pacman -Sy

    • arnieswap

      Q1 Are you talking about

      # nano /etc/pacman.conf

    • themobius

      Agree. Just run into this situation. Did all steps and run into a bucnh of errors in step 9. The host name resolver was not set wich is not a network issue but still stoped things from working and tricked me into thinking that it is a network issue. Had to modify the /etc/resolv.con and add a line with “nameserver “. Would be better to check network before step 9.

  • jmz3

    In Step #5, after running the command, there is a prompt about which packages to download and install (selective package install or default=all), It would be nice if you could mention about this step in the tutorial.


    I have motherboard Asus extreme Maximus VI, This tutorial does not work.

  • roli

    I have made as you told and after rebooting and removing the cd-rom i get this message:

    EDD: Error 0c00 reading sector 166449
    failed to load COM32 file boot/syslinux/reboot.c32

    what i have to do???


  • Plazma

    SSD partitioning isnt a bad thing ? or performance losses after partition ?

    • arnieswap

      I have partitioned my SSD.

  • Ruso Inmortal

    Thank you for your guide. I tried the official and I always was missing somthing, but with yours, adapted to my needs, it worked out of the box…

    Well, almost. I had a problem with locales that you won’t have because default values are for american english. Anyway, for those with special characters like spanish, I had to set the /etc/vconsole.conf and also execute “localectl set-x11-keymap…” to support it. I hope it helps.


  • Kezepema

    Great guide, thanks!
    Onze sm all remark: I think you have to exit chroot, before issueing the systemctl commands at the end of the tut.

  • Pingback: A little Arch Linux dabbling! |

  • Chirag Jain