Passer au contenu principal

Installation de ArchLinux dans VirtualBox

Version de ArchLinux téléchargée : 2021.07.01-x86_64.
Version de VirtualBox : 6.1.

Configuration de la machine virtuelle

  • 4Go de mémoire vive.
  • Disquette désactivée.
  • 2 processeurs.
  • 128Mo de mémoire vidéo.
  • Accélération 3D activée.désactivée.
  • Mode d'accès réseau par pont (en0: Wi-Fi).
  • Mode UEFI non activé.

Lancement de l'installation

Installation guide.

Initialisation de l'installation

  • Clavier en français.
  • Teste de la connexion.
  • Permettre la synchronisation de l'horloge.
  • Définir le fuseau horaire.
loadkeys fr
ping -c 4 archlinux.org
# [...] 4 pings et le résumé
timedatectl set-ntp true
timedatectl set-timezone Europe/Paris

Gestion du disque

Vérifier les disques

lsblk

Résultat :

NAME   MAJ:MIN  RM    SIZE  RO  TYPE  MOUNTPOINTS
loop0    7:0     0  641.6M   1  loop  /run/archiso/airootfs
sda      8:0     0     40G   0  disk
sr0     11:0     1  779.3M   0  rom   /run/archiso/bootmnt

Partitionner

fdisk /dev/sda

Résultat :

Command (m for help): n
Partition type
	p	primary (O primary, O extended, 4 free)
	e	extended (container for logical partitions)
Select (default p):
Partition number (1-4, default 1):
First sector (2048-83886079, default 2048):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-83886079, default 83886079): +4G

Created a new partition 1 of type 'Linux' […]

Command (m for help): t
Selected partion 1
Hex code or alias (type L to list all): 82
Changed type of partition 'Linux' to 'Linux swap / Solaris'.

Command (m for help): n
	[…]
Select (default p):
Partition number (2-4, default 2):
First sector […]:
Last sector, […]:

# pour afficher le résultat final
Command (m for help): p

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

Vérifier la nouvelle table de partition

lsblk

Résultat :

NAME   MAJ:MIN  RM    SIZE  RO  TYPE  MOUNTPOINTS
loop0    7:0     0  641.6M   1  loop  /run/archiso/airootfs
sda      8:0     0     40G   0  disk
|—sda1   8:1     0      4G   0  part
|—sda2   8:2     0     36G   0  part
sr0     11:0     1  779.3M   0  rom   /run/archiso/bootmnt

Formater les partitions

Formater la partition swap.

mkswap /dev/sda1

Formter la partition home.

Monter les partitions

swapon /dev/sda1
mount /dev/sda2 /mnt

Installation du système

pacstrap /mnt base base-devel linux linux-firware sudo networkmanager vim zsh git man-db man-pages texinfo

Prendre un café…

Paramétrage du système

Générer la table de partition

genfstab -U /mnt > /mnt/etc/fstab

Entrer dans le chroot

arch-chroot /mnt

Paramétrer le fuseau horaire et synchroniser l'horloge

ln -sf /usr/share/zoneinfo/Europe/Paris /etc/localtime
hwclock --systohc

Fichier locale.gen

Génération des données locales

Décommenter les lignes en_US.UTF-8 UTF-8 (et fr_FR.UTF-8 UTF-8 si nécessaire) dans le fichier /etc/locale.gen.
Puis générer les données locales.

locale-gen

Résultat :

Generating locale...
	en_US.UTF-8... done
	fr_FR.UTF-8... done
Generation comple.

Régler les données locales par défaut

echo "LANG=en_US.UTF-8
LC_COLLATE=C" > /etc/locale.conf

Régler le clavier en français

echo "KEYMAP=fr-latin9" > /etc/vconsole.conf

Entrer le hostname

echo "myarch" > /etc/hostname

Régler le fichier hosts

echo "127.0.0.1 localhost
::1 localhost
127.0.1.1 myarch.local myarch" >> /etc/hosts

Régler le mot de passe de root

passwd

Définir l'éditeur par défaut

echo "alias l='ls -lah'
alias vi='vim'
export EDITOR='vim'" >> /etc/skel/.bashrc

Bootloader : grub

Arch boot process - Boot loader.
GRUB - MBR.

pacman -S grub
# […]
grub-install --target=i386-pc /dev/sda

(Re-)Générer le fichier de configuration principale.
GRUB - Generate the main configuration file.

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

Microcode(s)

Dans l'hypothèse d'une machine virtuelle déplaçable, installer les 2 microcodes.
Microcode.

pacman -S intel-ucode amd-ucode

Regénérer le fichier de configuration de Grub.

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

NetworkManager

NetworkManager.

systemctl enable NetworkManager

Redémarrer

exit
umount -R /mnt
reboot

Penser à éjecter l'image ISO d'installation…

Gestion des utilisateurs

Groupe wheel

Nécessite que sudo soit bien installé et que le VISUAL soit bien défini (par exemple vim).
Sudo.

visudo

Puis décommenter la ligne :

## Uncomment to allow members of group wheel to execute any command
%wheel ALL=(ALL) ALL

Ajout d'un utilisateur

useradd -m -g wheel -c '<username>' -s /usr/bin/zsh username
passwd <username>
exit

Personnalisation de zsh

Installer oh-my-zsh

ohmyz.sh.

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Personnaliser le thème voulu dans le fichier ~/.zshrc.

Installer le plugin zsh-autosuggestions

git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

Activer le plugin dans le fichier ~/.zshrc.

plugins=([…] zsh-autosuggestions […])

Installer le plugin zsh-syntax-highlighting.

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

Le plugin doit être le dernier activé dans le fichier ~/.zshrc.

plugins=( [plugins...] zsh-syntax-highlighting)

Serveur d'affichage Xorg

Xorg.

Vérifier le pilote vidéo nécessaire à la ligne Subsystem.

lspci -v | grep -A1 -e VGA -e 3D

Résultat :

00:02.0 VGA compatible controller: VMware SVGA II Adapter (prog-if 00 [VGA controller])
	Subsystem: VMware SVGA II Adapter
	Flags: bus master, fast devsel, latency 64, IRQ 18
pacman -S xorg-server xf86-video-vmware

Environnement de bureau bureau : Plasma & KDE

KDE.

pacman -S plasma kde-applications ttf-{bitstream-vera,liberation,freefont,dejavu} freetype2

Reprendre un deux trois cafés…

Gestionnaire d'affichage : SDDM

SDDM.

pacman -S sddm
systemctl enable sddm
localectl set-x11-keymap fr-latin9
systemctl start sddm

Il est possible de personnaliser le thème.

mkdir /etc/sddm.conf.d/
cat << EOF > /etc/sddm.conf.d/theme.conf
[Theme]
Current=breeze
EOF

Gestionnaire de paquets AUR

AUR helpers.

git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
yay -S yay

Si il y a une erreur, réinstaller base-devel.

Installer le Guest Additions

Install the Guest Additions.

pacman -S virtualbox-guest-utils
systemctl enable vboxservice
systemctl start vboxservice

Recommandations générales

General recommendations.