2.1 - Installation du client Ubuntu

Ubuntu est un système d’exploitation open source basé sur la distribution Linux Debian. Son nom provient d'un ancien mot bantou qui signifierait « je suis ce que je suis grâce à ce que nous sommes tous ». (Wikipedia)

Une histoire invérifiable (et souvent déformée) issue de l'ouvrage O Espírito da política du philosophe Raimon Panikkar relate la surprise d'un états-unien envoyé dans un village d'Afrique. Un jour, il eut une boite de bonbons et proposa une course à des enfants pour la gagner. Il fut alors surpris de voir les enfants courir en se tenant la main pour que personne ne gagne. Ils préféraient partager la boite de bonbon, expliquant que leur bonheur était le bonheur de tous. Une autre philosophe, Lia Diskin, utilisa cette histoire pour illustrer le sens du mot Ubuntu lors d'un festival de la paix au sud du brésil.

Debian est ces distributions « filles » (Ubuntu, Mint, Kali, Tails, Proxmox, PureOS, Raspbian, ElementaryOS, …) sont la plus grande famille de distribution linux. Debian fourni une distribution solide et débogué à l'extrême mais qui, pour des raisons de stabilité, repose sur des librairies et des logiciels éprouvés et un maximum de codes entièrement libres. Ubuntu, reprend les bases de Debian en mettant à jour les logiciels et les librairies plus rapidement et en facilitant l'accès à des pilotes et des firmwares propriétaires pour étendre le matériel supporté.

Téléchargement

https://cdimage.ubuntu.com/noble/daily-live/current/

Télécharger la dernière version LTS d'Ubuntu, nom de code Noble, en version Desktop pour architecture amd64 ou arm64 suivant l'architecture de votre processeur.

👉 amd64 désigne les processeurs x86 64 bits, de marque AMD ou Intel (ou autres). De la même façon, les processeurs x86 32 bits sont désignés par les sigles i386, i686 ou encore ia32 faisant tous références au « I » d'Intel. Chaque fois, c'est l'inventeur d'une architecture qui lui donne son nom et les processeurs x86 64 bits ont bien été inventés et popularisés par AMD.

Mise en place

Lancer VirtualBox et cliquez sur le bouton « Nouvelle » pour créer une nouvelle machine virtuelle.

Bouton Nouvelle VM

⚠️ Mieux vaut désactiver l'installation sans surveillance. C'est une fonction pratique dans d'autre cas de figure, mais vous n'apprendrez pas grand chose en l'utilisant.

👉 Si à un moment l'écran reste noir ou juste figé. Essayer d'utiliser la touche Host de Virtualbox (indiqué dans la fenêtre qui encadre l'affichage de la VM, en bas à droite) en conjonction avec les touches F3, puis attendre un peu, puis F2. Par défaut : [ctrl-droite]+[F3], attendre… [ctrl-droite]+[F2]

Premier démarrage

Additions invité

Les Additions invité améliorent la communication entre l'hôte et l'invité et active certaine fonctions comme le presse papier bidirectionnel ou le redimenssionnement automatique du bureau.

Lancer un terminal (touche « Windows », puis commencer à écrire : terminal). Quand l'application Terminal s'affiche en première position, appuyer simplement sur [Entrée].

👉 Un clic droit sur l'icone du terminal dans le dock permet de l'ajouter aux favoris, ce qui le maintiendra dans le dock même si l'application est fermé.

Dans le terminal, lancer ces commandes pour installer le paquet « build-essential »

# @client
sudo apt update
sudo apt -y install build-essential

build-essential et un meta-paquet, c'est à dire un paquet qui ne contient rien mais qui a en dépendance une liste de paquets. Son installation va provoquer l'installation de ces dépendances. Ici, build-essential va provoquer l'installation du minimum pour compiler des programmes écrits en language C.

Une fois l'installation terminé, dans le menu de Virtualbox, cliquez sur Périphériques :

L'icône d'un CD devrait s'afficher dans le dock (sur la gauche du bureau). Ubuntu monte automatiquement le contenu des périphériques amovible dans le dossier /media/$USER/{volume_name}. $USER est une variable d'environnement qui contient l'identifiant (login) de l'utilisateur actif. {volume_name} sera le nom du périphérique.

La commande suivante devrait installer les additions invité :

# @client
sudo /media/$USER/VBox_GAs_7*/VBoxLinuxAdditions.run

Il ne reste qu'à redémarrer :

# @client
reboot

Paramètres

Une fois sur le bureau, une des première chose à faire est d'agrandir l'écran via le menu de Virtualbox :

Vous pouvez également basculer l'affichage de la machine virtuel en pleine écran avec le raccourci clavier HOST+F. Par défaut, [Ctrl-droite]+[F].

👉 Avec Virtualbox, la touche HOST est indiqué en bas à droite des fenêtres de virtualisation. Par défaut, il s'agit de la touche [Ctrl] (control) de droite. Cette touche peut être modifiée dans les paramètres de Virtualbox.

Pour paramétrer votre Ubuntu, cliquer sur les petits logo dans la barre noir en haut à droite du bureau

Génération de la paire de clés SSH du client

Lancer un terminal et générer la paire de clés du client Ubuntu :

# @client
ssh-keygen
# [entrée] [entrée] [entrée], ici, pas besoin de mot de passe où de personnalisation. On ne va pas faire de prod.

Suppression des paquets Snap (optionnel)

Les paquets snap sont proposés par défaut sur les systèmes Ubuntu mais cette technologie et assez lente et orientée IOT (Internet Of Things). Pour les applications de bureau, Flatpak est un meilleur choix.

👉 Dans un terminal, il faut ajouter [Shift] pour Couper/Copier/Coller. Soit : [Ctrl]+[Shift]+X, [Ctrl]+[Shift]+C, [Ctrl]+[Shift]+V,

# @client
#sudo systemctl stop var-snap-firefox-common-host\\x2dhunspell.mount # plus nécessaire ?
#sudo systemctl disable var-snap-firefox-common-host\\x2dhunspell.mount # plus nécessaire ?
sudo snap remove --purge firefox
sudo apt purge snapd

👉 La suppression de snapd va provoquer la désinstallation de Firefox.

Les mainteneurs Ubuntu ont fait le choix de distribuer Firefox au format snap, ce qui le rend très lent au démarrage. Nous allons le ré-installer via le gestionnaire de paquet flatpak ci-dessous.

Ajout du support des paquets Flatpak

Les distributions Linux proposent des sélections de paquet qui fonctionnent bien ensemble. Elles utilisent le plus possible les mêmes librairies partagées pour économiser au maximum l'espace disque et assurer une grande cohérence du système. Cela abouti à des systèmes très stable mais au prix de logiciels pas toujours disponible dans leurs dernières versions. Flatpak est un format d'installation de logiciel qui vient en complément des gestionnaires de paquets traditionnels. Il permet d'installer plusieurs version d'un même logiciel en encapsulant chaque version dans un conteneur. Il est ainsi possible d'accéder à plusieurs versions d'un logiciel et, presque toujours, à la dernière version.

# @client
sudo apt update
sudo apt dist-upgrade
sudo apt install flatpak gnome-software-plugin-flatpak

Dans un deuxième temps, ajouter l'adresse d'un premier « dépôt flatpak », celui de flathub en l'occurence :

# @client
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Vous pouvez désormais installer des logiciels via le site web https://flathub.org ou en ligne de commande. Exemple avec Firefox :

# @client
sudo flatpak install flathub org.mozilla.firefox

Répondre Y (yes) aux deux questions. Parfois, il est nécessaire de se déconnecter (fermer la session) puis de se reconnecter pour que les logiciels installer via Flatpak apparaissent dans les menus.

Pour disposer d'un web sans trop de distraction, fluide et moins aggressif, je vous invite à installer les deux extensions suivantes dans votre navigateur :

Quelques paquets

Installer quelques paquets qui améliorent le quotidien :

# @client
sudo apt install vim vim-airline htop btop iotop nethogs iptraf-ng mtr-tiny ipcalc pwgen rsync git fonts-hack sl

Inutile donc indispensable

Tout est dans le titre

# @client
sudo apt install bb cmatrix cbonsai hollywood figlet toilet boxes lolcat cowsay moon-buggy nethack-console

Jouons un peu

sl -la
sl -a | lolcat
git clone https://github.com/xero/figlet-fonts
figlet "pas glop" -f "Bloody" -d ./figlet-fonts/ -w 140 | boxes -d shell -p h4t2b1
figlet Mouuu | cowsay -n
cbonsai -li # ctrl+c pour quitter

👉 bb est une vieille démo qui nécessite un accès direct à la carte son, pour éviter un gel de la démo, il faut la lancer en désactivant temporairement le serveur de son PulseAudio (voir ci-dessous)

# @client
# Si votre OS utilise pipewire
env PULSE_SERVER= bb
# Si votre OS utilise pulseaudio
pasuspender -- env PULSE_SERVER= bb

Pour tuer le temps, vous pouvez aussi tenter dans un terminal :

# @client
telnet mapscii.me # ctrl+] puis ctrl+d pour quitter

ou encore :

# @client
telnet towel.blinkenlights.nl

👉 Avant d'aller plus loin, il peut être utile d'éteindre la VM et de faire un instantané *(snapshot)*, via le menu à trois traits accessible sur la ligne de la VM dans l'interface de Virtualbox.

>>> Vous pouvez passer à l'installation d'applications