- SAÉ 2.03: Semaine 06 - GRP A7
- Table des matières
- Semaine S1 de la SAÉ
- Formation de notre équipe
- Préparation d’une machine virtuelle Debian
- Prérequis matériel de la machine physique
- Préparation de la machine virtuelle
- Caractéristiques de la machine virtuelle
- Installation de l’OS
- Préparation du système
- Accès sudo pour user
- Installation des suppléments invités
- À propos de la distribution Debian
- Quelques questions
- La maintenance
- Nom générique, nom de code et version
- Installation préconfigurée
- Récupérer et préparer les fichiers nécessaires
- Faire une nouvelle machine avec les caractéristiques suivantes
- Fichiers de pré-configuration
- Questions : Ajustement de la pré-configuration
- Problèmes rencontrés
- Solutions envisagées
- Semaine S3 de la SAÉ
- Interface graphique pour git
- Installons autre chose et comparons
- Semaine S4 de la SAÉ
- 1. Préliminaire : redirection de port
- 2. Installation de Gitea
- 2.1. Installons de Gitea
- 2.1.1. Installation du binaire
- 2.1.2. Mise à jour du binaire du service Gitea
- 2.2. Tests d’utilisation
- 2.3. Pour aller plus loin
header-includes:
- \usepackage{enumitem}
- \renewlist{itemize}{itemize}{20}
- \setlist[itemize]{label=$\cdot$}
SAÉ 2.03: Semaine 06 - GRP A7
Table des matières
- SAÉ 2.03: Semaine 06 - GRP A7
Semaine S1 de la SAÉ
Formation de notre équipe
(GRP A7) : Anas Sibarni, Anas Achouch, Mohamed El Amine Yahiaoui
Préparation d’une machine virtuelle Debian
Prérequis matériel de la machine physique
- 4 Go de RAM minimum
- 20 Go d’espace disque disponible ou plus
- VirtualBox installé avec son «extension pack» (VBoxGuestAddition.iso) sur la machine hôte.
Préparation de la machine virtuelle
Caractéristiques de la machine virtuelle
- Nom de la machine dans VirtualBox : sae203
- Dossier de la machine : /usr/local/virtual_machine/infoetu/login | Bien entendu, login est à remplacer par votre login.
- Type : Linux
- Version : Debian 64-bit
- Mémoire vive (RAM) : 2048 Mo
- Disque dur : 20 Go, ne pas cocher la case "Pre-allocate Full Size"
Suivez les indications de cette image pour configurer votre machine virtuelle (en ajustant les chemin "Folder" si besoin):
-
Que signifie “64-bit” dans “Debian 64-bit” ?
La largeur des registres est de 64 bits sur les nombres entiers. (Peut gérer plus de 4GB de RAM)
Source -
Quelle est la configuration réseau utilisée par défaut ?
La configuration réseau par défaut est IPV6.
-
Quel est le nom du fichier XML contenant la configuration de votre machine ?
Le nom du fichier XML contenant la configuration de notre machine est config.xml
Source -
Sauriez-vous le modifier directement ce fichier de configuration pour mettre 2 processeurs à votre machine ?
Ouvrir le fichier config.xml en exécutant la commande
nano config.xml
puis modifier le nombre de processeurs.
Installation de l’OS
Pour installer l'OS Debian, télécharger le fichier.iso sur leur site, et insérer ce fichier comme ci-dessous :
-
Qu’est-ce qu’un fichier iso bootable ?
C’est un fichier qui doit s'exécuter au démarrage de la machine
-
Qu’est-ce que MATE ? GNOME ?
MATE est un fork de GNOME (un fork est un nouveau référentiel qui partage le code et les paramètres de visibilité avec le référentiel « en amont » d'origine) ; ce sont des environnement de bureau simples d’utilisation.
Sources : source1, source2 -
Qu’est-ce qu’un serveur web ?
Un « serveur web » peut faire référence à des composants logiciels (software) ou à des composants matériels (hardware) ou à des composants logiciels et matériels qui fonctionnent ensemble.
Schéma repésentant le fonctionnement d'un serveur web
Source -
Qu’est-ce qu’un serveur ssh ?
Le protocole Secure Shell (SSH) est une méthode permettant d'envoyer en toute sécurité des commandes à un ordinateur sur un réseau non sécurisé. SSH a recours à la cryptographie pour authentifier et chiffrer les connexions entre les appareils.
Schéma représentant le fonctionnement d'un serveur SSH
Source -
Qu’est-ce qu’un serveur mandataire ?
Un serveur mandataire filtre les sites web que vous consultez. Il reçoit les requêtes de votre navigateur pour récupérer les pages web demandées avec leurs éléments et, dans le respect des règles édictées, les transmets ou non. Ils sont fréquemment utilisés dans le domaine professionnel et les points d’accès sans fil publics pour contrôler quels sites peuvent être consultés, pour interdire l’accès à Internet sans identification, ou pour effectuer des contrôles de sécurité de certains sites répertoriés.
Source
Préparation du système
Accès sudo pour user
Passer en mode console sur la vm (ctrl+alt+f1), si fonctionne pas, dans terminal exécuter
su -
puis mettre mot de passe de root (indiquer en index du sujet semaine 1 sae)
Ensuite, exécuter :usermod -aG sudo user
pour ajouter user aux sudo
Visualiser tous les group du pc :getent group
Source
- Comment peut-on savoir à quels groupes appartient l'utilisateur user ?
Exécuter la commande suivante :
id -nG user
Source
Installation des suppléments invités
-
Quelle est la version du noyau Linux utilisé par votre VM ?
user@serveur:~$ uname -r
6.1.0-31-amd64
La version du noyau Linux est 6.1.0
Source -
À quoi servent les suppléments invités ? Donner 2 principales raisons de les installer.
Les suppléments invités sont une sorte de pack logiciel à installer sur la machine virtuelle pour optimiser son fonctionnement et ajouter de nouvelles fonctionnalités
2 principales raisons de les installer : possibilité de d’avoir une presse-papier partagée entre la vm et l’ordinateur hôte ; pouvoir mettre la vm en plein écran
Source -
À quoi sert la commande mount (dans notre cas de figure et dans le cas général) ?
La commande mount permet de demander au système d'exploitation de rendre un système de fichiers accessible, à un emplacement spécifié (le point de montage). En outre, vous pouvez utiliser la commande mount pour générer d'autres arborescences de fichiers qui sont constituées de répertoires et de montages de fichiers.
Dans notre cas, la commande mount est utilisée pour que notre système d’exploitation prend en compte ce qu’il y a dans le lecteur CD de la VM (notamment ici pour les suppléments invités).
Source
À propos de la distribution Debian
Quelques questions
- Qu’est-ce que le Projet Debian ? D’où vient le nom Debian ?
Le nom Debain vient du nom du foncdateur de Debian Ian Murdock, et de sa femme, Debra
La maintenance
-
Il existe 3 durées de prise en charge (support) de ces versions : la durée minimale, la durée en support long terme (LTS) et la durée en support long terme étendue (ELTS). Quelle sont les durées de ces prises en charge ?
Durée minimale LTS ELTS 3 ans 5 ans 10 ans -
Pendant combien de temps les mises à jour de sécurité seront-elles fournies ?
L'équipe en charge de la sécurité prend normalement en charge la distribution stable pendant trois années après sa publication. Il n'est pas possible de prendre en charge trois distributions, c'est déjà bien assez difficile avec deux.
Nom générique, nom de code et version
-
Combien de versions au minimum sont activement maintenues par Debian ? Donnez leur nom générique (= les types de distribution).
Debian a toujours au moins trois versions activement entretenues : stable , testing et unstable
-
Chaque distribution majeure possède un nom de code différent. Par exemple, la version majeure actuelle (Debian 12) se nomme bookworm. D’où viennent les noms de code données aux distributions ?
Quand une distribution Debian est en cours de développement, elle n'a aucun numéro de version mais un nom de code. Le but de ces noms de code est de faciliter la copie sur les miroirs des distributions Debian
-
L’un des atouts de Debian fut le nombre d’architecture (≈ processeurs) officiellement prises en charge. Combien et lesquelles sont prises en charge par la version Bullseye ?
Les architecture supporter par Debian sont au nombre de 10 officielement, voici les arcitechture supporter officielement:
- PC 64 bits (amd64)
- ARM64 bits (AArch64)
- ARM EABI (armel)
- ARM avec unité de calcul flottant (armhf)
- PC 32 bits (i386)
- MIPS (grand boutiste)
- MIPS (petit boutiste)
- MIPS 64 bits (petit boutiste)
- Processeurs POWER
- IBM System
Source
-
Première version avec un nom de code
◦ Quel a était le premier nom de code utilisé ? buzz
◦ Quand a-t-il été annoncé ? 17 juin 1996
◦ Quel était le numéro de version de cette distribution ? 1.1 -
Dernière nom de code attribué
◦ Quel est le dernier nom de code annoncé à ce jour ? bookworm
◦ Quand a-t-il été annoncé ? 10 juin 2023
◦ Quelle est la version de cette distribution ? 12
Installation préconfigurée
Récupérer et préparer les fichiers nécessaires
Faire une nouvelle machine avec les caractéristiques suivantes
Voir : Caractéristiques de la machine virtuelle
Fichiers de pré-configuration
-
Récupérer l’archive autoinstall_Debian.zip sur Moodle et décompresser-là dans le répertoire de votre machine virtuelle.
-
Remplacer la chaîne @@UUID@@ par un identifiant unique universel. Le plus simple est d’exécuter la commande ci-dessous en étant placé dans le même répertoire que votre fichier S203-Debian12.viso.
sed -i -E "s/(--iprt-iso-maker-file-marker-bourne-sh).*$/\1=$(cat /proc/sys/kernel/random/uuid)/" S203-Debian12.viso
- Insérer le fichier S203_Debian12.viso dans le lecteur optique (cd/dvd) de votre machine virtuelle ;
- Démarrer la machine virtuelle et laissez l’installation se dérouler.
- Testez les ajouts invités en vous connectant (user/user, ou root/root) puis en modifiant la taille de la fenêtre
ajouter user à sudo : sh usermod -aG sudo user
Fichiers de pré-configuration
-
Récupérer l’archive autoinstall_Debian.zip sur Moodle et décompresser-là dans le répertoire de votre machine virtuelle.
-
Remplacer la chaîne @@UUID@@ par un identifiant universel. Le plus simple est d’exécuter la commande ci-dessous en étant placé dans le même répertoire que votre fichier S203-Debian12.viso :
sed -i -E "s/(--iprt-iso-maker-file-marker-bourne-sh).*$/\1=$(cat /proc/sys/kernel/random/uuid)/" S203-Debian12.viso
-
Insérer le fichier S203_Debian12.viso dans le lecteur optique (cd/dvd) de votre machine virtuelle
-
Démarrer la machine virtuelle et laissez l’installation se dérouler
-
Testez les ajouts invités en vous connectant (user/user, ou root/root) puis en modifiant la taille de la fenêtre
Questions : Ajustement de la pré-configuration
Modifier votre configuration (et recommencez l’installation) afin de :
-
Ajouter le droit d’utiliser sudo à l’utilisateur standard
Dans le fichier preseed-fr.cfg ajouter sudo à la ligne
d-i passwd/user-default-groups string audio cdrom video sudo
-
Installer l’environnement MATE
Ajouter cette ligne dans le fichier preseed.cfg :
## Installer environnement MATE /install.amd/vmlinuz vga=788 initrd=/install.amd/gtk/initrd.gz desktop=mate-desktop --- quiet
-
Ajouter les paquets suivants :
-
sudo : sinon la gestion sudo est inutile
-
git, sqlite3, curl : pour préparer l’installation de la semaine prochaine
-
bash-completion : va vous simplifier grandement l’écriture des lignes de commande
-
neofetch : pas très utile
Ajouter la ligne suivant pour installer tous ces paquets :
d-i pkgsel/include string sudo, git, sqlite3, curl, bash-completion, neofetch
-
Problèmes rencontrés
Après installation sur ordinateur personnel de l'archive auto_install.zip sur moodle, et mise en commentaire de la ligne concernant le proxy dans le fichier preseed.cfg, je n'arrivais pas à lancer une installation automatique sur mon pc.
Solutions envisagées
Essayer sur un pc de salle de TP.
Semaine S3 de la SAÉ
Interface graphique pour git
Tout d'abords,installez les paquets gitk et git gui
- Qu’est-ce que le logiciel gitk ? Comment se lance-t-il ?
gitk est un navigateur de dépôt graphique, le premier de son genre. Il peut être considéré comme un encapsuleur graphique pour git log . Il permet d'explorer et de visualiser l'historique d'un dépôt.
Il se lance avec la commande :
gitk
- Qu’est-ce que le logiciel git-gui ? Comment se lance-t-il ?
C’est aussi une interface graphique pour le dépot .
Il se lance avec la commande :
gitk
Installons autre chose et comparons
Interface gratuite ungit
- Pourquoi avez-vous choisi ce logiciel ?
Il représente les dépôts git sous forme d’arbres pour lesquels chaque nœud correspond à un commit.
- Comment l’avez vous installé ?
avec cette commande d'abords pour installer nodes js :
sudo apt install nodejs npm -y
puis celle-çi pour installer ungit :
npm install -g ungit
Comparaison avec gitk et git gui
Critère | Gitk | Git GUI | Ungit |
---|---|---|---|
Type d'outil | Visualisation de l'historique | Interface complète pour Git | Interface web pour Git |
Installation | Inclus avec Git | Inclus avec Git | Nécessite Node.js |
Interface | Minimaliste, basé sur Tk | Basique, en Tk | Moderne et intuitive (web) |
Utilisation | Explorer les commits et branches | Faire des commits, merges, push/pull | Interface graphique simplifiée pour Git |
Facilité d'utilisation | Moyenne (assez brut) | Plus simple mais limité | Très accessible |
Support du staging | Non | Oui | Oui |
Support des merges | Visualisation uniquement | Oui, mais basique | Oui, très visuel |
Personnalisation | Non | Non | Oui, via plugins et options web |
Multiplateforme | Oui | Oui | Oui (via navigateur) |
Dépendances | Git et Tk | Git et Tk | Node.js et navigateur |
Semaine S4 de la SAÉ
1. Préliminaire : redirection de port
Le mode réseau par défaut de nos machines virtuelles est le mode NAT. Il permet de faire la redirection dont nous avons besoins ici.
Sur VirtualBox, on peut utiliser l’interface graphique et la configuration de votre VM pour ajouter des redirections de port. Regardez la figure ci-dessous et réalisez la redirection du port 3000 de votre machine hôte (= la machine physique où est installée VirtualBox et votre VM) vers le port 3000 de votre VM.