Installation de CentOS Stream : la suite

Organisation du travail

Pour configurer votre machine, je vous conseille de vous connecter en utilisant une compte ordinaire (etud par exemple) et d'ouvrir un terminal pour acquérir les pouvoirs de l'administrateur (commande su - ).

Redirection du port SSH

Pour accéder plus facilement à votre VM, nous allons mettre en place une redirection entre le port 9022 de la machine hôte et le port 22 de votre machine virtuelle.

  • Notez l'adresse IP de votre VM (commande ip addr ). C'est sûrement 10.0.2.15.
  • Ouvrez la configuration réseau de votre VM.
  • Choisissez le mode Avancé/Redirection des ports.
  • Ajoutez la règle :
Nom Protocole IP Hôte Port Hôte IP invité Port invité
SSH TCP 127.0.0.1 9022 10.0.2.15 22
  • Testez la connexion directe depuis votre machine hôte vers votre VM :
Sur la machine hôte
ssh -X -p 9022 etud@localhost
  • Ajoutez ces lignes au fichier $HOME/.ssh/config de la machine hôte :
host VM
    HostName 127.0.0.1
    User root
    Port 9022
    NoHostAuthenticationForLocalhost yes
    ForwardX11 yes

host etud
    HostName 127.0.0.1
    User etud
    Port 9022
    NoHostAuthenticationForLocalhost yes
    ForwardX11 yes
Note : La ligne ForwardX11 permet de lancer des commandes graphiques sur la VM avec un affichage déporté sur la machine hôte.
  • Vous pouvez maintenant facilement vous connecter depuis votre machine hôte vers votre VM.
En mode administrateur
ssh VM
En mode utilisateur
ssh etud
  • Afin d'éviter la répétition des mots de passe, nous pouvons copier vos clefs publiques sur la VM. Vérifiez (ssh-add -L ) que vous avez des pairs de clefs privées/publiquées ou créez-en une (ssh-keygen ). Copiez ces clefs sur la VM avec
Sur la machine hôte
ssh-copy-id VM
ssh-copy-id etud

Prendre un instantané de sauvegarde

  • Prenez l'habitude, avant toute opération dangereuse, de prendre un instantané de votre machine virtuelle.
  • Pour tester cette fonction, prenez un instantané, faites ensuite une modification mineure de votre machine (création d'un fichier par exemple) et restaurez ensuite la version sauvegardée.

Mise à jour de votre système

Note : La mise à jour d'un système consiste à installer une nouvelle version de certains packages afin de faire disparaître des problèmes de sécurité ou des dysfonctionnements. Il faut donc
  • repérer les packages qui doivent être mis à jour,
  • charger (à partir du réseau) la nouvelle version,
  • installer la nouvelle version.

Heureusement la commande dnf facilite cette mise à jour avec la formule

sudo dnf -y check-update
sudo dnf -y update

Bien entendu, si la mise à jour a installé une nouvelle version du noyau (regardez les fichiers /var/log/dnf*log), vous devrez redémarrer votre machine. Vous pouvez aussi utiliser

sudo dnf needs-restarting || echo "Redemarrage necessaire"

Désactiver SELinux

  • Commençons par vérifier que SELinux est activé :
selinuxenabled && echo "SELinux Enabled" || echo "SELinux disabled"
  • Nous allons désactiver SELinux pour éviter des difficultés. Modifiez, dans le fichier /etc/sysconfig/selinux, la ligne suivante (utlisez ce Mini guide Vi) pour modifier ce fichier.
SELINUX=disabled
  • Redémarrez ensuite votre VM (commande reboot ). Vérifiez l'état de SELinux.

Ajoutez des logiciels à votre système

Travail à faire : Lisez la partie du cours sur dnf.

Depuis la distribution

  • Vous pouvez lister les packages disponibles avec
sudo dnf list available
  • Choisir les packages du JDK 17 (vous pouvez obtenir des informations avec dnf info package) et les installer avec
sudo dnf -y install package1 ... packageN
  • Vérifiez que Java 17 est maintenant disponible.
  • C'est une bonne idée d'installer le logiciel dnf-automatic pour que votre machine fasse une mise à jour à chaque démarrage.
  • Vous pouvez aussi installer les groupes de logiciels. Utilisez les commandes ci-dessous pour lister et installer (par exemple) le groupe Minimal Install
sudo dnf -y grouplist
sudo dnf -y groupinstall nom_des_groupes
Note : Vous aurez plus d'informations sur dnf avec man dnf ou le site Wikipedia.

Prévoir des dépôts supplémentaires

Note : Un dépôt est une source à partir de laquelle nous pouvons récupérer et installer des logiciels sous la forme de packages prêts à être déployés.

Voila une liste non exhaustive des dépôts disponibles :

  • EPEL-Next : Un large choix de logiciels. Essayez d'installer et d'utiliser htop et nedit (un éditeur de texte simple, efficace, indépendant de tout environnement graphique et qui nous permettra facilement d'éditer nos fichiers de configuration).
  • ELRepo : Un autre dépôt intéressant (optionnel).
Travail à faire : Après avoir installé nedit, déconnectez-vous et reconnectez-vous à partir de la machine hôte en utilisant ssh. Vous devriez pouvoir ouvrir un fichier texte avec nedit avec un affichage graphique sur la machine hôte.

Prendre un cliché de sauvegarde

À cette étape, vous pouvez arrêtez votre VM et prendre un cliché (nommé etat-initial) que nous utiliserons ensuite pour créer d'autres VM. Cette opération est donc très importante. En utilisant ce mécanisme nous allons économiser de l'espace disque.

Ajouter des utilisateurs

  • Créez un utilisateur (commande useradd à installer si besoin) et vérifiez la bonne modification des fichiers /etc/passwd et /etc/shadow.
  • Vérifiez l'existence de ce nouvel utilisateur (commande id utilisateur).
  • Utilisez ce nouveau compte et modifiez son mot de passe (commande passwd).
  • N'oubliez pas de supprimer ces utilisateurs de test avec userdel.

Configurer les services

  • Lister les services et vérifiez que le service sshd (connexion sécurisée) est ouvert
systemctl list-units
  • Vérifiez le bon fonctionnement de ce service en tentant une connexion sur la machine localhost :
ssh localhost

Changer le nom de votre machine

  • Utilisez la commande hostnamectl hostname srv.idl.fr pour changer le nom de votre VM.
  • Utilisez ensuite hostnamectl status pour vérifier la configuration.
  • Vérifiez que le fichier /etc/hostname a été automatiquement modifié.
  • Vérifiez avec la commande historique hostname le nouveau nom.

Jouer avec l'espace de swap

  • Prenez un cliché avant de traiter cet exercice.
  • Clonez votre VM (afin d'obtenir VM2) en utilisant l'option du clone lié et traitez cet exercice dans la nouvelle VM créée.
  • Dans votre VM2, créez un fichier de 500 Mo rempli de zéro (commande dd et fichier spécial /dev/zero) et formatez ce fichier comme un espace de swap (commande mkswap). Ajoutez ensuite ce fichier à votre espace de mémoire virtuelle (commandes swapon et free pour vérifier ou swapon -s).
  • Vous pouvez maintenant déconnecter la partition de swap créée lors de l'installation (swapoff).
  • Faites la même manipulation avec un nouveau disque :
    • Arrêtez votre VM2,
    • Placez-vous dans la configuration VirtualBox de votre VM et ajoutez un deuxième disque de 4Go,
    • Démarrez votre VM2,
    • Avec la commande lsblk vérifiez que le deuxième disque a été détecté.
    • Avec la commande fdisk /dev/sdb créez une table des partitions ainsi qu'une partition sur ce nouveau disque.
    • Refaites les manipulations précédentes avec cette nouvelle partition.
    • Arrêtez votre VM2 et supprimez la.