Installation guide
zh-CN:Installation Guide zh-TW:Installation Guide In Install media 2012.07.15, AIF (the Arch Installation Framework) is no longer included but instead Arch Install Scripts are provided to aid in the installation process. This means a menu driven installer is no longer available. This article summarizes a basic install process using these scripts.
Contents
Minimal knowledge requirements for a new user
To install Arch Linux on your system requires knowledge and application of a few skills on Linux. The list itself is not comprehensive but it gives an idea.
1. Working knowledge of shell, e.g. bash
2. Configuring network in shell.
3. Working knowledge on utilities like fdisk
, mkfs
, nano
/vi
/vim
, chroot
, locale-gen
, passwd
, etc.
4. The pacman mirrorlist.
5. Basic knowledge about /etc/fstab
.
6. The purpose of running mkinitcpio
.
7. Configuring GRUB/Syslinux.
In addition, it's a good idea to read the wiki articles on these subjects.
Download
Download new iso from Arch download page.
- Instead of six different images we only provide a single one which can be booted into an i686 and x86_64 live system to install Arch Linux over the network. Media containing the [core] repository are no longer provided.
- Install images are signed and it is highly recommend to verify their signature before use. On Arch Linux this can be done by using
pacman-key -v <iso-file>.sig
Keyboard layout
For many countries and keyboard types appropriate keymaps are available already, and a command like loadkeys uk
might do what you want. More available keymap files can be found in /usr/share/kbd/keymaps/
(you can omit the keymap path and file extension when using loadkeys).
To make these changes permanent, edit /etc/vconsole.conf
.
Partition disks
See partitioning for details.
Remember to create any stacked block devices like LVM, LUKS, or RAID.
Format partitions
See here for details.
If you are using (U)EFI you will most probably need another partition to host the UEFI System partition. Read this article.
Mount the partitions
We now must mount the root partition on /mnt
. You should also create directories for and mount any other partitions (/mnt/boot
, /mnt/home
, ...) if you want them to be detected by genfstab
.
Connect to the internet
Assuming a wired connection, running dhclient
is sufficient to get a lease. For more info visit configuring network.
For Eg. you can try ip link set eth0 up
and dhclient eth0
.
Wireless
If on a wireless connection, see Wireless Setup to determine if you need to load extra firmware for your device. Assuming your device is correctly loaded and working, you will need to establish a connection to your router. This can be done using wifi-menu
or manually as outlined below.
If you have a WPA protected router, run
wpa_passphrase "Your Router SSID" "Your WPA Key" > /etc/wpa_supplicant.conf
Then
wpa_supplicant -Dwext -iwlan0 -c/etc/wpa_supplicant.conf
Either run this command with & >/dev/null
, switch to another tty and run dhcpcd wlan0
, or simply use the -B
switch to daemonize wpa-supplicant.
Install the base system
Before installing, you may want to edit /etc/pacman.d/mirrorlist
such that your preferred mirror is first. This copy of the mirrorlist will be installed on your new system by pacstrap
as well, so it's worth getting it right.
Using the pacstrap script we install the base system. The base-devel package group should also be installed if you plan on compiling software from the AUR or using ABS.
# pacstrap /mnt base base-devel
Other packages can be installed by appending their names to the above command (space seperated), including the bootloader if you want.
Install a bootloader
GRUB
- For BIOS:
# pacstrap /mnt grub-bios
- For EFI (in rare cases you will need
grub-efi-i386
instead):
# pacstrap /mnt grub-efi-x86_64
- Install GRUB after chrooting (refer to Configure system section).
Syslinux
# pacstrap /mnt syslinux
Configure system
Generate an fstab with the following command (if you prefer to use UUIDs or labels, add the -U
or -L
option, respectively):
# genfstab -p /mnt >> /mnt/etc/fstab
Next we chroot into our newly installed system:
# arch-chroot /mnt
- Write your hostname to
/etc/hostname
. - Symlink
/etc/localtime
to/usr/share/zoneinfo/Zone/SubZone
. ReplaceZone
andSubzone
to your liking. For example:
# ln -s /usr/share/zoneinfo/Europe/Athens /etc/localtime
- Set locale preferences in
/etc/locale.conf
. - Uncomment the selected locale in
/etc/locale.gen
and generate it withlocale-gen
. - Configure
/etc/mkinitcpio.conf
as needed (see mkinitcpio) and create an initial RAM disk with:
# mkinitcpio -p linux
- Configure the bootloader.
- For Syslinux, edit the
/boot/syslinux/syslinux.cfg
to point to the right/
(root) partition. Then type the following command to install (-i
), set boot flag (-a
) and install the MBR (-m
):
# syslinux-install_update -iam
- For GRUB, refer to the GRUB article.
- Install GRUB to the hard drive containing your boot partition:
# grub-install /dev/sda
- Create the
grub.cfg
:
# grub-mkconfig -o /boot/grub/grub.cfg
- Set a root password with
passwd
.
Unmount leftovers
If you are still in the chroot environment type exit
or press Template:Keypress in order to exit.
Earlier we mounted the partitions under /mnt
. In this step we will unmount them:
# umount /mnt/{boot,home,}
Finally reboot and configure your system as explained in Beginners' Guide/Post-Installation.