I have updated the Arch Linux installation guide In this year 2017, so the changes are few, the process remains the same. I have decided to explain the dualboot with Windows at the request of some, also the installation in a virtual machine.
Arch Linux is a GNU / Linux distribution developed for i686 and x86-64 systems, based on a rolling-release model: (single install, no “new releases”, just updates) offering the latest stable versions of most software. Although many people think that it is for advanced people, the truth is that not everyone can install it using the Wiki or any installation guide like this one.
This guide is based on:
- Version: 2017.10.01
- Kernel: 4.13.3
If you are going to install from a virtual machine, you only know how to configure it and how to boot the ISO.
- Know how to burn an iso on a CD / DVD or USB
- Know what hardware your computer has (type of keyboard, video card, architecture of your processor, how much hard disk space you have)
- Configure your BIOS to boot the CD / DVD or USB where you have Arch Linux
- Feel like installing the distro
- And above all patience a lot of patience
Attention: If it is the first time that you are going to install this Operating System and you do not have previous knowledge of Linux, I recommend 2 things:
1.- The best thing for you would be that you do the installation from a virtual machine, such as VirtualBox or VMware so that you start turning on little by little and with the assurance that nothing will happen because you are on a virtual machine.
2.- If you are going to install Arch Linux as a single system on your computer Make a backup of your most important files and have a CD / DVD or pendrive of your current system at hand, because if you do not do the installation to the letter or if the installation is not completed and you will lose everything.
Download Arch Linux and prepare the installation media
The first step to be able to install Arch Liunx in our team will be download the Arch Linux 2017 iso I recommend downloading via Torrent or Magnet link.
CD / DVD installation media
- Windows: We can burn the iso with Imgburn, UltraISO, Neror or any other program even without them in Windows 7 and later gives us the option to right click on the ISO.
- Linux: They can use especially the one that comes with graphical environments, among them are, Brasero, k3b, and Xfburn.
USB installation medium
- Windows: Can use Universal USB Installer or LinuxLive USB Creatorboth are easy to use.
Linux: The Option It is recommended to use the dd command:
dd bs=4M if=/ruta/a/archlinux.iso of=/dev/sdx
Table of Contents
Boot USB / CD Arch Linux
In the boot screen it will show us the following only you have to choose the architecture corresponding to our processor.
It will begin to load everything necessary and it will appear in terminal mode.
Being on this screen we will start with the installation. By default Arch Linux has the English language, in our case it will be recommended that we put it in Spanish.
Put keyboard in Spanish.
Arch Linux has defect with the following tools for disk management: cfdisk, cgdisk, fdisk. The most option recommended is to use: cfdisk.
The following steps are in case of installing Arch Linux as the only system on our computer, in case of installing together with another Linux system, we will have to skip the creation of the BOOT partition, as well as the installation of GRUB.
Now if Arch Linux is to be installed alongside Windows, you have to be careful and not delete the mbr partition if you could not lose access to Windows.
Instructions Dual BOOT Windows & Arch Linux.
solo you will have to deactivate the option "Secure BOOT" in your BIOS. Do not ask me where it is, since the BIOS versions and brands are various, but it is easy to find among the options of your BIOS.
The hard drive will have to be resizedTo give Arch Linux space, it is recommended to leave 40GB of space, at least.
Now we will continue to follow the first steps of the tutorial until we reach the use of cfdisk.
We will have to recognize the partitions Windows and the mbr, as well as the space that we are going to give Arch Linux. The mbr will always be in the first partition then the Windows partition will be ntfs, in my case (dev / sdb2) and the free space will mark us as free space.
- UEFI: here you should take note since the first partition must always be for EFI boot, so this is generally where the Windows boot is stored this way.
So only you will have to create a folder in $ ESP / as "BOOT". Now we can continue with the tutorial, at the end we will go to the end of the tutorial where I will leave you the commands to add Windows to Arch Linux's GRUB.
We create 4 partitions:
- / BOOT: This partition will be destined for GRUB. (for those who have UEFI it is not necessary, it is only to create the BOOT folder inside this partition)
- / (root): This partition is recommended to have 15 Gb, it will host all our files.
- / home: Where our documents, photos, videos, etc. will be stored, so it is recommended to assign it the largest size.
- Swap: This partition is to allocate "virtual" memory in case of having less than 2Gb of RAM. It is not recommended to use swap with more than 2Gb of RAM.
- In computers with RAM memory up to 1 Giga, the SWAP should be as big as the RAM.
- For 2GB the SWAP should be half as big as the RAM.
Using cfdisk the sequence of commands will be: New »Primary | Logical »Size (in MB)» Beginning.
Two details to take into account: In the case of the partition chosen as Swap, go to the "Type" option and select 82 (Linux Swap) from the list.
In the case of the partition chosen as / BOOT, select the "bootable" option.
Once the partitioning is finished, we will save the changes with "Write", and confirm by writing "yes", once this is done there is no going back and all the changes made will be recorded.
To exit choose "Quit". Now we will continue to format the partitions created, so it is advisable to know which path is the destination of the partitions. We'll start with formatting the BOOT partition:
mkfs -t ext2 /dev/sda1
For the root partition:
mkfs -t ext4 /dev/sda2
For / home:
mkfs -t ext4 /dev/sda3
To format Swap, use the mkswap command:
It only remains to activate Swap with:
Mounting partitions to the system: First we mount the / en / mnt partition:
mount /dev/sda2 /mnt
We create the directories of the other partitions inside / mnt:
We mount the corresponding partitions:
mount /dev/sda1 /mnt/BOOT mount /dev/sda3 /mnt/home
Connecting Arch Linux to the internet (wifi)
If we are using a laptop and we do not have a network cable, it is necessary to connect the system to the network to perform the installation. It will have to be done using the command:
After that we will check our connection with:
ping -c 3 www.google.com
Installing Arch Linux
We will start with the following command:
pacstrap /mnt base base-devel
Also if we continue to use WIFI we will need this support later:
pacstrap /mnt netctl wpa_supplicant dialog
Finished with the installation of the base system, we will continue with the Grub:
pacstrap /mnt grub-bios
We will add Network Manager support:
pacstrap /mnt networkmanager
Optional step: Add support to our TouchPad (in case you have a laptop).
pacstrap /mnt xf86-input-synaptics
Installing GRUB boot loader
pacstrap /mnt grub-bios
Configuring the System
In this step we will do various configuration actions for our system. First, we are going to generate the fstab file with:
genfstab -p /mnt /mnt/etc/fstab
For the rest of the configuration actions, we will chroot our newly installed system:
We must set the name of our hostname in the / etc / hostname. For example:
localhostecho 'NOMBRE_DEL_HOST /etc/hostname
Now we create a symbolic link (symlink) from / etc / localtime to / usr / share / zoneinfo // (replace based on your geographic location). For example, for Mexico:
ln -s /usr/share/zoneinfo/America/Mexico_City /etc/localtime
Establish hours in our area.
ln -sf /usr/share/zoneinfo/Europe/Madrid /etc/localtime
ln -s /usr/share/zoneinfo/America/Mexico_City /etc/localtime
ln -sf /usr/share/zoneinfo/America/Buenos_Aires /etc/localtime
ln -sf /usr/share/zoneinfo/America/Bogota /etc/localtime
ln -sf /usr/share/zoneinfo/America/Guayaquil /etc/localtime
ln -sf /usr/share/zoneinfo/America/Lima /etc/localtime
ln -sf /usr/share/zoneinfo/America/Santiago /etc/localtime
ln -sf /usr/share/zoneinfo/America/Guatemala /etc/localtime
- El Salvador
ln -sf /usr/share/zoneinfo/America/El_Salvador /etc/localtime
ln -sf usr/share/zoneinfo/America/La_Paz /etc/localtime
ln -sf usr/share/zoneinfo/posix/America/Asuncion /etc/localtime
ln -sf usr/share/zoneinfo/America/Montevideo /etc/localtime
ln -sf usr/share/zoneinfo/posix/America/Managua /etc/localtime
- Dominican Republic
ln -sf usr/share/zoneinfo/America/Santo_Domingo /etc/localtime
ln -sf /usr/share/zoneinfo/America/Caracas /etc/localtime
Set your localization preferences by editing the /etc/locale.conf file, for example, for Mexico:
echo 'es_MX.UTF-8 UTF-8 /etc/locale.gen echo 'LANG=es_ES.UTF-8 /etc/locale.conf
- El Salvador
- Dominican Republic
Likewise, in the file /etc/locale.gen we must uncomment (remove the "#" at the beginning of the line) your location, for example:
#es_HN ISO-8859-1 es_MX.UTF-8 UTF-8 #es_MX ISO-8859-1
So now we can generate your location with:
We must not lose sight of the fact that the above does not establish the layout of our keyboard (which we did for the current session / with loadkeys in step 2), so we must set the KEYMAP variable in the /etc/vconsole.conf file (you must create this file). For example:
echo 'KEYMAP=es /etc/vconsole.conf KEYMAP=la-latin1
Surely you are wondering:
"And isn't all of this configured in /etc/rc.conf, the main Arch Linux configuration file?"
The short answer is: no more! The reason: Unify the initscripts and systemd configurations.
Now each configuration option is set in its corresponding file. The following steps install the GRUB UEFI application in $ esp / EFI / grub, install the modules in / boot / grub / x86_64-efi, and put the bootable grubx64.efi stub in $ esp / EFI / grub_uefi.
First, we tell GRUB to use UEFI, set the boot directory, and set the ID. bootloader.
Change $ esp with your efi partition (usually / boot): Note: While some distributions require a / boot / efi or / boot / EFI directory, Arch does not. –Efi-directory and –bootloader-id are specific to GRUB UEFI. –Efi-directory specifies the mount point of the ESP.
This replaces –root-directory, which is deprecated. –Bootloader-id specifies the name of the directory used to save the grubx64.efi file.
You may notice the absence of an option (for example: / dev / sda) in the command:
In fact, any provided will be ignored by the GRUB installation script, since UEFI boot loaders do not use a partition's MBR or boot sector at all. Only for those who have uefi the command to use this
grub-install --target=x86_64-efi --efi-directory=$esp --bootloader-id=grub_uefi --recheck/sourcecode] Ahora, configuramos el bootloader, en este caso, GRUB: grub-install /dev/sda
And we create the grub.cfg file with:
grub-mkconfig -o /boot/grub/grub.cfg
If necessary (although it usually isn't), edit the /etc/mkinitcpio.conf file according to your needs. So, we create the initial RAM disk with:
mkinitcpio -p linux
We must not forget to set the password for the root user with:
We create our user apart from the root user and we give it the necessary permissions:
useradd -m -g users -G audio,lp,optical,storage,video,wheel,games,power,scanner -s /bin/bash USUARIO
Now, we can leave the chroot environment with:
We unmount the previously mounted partitions in / mnt with:
And finally, we restart the system with:
If you have not removed the CD or pendrive installation media, you will see the welcome menu again, where now you must choose the second option for the next one, do not forget to remove it.