Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
elearning:workbooks:centos:8:utilisateur:l101 [2021/05/27 05:28] adminelearning:workbooks:centos:8:utilisateur:l101 [2024/04/28 11:16] (Version actuelle) admin
Ligne 1: Ligne 1:
 ~~PDF:LANDSCAPE~~ ~~PDF:LANDSCAPE~~
  
-Version : **2021.01**+Version : **2024.01**
  
 Dernière mise-à-jour : ~~LASTMOD~~ Dernière mise-à-jour : ~~LASTMOD~~
Ligne 11: Ligne 11:
   * **LCF401 - Système de Fichiers**   * **LCF401 - Système de Fichiers**
     * Contenu du Module     * Contenu du Module
-    * Linux File Hierarchy System +    * LAB #1 - Linux File Hierarchy System 
-    * Types de Fichiers +      1.1 - Types de Fichiers 
-    * La Commande mount +      1.2 - La Commande mount 
-    Le Fichier /etc/fstab +      1.3 - La Commande umount 
-      * Comprendre le fichier /etc/fstab+      * 1.4 - Le Fichier /etc/fstab
         * Options de Montage         * Options de Montage
-    * La Commande umount +    * LAB #2 - Système de Fichiers Unix 
-    * Système de Fichiers Unix +      * 2.1 - Superbloc 
-      * Superbloc +      * 2.2 - Inodes 
-      * Inodes +      * 2.3 - Blocs de données 
-      * Blocs de données +      * 2.4 - Liens Physiques 
-      * Liens Physiques +      * 2.5 - Liens Symboliques
-      * Liens Symboliques+
  
-=====Linux File Hierarchy System=====+=====LAB #1 - Linux File Hierarchy System=====
  
 Le système de fichiers de Linux est organisé autour d'une arborescence unique ayant un point de départ appelé la **racine**, représenté par le caractère **/**. En dessous de cette racine se trouvent des répertoires contenant fichiers et sous-répertoires. L'organisation des répertoires est conforme à un standard, appelé le **Linux File Hierarchy System**. Le système de fichiers de Linux est organisé autour d'une arborescence unique ayant un point de départ appelé la **racine**, représenté par le caractère **/**. En dessous de cette racine se trouvent des répertoires contenant fichiers et sous-répertoires. L'organisation des répertoires est conforme à un standard, appelé le **Linux File Hierarchy System**.
Ligne 66: Ligne 65:
   * **/proc** : contient un système de fichiers virtuel qui extrait de la mémoire les informations en cours de traitement. Le contenu des fichiers est créé dynamiquement lors de la consultation. Seul root peut consulter la totalité des informations dans le répertoire /proc.   * **/proc** : contient un système de fichiers virtuel qui extrait de la mémoire les informations en cours de traitement. Le contenu des fichiers est créé dynamiquement lors de la consultation. Seul root peut consulter la totalité des informations dans le répertoire /proc.
   * **/root** : le home de root, l’administrateur système.   * **/root** : le home de root, l’administrateur système.
-  * **/run** : remplace le répertoire /var/run. Sous CentOS 8 /var/run est un lien symbolique qui pointe vers /run.+  * **/run** : remplace le répertoire /var/run.
   * **/sbin** : contient des binaires, donc programmes, pour l’administration du système local.  Sous CentOS 8 il s'agit d'un lien symbolique qui pointe vers /usr/sbin.   * **/sbin** : contient des binaires, donc programmes, pour l’administration du système local.  Sous CentOS 8 il s'agit d'un lien symbolique qui pointe vers /usr/sbin.
   * **/srv** : contient des données pour les **s**e**r****v**ices hébergés par le système tels ftp, bases de données, web etc.   * **/srv** : contient des données pour les **s**e**r****v**ices hébergés par le système tels ftp, bases de données, web etc.
Ligne 74: Ligne 73:
   * **/var** : contient des fichiers de taille variable.   * **/var** : contient des fichiers de taille variable.
  
-=====Types de Fichiers=====+====1.1 - Types de Fichiers====
  
 Il existe trois types majeurs de fichier sous le système Linux : Il existe trois types majeurs de fichier sous le système Linux :
Ligne 92: Ligne 91:
 Si le nom d'un fichier commence par un **.**, le fichier devient caché. Si le nom d'un fichier commence par un **.**, le fichier devient caché.
  
-=====La Commande mount=====+====1.2 - La Commande mount====
  
 Pour que Linux soit informé de la présence d’un système de fichiers, ce système doit être monté. Pour monter un système de fichiers, on utilise la commande **mount** : Pour que Linux soit informé de la présence d’un système de fichiers, ce système doit être monté. Pour monter un système de fichiers, on utilise la commande **mount** :
Ligne 108: Ligne 107:
 sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel) sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel)
 proc on /proc type proc (rw,nosuid,nodev,noexec,relatime) proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
-devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=403984k,nr_inodes=100996,mode=755)+devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=1881944k,nr_inodes=470486,mode=755)
 securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime) securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
 tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel) tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
Ligne 117: Ligne 116:
 pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime,seclabel) pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime,seclabel)
 bpf on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700) bpf on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700)
-cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,perf_event) 
-cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,cpu,cpuacct) 
-cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,freezer) 
-cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,net_cls,net_prio) 
 cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,devices) cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,devices)
 +cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,net_cls,net_prio)
 +cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,memory)
 cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,cpuset) cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,cpuset)
-cgroup on /sys/fs/cgroup/rdma type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,rdma) 
-cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,blkio) 
 cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,pids) cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,pids)
-cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,memory)+cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,cpu,cpuacct) 
 +cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,perf_event) 
 +cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,blkio)
 cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,hugetlb) cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,hugetlb)
 +cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,freezer)
 +cgroup on /sys/fs/cgroup/rdma type cgroup (rw,nosuid,nodev,noexec,relatime,seclabel,rdma)
 +none on /sys/kernel/tracing type tracefs (rw,relatime,seclabel)
 configfs on /sys/kernel/config type configfs (rw,relatime) configfs on /sys/kernel/config type configfs (rw,relatime)
-/dev/sda3 on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)+/dev/mapper/cl_centos8-root on / type xfs (rw,relatime,seclabel,attr2,inode64,logbufs=8,logbsize=32k,noquota)
 selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime) selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime)
-systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=31,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=17654)+systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=31,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=3826)
 mqueue on /dev/mqueue type mqueue (rw,relatime,seclabel) mqueue on /dev/mqueue type mqueue (rw,relatime,seclabel)
-hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,seclabel,pagesize=2M) 
 debugfs on /sys/kernel/debug type debugfs (rw,relatime,seclabel) debugfs on /sys/kernel/debug type debugfs (rw,relatime,seclabel)
 +hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,seclabel,pagesize=2M)
 +fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
 /dev/sda1 on /boot type ext4 (rw,relatime,seclabel) /dev/sda1 on /boot type ext4 (rw,relatime,seclabel)
-tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=84108k,mode=700,uid=1000,gid=1000)+sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime) 
 +tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=382500k,mode=700,uid=1000,gid=1000) 
 +tmpfs on /run/user/42 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=382500k,mode=700,uid=42,gid=42) 
 +gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000)
 </code> </code>
  
Ligne 145: Ligne 149:
 sysfs /sys sysfs rw,seclabel,nosuid,nodev,noexec,relatime 0 0 sysfs /sys sysfs rw,seclabel,nosuid,nodev,noexec,relatime 0 0
 proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0 proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0
-devtmpfs /dev devtmpfs rw,seclabel,nosuid,size=403984k,nr_inodes=100996,mode=755 0 0+devtmpfs /dev devtmpfs rw,seclabel,nosuid,size=1881944k,nr_inodes=470486,mode=755 0 0
 securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0 securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0
 tmpfs /dev/shm tmpfs rw,seclabel,nosuid,nodev 0 0 tmpfs /dev/shm tmpfs rw,seclabel,nosuid,nodev 0 0
Ligne 154: Ligne 158:
 pstore /sys/fs/pstore pstore rw,seclabel,nosuid,nodev,noexec,relatime 0 0 pstore /sys/fs/pstore pstore rw,seclabel,nosuid,nodev,noexec,relatime 0 0
 bpf /sys/fs/bpf bpf rw,nosuid,nodev,noexec,relatime,mode=700 0 0 bpf /sys/fs/bpf bpf rw,nosuid,nodev,noexec,relatime,mode=700 0 0
-cgroup /sys/fs/cgroup/perf_event cgroup rw,seclabel,nosuid,nodev,noexec,relatime,perf_event 0 0 +cgroup /sys/fs/cgroup/devices cgroup rw,seclabel,nosuid,nodev,noexec,relatime,devices 0 0
-cgroup /sys/fs/cgroup/cpu,cpuacct cgroup rw,seclabel,nosuid,nodev,noexec,relatime,cpu,cpuacct 0 0 +
-cgroup /sys/fs/cgroup/freezer cgroup rw,seclabel,nosuid,nodev,noexec,relatime,freezer 0 0+
 cgroup /sys/fs/cgroup/net_cls,net_prio cgroup rw,seclabel,nosuid,nodev,noexec,relatime,net_cls,net_prio 0 0 cgroup /sys/fs/cgroup/net_cls,net_prio cgroup rw,seclabel,nosuid,nodev,noexec,relatime,net_cls,net_prio 0 0
-cgroup /sys/fs/cgroup/devices cgroup rw,seclabel,nosuid,nodev,noexec,relatime,devices 0 0+cgroup /sys/fs/cgroup/memory cgroup rw,seclabel,nosuid,nodev,noexec,relatime,memory 0 0
 cgroup /sys/fs/cgroup/cpuset cgroup rw,seclabel,nosuid,nodev,noexec,relatime,cpuset 0 0 cgroup /sys/fs/cgroup/cpuset cgroup rw,seclabel,nosuid,nodev,noexec,relatime,cpuset 0 0
-cgroup /sys/fs/cgroup/rdma cgroup rw,seclabel,nosuid,nodev,noexec,relatime,rdma 0 0+cgroup /sys/fs/cgroup/pids cgroup rw,seclabel,nosuid,nodev,noexec,relatime,pids 0 0 
 +cgroup /sys/fs/cgroup/cpu,cpuacct cgroup rw,seclabel,nosuid,nodev,noexec,relatime,cpu,cpuacct 0 0 
 +cgroup /sys/fs/cgroup/perf_event cgroup rw,seclabel,nosuid,nodev,noexec,relatime,perf_event 0 0
 cgroup /sys/fs/cgroup/blkio cgroup rw,seclabel,nosuid,nodev,noexec,relatime,blkio 0 0 cgroup /sys/fs/cgroup/blkio cgroup rw,seclabel,nosuid,nodev,noexec,relatime,blkio 0 0
-cgroup /sys/fs/cgroup/pids cgroup rw,seclabel,nosuid,nodev,noexec,relatime,pids 0 0 
-cgroup /sys/fs/cgroup/memory cgroup rw,seclabel,nosuid,nodev,noexec,relatime,memory 0 0 
 cgroup /sys/fs/cgroup/hugetlb cgroup rw,seclabel,nosuid,nodev,noexec,relatime,hugetlb 0 0 cgroup /sys/fs/cgroup/hugetlb cgroup rw,seclabel,nosuid,nodev,noexec,relatime,hugetlb 0 0
 +cgroup /sys/fs/cgroup/freezer cgroup rw,seclabel,nosuid,nodev,noexec,relatime,freezer 0 0
 +cgroup /sys/fs/cgroup/rdma cgroup rw,seclabel,nosuid,nodev,noexec,relatime,rdma 0 0
 +none /sys/kernel/tracing tracefs rw,seclabel,relatime 0 0
 configfs /sys/kernel/config configfs rw,relatime 0 0 configfs /sys/kernel/config configfs rw,relatime 0 0
-/dev/sda3 / xfs rw,seclabel,relatime,attr2,inode64,noquota 0 0+/dev/mapper/cl_centos8-root / xfs rw,seclabel,relatime,attr2,inode64,logbufs=8,logbsize=32k,noquota 0 0
 selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0 selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
-systemd-1 /proc/sys/fs/binfmt_misc autofs rw,relatime,fd=31,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=17654 0 0+systemd-1 /proc/sys/fs/binfmt_misc autofs rw,relatime,fd=31,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=3826 0 0
 mqueue /dev/mqueue mqueue rw,seclabel,relatime 0 0 mqueue /dev/mqueue mqueue rw,seclabel,relatime 0 0
-hugetlbfs /dev/hugepages hugetlbfs rw,seclabel,relatime,pagesize=2M 0 0 
 debugfs /sys/kernel/debug debugfs rw,seclabel,relatime 0 0 debugfs /sys/kernel/debug debugfs rw,seclabel,relatime 0 0
 +hugetlbfs /dev/hugepages hugetlbfs rw,seclabel,relatime,pagesize=2M 0 0
 +fusectl /sys/fs/fuse/connections fusectl rw,relatime 0 0
 /dev/sda1 /boot ext4 rw,seclabel,relatime 0 0 /dev/sda1 /boot ext4 rw,seclabel,relatime 0 0
-tmpfs /run/user/1000 tmpfs rw,seclabel,nosuid,nodev,relatime,size=84108k,mode=700,uid=1000,gid=1000 0 0+sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw,relatime 0 0 
 +tmpfs /run/user/1000 tmpfs rw,seclabel,nosuid,nodev,relatime,size=382500k,mode=700,uid=1000,gid=1000 0 0 
 +tmpfs /run/user/42 tmpfs rw,seclabel,nosuid,nodev,relatime,size=382500k,mode=700,uid=42,gid=42 0 0 
 +gvfsd-fuse /run/user/1000/gvfs fuse.gvfsd-fuse rw,nosuid,nodev,relatime,user_id=1000,group_id=1000 0 0
 </code> </code>
  
 <WRAP center round important 60%> <WRAP center round important 60%>
-**Important** : Notez que le système de fichiers de /dev/sda1 est **ext4** tandis que que le système de fichiers de /dev/sda3 est **xfs**. La comparaison des systèmes de fichiers Linux est abordée dans le module **LCF504 - Gestion des Disques, des Systèmes de Fichiers et du Swap** de la formation **LCF500 - CentOS 8 Linux (RHEL 8) - Technician**.+**Important** : Notez que le système de fichiers de /dev/sda1 est **ext4** tandis que que le système de fichiers de /dev/mapper/cl_centos8-root est **xfs**. La comparaison des systèmes de fichiers Linux est abordée dans le module **LCF504 - Gestion des Disques, des Systèmes de Fichiers et du Swap**.
 </WRAP> </WRAP>
  
-=====Le Fichier /etc/fstab=====+====1.3 - La Commande umount===== 
 + 
 +Pour démonter un système de fichiers, on utilise la commande umount : 
 + 
 +  # umount /mnt/<répertoire_cible> 
 + 
 +ou 
 + 
 +  # umount /dev/cdrom 
 + 
 +====1.4 - Le Fichier /etc/fstab====
  
 Dans le cas où la commande **mount** est utilisée avec l’option **–a**, tous les systèmes de fichiers mentionnés dans un fichier spécial dénommé **/etc/fstab** seront montés en même temps : Dans le cas où la commande **mount** est utilisée avec l’option **–a**, tous les systèmes de fichiers mentionnés dans un fichier spécial dénommé **/etc/fstab** seront montés en même temps :
Ligne 189: Ligne 208:
 # #
 # /etc/fstab # /etc/fstab
-# Created by anaconda on Fri May  8 07:35:23 2020+# Created by anaconda on Wed Jun 16 06:21:32 2021
 # #
 # Accessible filesystems, by reference, are maintained under '/dev/disk/'. # Accessible filesystems, by reference, are maintained under '/dev/disk/'.
Ligne 197: Ligne 216:
 # units generated from this file. # units generated from this file.
 # #
-UUID=4c0cc28c-0d59-45be-bd73-d292b80be33c /                       xfs     defaults        0 0 +/dev/mapper/cl_centos8-root /                       xfs     defaults        0 0 
-UUID=2ae4c035-9244-458c-82c5-a49ae169cdb6 /boot                   ext4    defaults        1 2 +UUID=1c04981e-5317-4b73-9695-3ce25246835d /boot                   ext4    defaults        1 2 
-UUID=c8bb3f47-d67f-4b21-b781-766899dc83d4 swap                    swap    defaults        0 0+/dev/mapper/cl_centos8-swap swap                    swap    defaults        0 0
 </code> </code>
- 
-====Comprendre le fichier /etc/fstab==== 
  
 Chaque ligne dans ce fichier contient 6 champs : Chaque ligne dans ce fichier contient 6 champs :
Ligne 235: Ligne 252:
 | file_mode=valeur | Formats non-Linux | Spécifie les droits d'usage des fichiers | umask actuel | | file_mode=valeur | Formats non-Linux | Spécifie les droits d'usage des fichiers | umask actuel |
  
-=====La Commande umount===== +=====LAB #2 - Système de Fichiers Unix=====
- +
-Pour démonter un système de fichiers, on utilise la commande umount : +
- +
-  umount /mnt/<répertoire_cible> +
- +
-ou +
- +
-  # umount /dev/cdrom +
- +
-=====Système de Fichiers Unix=====+
  
 Chaque partition sous un système Unix peut héberger une des structures suivantes : Chaque partition sous un système Unix peut héberger une des structures suivantes :
Ligne 254: Ligne 261:
   * blocs d'indirection   * blocs d'indirection
  
-====Superbloc====+====2.1 - Superbloc====
  
 Le superbloc contient : Le superbloc contient :
Ligne 284: Ligne 291:
 </code> </code>
  
-====Inodes====+====2.2 - Inodes====
  
 Chaque fichier est représenté par un **inode**. L'inode contient : Chaque fichier est représenté par un **inode**. L'inode contient :
Ligne 333: Ligne 340:
 </code> </code>
  
-====Blocs de données====+====2.3 - Blocs de données====
  
 Les données sont stockées dans des blocs de données. Dans le cas d'un répertoire, le bloc de données contient une table qui référence les inodes et les noms des fichiers dans le répertoire. Cette table s'appelle une **table catalogue**. Les données sont stockées dans des blocs de données. Dans le cas d'un répertoire, le bloc de données contient une table qui référence les inodes et les noms des fichiers dans le répertoire. Cette table s'appelle une **table catalogue**.
Ligne 339: Ligne 346:
 Le nom d'un fichier n'est pas stocké dans l'inode mais dans une **table catalogue**. Cette particularité nous permet de donner deux noms différents au même fichier. Pour ajouter un nouveau nom à un fichier, il convient de créer un **lien physique**. Le nom d'un fichier n'est pas stocké dans l'inode mais dans une **table catalogue**. Cette particularité nous permet de donner deux noms différents au même fichier. Pour ajouter un nouveau nom à un fichier, il convient de créer un **lien physique**.
  
-====Liens Physiques====+====2.4 - Liens Physiques====
  
 Un lien physique se crée en utilisant la commande suivante : Un lien physique se crée en utilisant la commande suivante :
Ligne 382: Ligne 389:
 </WRAP> </WRAP>
  
-====Liens Symboliques====+====2.5 - Liens Symboliques====
  
 Un lien symbolique est un **raccourci** vers un autre fichier ou répertoire. Un lien symbolique se crée en utilisant la commande suivante : Un lien symbolique est un **raccourci** vers un autre fichier ou répertoire. Un lien symbolique se crée en utilisant la commande suivante :
Ligne 408: Ligne 415:
  
 ----- -----
-<html> +Copyright © 2024 Hugh Norris.
-<div align="center"> +
-Copyright © 2021 Hugh Norris. +
-</html>+
Menu