Initialisation
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
====== /boot ======
|
||||
{{tag>"linux systeme"}}
|
||||
{{ :dummy.png?75x75|linux system}}
|
||||
|
||||
Le dossier ''/boot'' est un dossier clé dans un système d'exploitation Linux. Il contient les fichiers nécessaires pour amorcer le système, tels que les fichiers du noyau et les fichiers d'initialisation.
|
||||
|
||||
===== Structure du dossier /boot =====
|
||||
|
||||
Le dossier ''/boot'' est situé à la racine du système de fichiers Linux. Il contient plusieurs fichiers et sous-dossiers, chacun ayant un objectif spécifique. Voici une brève description de certains des fichiers et sous-dossiers les plus importants :
|
||||
|
||||
* /boot/grub : contient les fichiers de configuration pour le chargeur de démarrage GRUB.
|
||||
* /boot/initrd.img : contient le fichier d'image RAM initial, qui est utilisé pour démarrer le système.
|
||||
* /boot/System.map : contient une carte des symboles du noyau pour le débogage.
|
||||
* /boot/vmlinuz : contient le noyau Linux.
|
||||
|
||||
===== Fichiers et sous-dossiers importants =====
|
||||
|
||||
Le dossier ''/boot'' contient plusieurs fichiers et sous-dossiers importants qui sont utilisés pour amorcer le système. Voici quelques exemples de fichiers et sous-dossiers couramment utilisés :
|
||||
|
||||
* /boot/grub/grub.cfg : contient les fichiers de configuration pour le chargeur de démarrage GRUB.
|
||||
* /boot/initrd.img-<version> : contient le fichier d'image RAM initial pour une version spécifique du noyau.
|
||||
* /boot/System.map-<version> : contient une carte des symboles du noyau pour une version spécifique du noyau.
|
||||
* /boot/vmlinuz-<version> : contient le noyau Linux pour une version spécifique du noyau.
|
||||
|
||||
===== L'importance du dossier /boot =====
|
||||
|
||||
Le dossier ''/boot'' est essentiel pour le démarrage du système d'exploitation Linux. Il contient les fichiers nécessaires pour amorcer le système, tels que les fichiers du noyau et les fichiers d'initialisation. Sans ces fichiers, le système ne peut pas démarrer.
|
||||
|
||||
Lorsqu'un système Linux démarre, le chargeur de démarrage (tel que GRUB) charge les fichiers du noyau et les fichiers d'initialisation à partir du dossier ''/boot''. Le noyau Linux est responsable de la gestion des ressources système, telles que le matériel, les processus et les périphériques. Les fichiers d'initialisation sont utilisés pour configurer le système et exécuter les scripts nécessaires pour le démarrage des services.
|
||||
|
||||
|
||||
|
||||
--- //[[user:cedricabonnel]] assisté par [[user:cpt]] 2023/02/15 22:37//
|
||||
@@ -0,0 +1,33 @@
|
||||
====== /dev ======
|
||||
{{tag>"linux systeme"}}
|
||||
{{ :dummy.png?75x75|Linux Système}}
|
||||
|
||||
Le dossier ''/dev'' sur un système Linux contient des fichiers de périphériques, qui sont des entrées et sorties spéciales qui permettent au système d'interagir avec les différents périphériques connectés à l'ordinateur, comme les disques durs, les lecteurs de disque, les imprimantes, les réseaux, les claviers, les souris, etc. Ces fichiers de périphériques sont généralement des fichiers de type "pseudo-fichiers" qui sont créés à la volée par le noyau lorsque le périphérique est détecté et qui sont utilisés par les programmes pour accéder aux périphériques.
|
||||
|
||||
Il contient des fichiers spéciaux appelés "périphériques de caractères" et "périphériques de blocs", qui sont utilisés pour interagir avec les périphériques matériels du système.
|
||||
|
||||
Les fichiers dans le dossier ''/dev'' sont créés par le noyau du système d'exploitation lors du démarrage, et représentent les différents périphériques matériels connectés au système, tels que les disques durs, les lecteurs de CD/DVD, les cartes réseau, les ports USB, les interfaces audio et bien d'autres encore.
|
||||
|
||||
Les périphériques de blocs sont utilisés pour accéder aux périphériques de stockage de masse, tels que les disques durs et les clés USB. Ils permettent aux utilisateurs de lire et d'écrire des données sur ces périphériques de manière séquentielle. Par exemple, le périphérique de bloc pour le premier disque dur du système peut être référencé par le nom ''/dev/sda''.
|
||||
|
||||
Les périphériques de caractères, quant à eux, sont utilisés pour interagir avec les périphériques matériels de manière séquentielle. Ils sont utilisés pour des périphériques tels que les ports série, les imprimantes et les interfaces audio. Par exemple, le périphérique de caractères pour le port série peut être référencé par le nom "/dev/ttyS0".
|
||||
|
||||
Dans le dossier ''/dev'', il y a également des fichiers spéciaux qui sont utilisés pour représenter des périphériques virtuels, tels que des consoles virtuelles et des ports de communication avec le noyau.
|
||||
|
||||
Le dossier ''/dev'' est généralement utilisé par les programmes et les utilitaires du système pour interagir avec les périphériques matériels. Par exemple, les programmes d'installation peuvent accéder aux périphériques de bloc pour installer le système d'exploitation sur un disque dur, tandis que les programmes de gestion de fichiers peuvent accéder aux périphériques de bloc et de caractères pour lire et écrire des données sur des périphériques de stockage de masse ou des périphériques d'interface.
|
||||
|
||||
Sous le dossier ''/dev'', il y a plusieurs fichiers ou dossiers remarquables, en voici quelques-uns :
|
||||
|
||||
* /dev/null : Il s'agit d'un fichier spécial qui ne stocke pas de données. Tout ce qui est écrit dans ce fichier est simplement supprimé. Il est souvent utilisé pour rediriger les sorties de programmes ou de scripts qui ne nécessitent pas de sortie.
|
||||
|
||||
* /dev/random et /dev/urandom : Ce sont des fichiers spéciaux qui fournissent des données aléatoires. Ils sont souvent utilisés pour générer des clés de chiffrement ou pour les jeux.
|
||||
|
||||
* /dev/tty : Il s'agit du périphérique de caractères qui représente le terminal actif pour un utilisateur. Tous les caractères entrés sur le clavier sont envoyés à ce périphérique et tous les caractères sortants sont affichés sur l'écran associé.
|
||||
|
||||
* /dev/sda, /dev/sdb, etc. : Ce sont des périphériques de blocs qui représentent les disques durs ou les SSD connectés au système. Chaque disque dur est représenté par un périphérique différent, par exemple, le premier disque dur est représenté par ''/dev/sda''.
|
||||
|
||||
* /dev/cdrom : Il s'agit d'un lien symbolique qui pointe vers le périphérique de bloc qui représente le lecteur de CD-ROM ou de DVD connecté au système.
|
||||
|
||||
* /dev/null : Il est un fichier spécial qui est souvent utilisé pour rediriger les sorties de programmes ou de scripts qui ne nécessitent pas de sortie.
|
||||
|
||||
* /dev/null0 et /dev/full : Ce sont des fichiers spéciaux similaires à /dev/null, mais avec des comportements différents. /dev/null0 est utilisé pour ignorer toutes les données entrantes, tandis que /dev/full est utilisé pour indiquer que le périphérique est plein.
|
||||
@@ -0,0 +1,9 @@
|
||||
====== /etc/bashrc ======
|
||||
{{tag>"Linux systeme"}}
|
||||
{{ :dummy.png?75x75|}}
|
||||
|
||||
''/etc/bashrc'' est un fichier de configuration pour la shell **Bash** qui est généralement utilisé par les systèmes d'exploitation basés sur UNIX ou Linux. Il peut contenir des commandes et des paramètres de configuration pour la shell Bash qui doivent être exécutés pour tous les utilisateurs de la machine.
|
||||
|
||||
Il peut contenir des définitions de **variables d'environnement**, des **[[informatique:linux:commandes:alias|alias]] de commandes**, des **options de configuration pour Bash**, et d'autres commandes qui doivent être exécutées pour tous les utilisateurs de la machine au démarrage de la session. Il est généralement utilisé pour configurer des paramètres tels que la **mise en forme de la ligne de commande**, les couleurs, les **options de historique de commandes**, les **options de tabulation automatique**, et d'autres paramètres de configuration pour tous les utilisateurs. A noter que cela dépend des paramétrages de l'administrateur système de chaque distribution.
|
||||
|
||||
Voir [[https://www.abonnel.fr/informatique/linux/dossiers-remarquables/home/bash-profile|.bash_profile]] pour obtenir des exemples.
|
||||
@@ -0,0 +1,299 @@
|
||||
====== /etc/fstab ======
|
||||
{{ :dummy.png?75x75|Gestion des fichiers}}
|
||||
|
||||
----
|
||||
|
||||
Le fichier ''/etc/fstab'' est un fichier de configuration utilisé par le système d'exploitation Linux pour monter automatiquement des systèmes de fichiers. ''fstab'' signifie "File System Table" (Table des systèmes de fichiers).
|
||||
|
||||
Malgré l'amélioration des systèmes d'exploitation, il y a encore des éléments "à l'ancienne" dont nous ne pouvons tout simplement pas nous passer. Les systèmes de fichiers, et par nécessité, les tables de systèmes de fichiers, font partie de ces éléments constants.
|
||||
|
||||
Le fichier ''/etc/fstab'' contient une liste de systèmes de fichiers et de périphériques de stockage qui doivent être montés au démarrage du système. Pour chaque périphérique de stockage, le fichier ''/etc/fstab'' contient des informations telles que le point de montage (où le système de fichiers doit être monté dans la hiérarchie des répertoires), le type de système de fichiers, les options de montage et les paramètres de sécurité.
|
||||
|
||||
La structure de la table elle-même est composée de **6 colonnes**, où chaque colonne désigne un paramètre spécifique et doit être configurée dans l'ordre correct. Les colonnes de la table sont les suivantes, de gauche à droite :
|
||||
|
||||
* **Périphérique** : généralement le nom donné ou l'UUID du périphérique monté.
|
||||
* **Point de montage** : désigne le répertoire où le périphérique est ou sera monté.
|
||||
* **Type de système de fichiers** : indique le type de système de fichiers en cours d'utilisation.
|
||||
* **Options** : liste toutes les options de montage actives. Si vous utilisez plusieurs options, elles doivent être séparées par des virgules.
|
||||
* **Opération de sauvegarde** : (le premier chiffre) il s'agit d'un système binaire où 1 = une sauvegarde à l'aide de l'utilitaire //dump// d'une partition. 0 = pas de sauvegarde. Il s'agit d'une méthode de sauvegarde obsolète et **NE DOIT PAS être utilisée**.
|
||||
* **Ordre de vérification du système de fichiers** : (deuxième chiffre) ici, nous pouvons voir trois résultats possibles. 0 signifie que ''fsck'' ne vérifiera pas le système de fichiers. Les nombres supérieurs à celui-ci représentent l'ordre de vérification. Le système de fichiers racine doit être défini sur 1 et les autres partitions sur 2.
|
||||
|
||||
<panel type="default" title="Exemple de fichier" subtitle="/etc/fstab" icon="fa fa-laptop">
|
||||
<code>
|
||||
UUID=9a1046f4-e5b1-44cc-9e9d-a9b1d8d56be3 / ext4 defaults,relatime,discard 0 1
|
||||
UUID=53d697a8-877e-468c-8fa8-fda6dd3f01d1 /boot ext4 defaults,discard,noatime 0 2
|
||||
UUID=13d65e2a-21ac-486e-9e48-cc5aac3cc0df /home ext4 defaults,relatime 0 2
|
||||
UUID=005f62eb-a70e-46ab-b457-3c4dcfc22280 /tmp ext4 defaults,discard,noatime 0 2
|
||||
UUID=09b1e2ca-269e-4971-b91a-498847cb4221 none swap defaults 0 0
|
||||
#
|
||||
# Baie 1
|
||||
rpinas.acegrp.lan:/media/disk_14 /media/disk_14 nfs defaults,users,auto,nofail,noexec,soft,intr,rsize=1048576,wsize=1048576 0 0
|
||||
</code>
|
||||
</panel>
|
||||
Les informations contenues dans le fichier ''/etc/fstab'' sont utilisées par le système d'exploitation pour monter automatiquement les systèmes de fichiers au démarrage, ce qui permet d'accéder facilement aux fichiers stockés sur ces systèmes de fichiers. Sans ce fichier, il serait nécessaire de monter manuellement chaque système de fichiers chaque fois que le système d'exploitation est démarré, ce qui serait fastidieux et source d'erreurs.
|
||||
|
||||
===== Type de système de fichiers =====
|
||||
|
||||
==== NFS ====
|
||||
|
||||
Le type de système de fichiers **NFS** (Network File System) est un système de fichiers distribué qui permet à un utilisateur d'accéder à des fichiers et des répertoires sur un ordinateur distant comme s'ils étaient locaux. Le système de fichiers **NFS** est largement utilisé dans les environnements informatiques distribués et les réseaux locaux pour partager des fichiers et des données entre plusieurs systèmes. Il est souvent utilisé pour partager des fichiers entre des systèmes **Unix** et **Linux**. Le système de fichiers **NFS** utilise un protocole de communication réseau pour permettre aux clients d'accéder aux fichiers sur le serveur **NFS**.
|
||||
|
||||
Bien que le système de fichiers **NFS** soit principalement utilisé sur des systèmes **Unix** et **Linux**, il existe également des implémentations pour Windows. Microsoft propose un client NFS gratuit pour Windows, appelé "**Client for NFS**", qui permet aux utilisateurs Windows d'accéder à des fichiers stockés sur des serveurs NFS distants.
|
||||
|
||||
https://learn.microsoft.com/en-us/windows-server/storage/nfs/nfs-overview
|
||||
|
||||
Les options couramment utilisées pour monter des systèmes de fichiers NFS sont :
|
||||
|
||||
* **lookupcache=mode** : spécifie comment le noyau doit gérer le cache des entrées de répertoire pour un point de montage donné.
|
||||
* **nfsvers**=version : spécifie la version du protocole NFS à utiliser, où version peut être 3 ou 4.
|
||||
* **noacl** : désactive le traitement des ACL (Access Control Lists).
|
||||
* **nolock** : désactive le verrouillage de fichiers. Depuis NFS version 3.
|
||||
* **noexec** : empêche l'exécution de binaires sur les systèmes de fichiers montés. Cela peut être utile si le système de fichiers monté contient des binaires incompatibles avec le système local.
|
||||
* **nosuid** : désactive les bits set-user-identifier ou set-group-identifier pour empêcher les utilisateurs distants d'obtenir des privilèges supérieurs en exécutant un programme setuid.
|
||||
* **port=num** : spécifie le numéro de port numérique du serveur NFS. Si num est 0 (la valeur par défaut), mount interroge le service rpcbind de l'hôte distant pour connaître le numéro de port à utiliser.
|
||||
* **rsize=num** et **wsize=num** : ces options définissent le nombre maximum d'octets à transférer dans une seule opération de lecture ou d'écriture NFS.
|
||||
* **sec=flavors** : spécifie les mécanismes de sécurité à utiliser pour accéder aux fichiers sur l'export NFS monté. Exemple : ''sys'', ''krb5p''
|
||||
* **tcp** : indique au montage NFS d'utiliser le protocole TCP.
|
||||
* **udp** : indique au montage NFS d'utiliser le protocole UDP.
|
||||
|
||||
La configuration optimale dépend de l'environnement spécifique et des besoins du système. Cependant, voici quelques recommandations générales pour la configuration des options NFS dans ''/etc/fstab'' :
|
||||
|
||||
* Pour la sécurité, il est généralement recommandé d'utiliser l'option **sec=krb5p** pour chiffrer le trafic NFS et empêcher l'interception ou la modification des données. Cette option nécessite cependant une **infrastructure Kerberos** en place pour l'authentification.
|
||||
|
||||
* Pour améliorer les performances, il est souvent conseillé de définir des valeurs personnalisées pour les options ''rsize'' et ''wsize'' à une valeur maximale de **1048576** (ou **1 Mo**), qui est la valeur par défaut pour NFS version 3 et 4. Cela permet de maximiser le débit de données et d'optimiser les performances du système : ''rsize=1048576,wsize=1048576''.
|
||||
|
||||
* Pour éviter les problèmes de verrouillage de fichiers vous pouvez utiliser l'option ''nolock''. Lorsqu'un client NFS accède à un fichier sur un serveur, il utilise le verrouillage de fichiers pour empêcher d'autres clients d'accéder ou de modifier le même fichier simultanément. Toutefois, dans certains cas, l'utilisation du verrouillage de fichiers NFS peut entraîner des problèmes de performance ou de fiabilité. En utilisant l'option "nolock", les clients NFS peuvent désactiver la gestion de verrouillage de fichiers NFS pour les fichiers sur un serveur NFS particulier. Cela peut être utile dans des situations où la performance est plus importante que la cohérence des données, ou lorsque le serveur NFS ne supporte pas la gestion de verrouillage de fichiers. **Il N'EST PAS conseillé d'utiliser l'option ''nolock''**. L'option "nolock" est spécifique à NFS version 3. Dans les versions antérieures de NFS, le verrouillage de fichiers est toujours utilisé pour empêcher les accès concurrents aux fichiers.
|
||||
|
||||
* Pour garantir la disponibilité continue des systèmes de fichiers NFS et éviter les problèmes de blocage, il est recommandé d'utiliser l'option ''soft'' plutôt que l'option ''hard''. Les options ''soft'' et ''hard'' sont spécifiques à NFS et ne s'appliquent qu'aux montages NFS. L'option ''soft'' permet au client NFS de renvoyer une erreur si le serveur ne répond pas ou est indisponible, alors que l'option ''hard'' fait en sorte que le client continue d'essayer d'atteindre le serveur même si celui-ci est indisponible, ce qui peut entraîner un blocage du système.
|
||||
|
||||
* Pour améliorer la tolérance aux erreurs réseau, il est possible d'utiliser l'option ''intr'' pour interrompre les opérations NFS en cours sur un système de fichiers lorsque le serveur NFS ne répond pas. Si l'option ''intr'' n'est pas spécifiée, les opérations NFS sont bloquées et le client ne répond plus aux entrées utilisateur tant que le serveur NFS distant ne répond pas ou ne se termine pas. Cela peut être un problème pour les applications interactives ou les scripts qui utilisent NFS, car ils peuvent devenir bloqués si le serveur ne répond pas.
|
||||
|
||||
Enfin, il est important de bien comprendre les implications de chaque option et de tester les différentes configurations dans votre environnement avant de les déployer en production.
|
||||
===== Les options =====
|
||||
|
||||
==== noatime ====
|
||||
|
||||
L'option ''noatime'' dans **fstab** est utilisée pour améliorer les performances du système de fichiers locaux. Normalement, chaque fois qu'un fichier est accédé sur un système de fichiers Linux, l'horodatage de dernière accès (//atime//) est mis à jour. Cela peut entraîner une surcharge inutile du système de fichiers, car même la simple lecture d'un fichier peut entraîner une écriture sur le disque pour mettre à jour l'//atime//.
|
||||
|
||||
En utilisant l'option ''noatime'' , le système de fichiers ne mettra pas à jour la date et l'heure du dernier accès (//atime//) lorsqu'un fichier est accédé. Cela peut considérablement réduire la charge sur le disque et améliorer les performances du système, en particulier pour les systèmes de fichiers très fréquemment utilisés, tels que les systèmes de fichiers racine ou les systèmes de fichiers de base de données.
|
||||
|
||||
L'utilisation de l'option ''noatime'' peut entraîner une perte d'informations d'audit, car le système ne gardera plus une trace du moment où les fichiers ont été accédés pour la dernière fois. Si cela est important pour vos besoins, vous pouvez envisager d'utiliser l'option ''relatime'' à la place, qui met à jour l'//atime// uniquement si le fichier a été accédé plus récemment que la dernière modification ou l'écriture.
|
||||
|
||||
L'option "noatime" est prise en charge par la plupart des systèmes de fichiers Linux modernes, y compris les systèmes de fichiers **ext2**, **ext3**, **ext4**, **XFS**, **Btrfs**, **JFS**, **ReiserFS** et **NTFS** (via le pilote **NTFS-3G**, voir la section [[informatique:linux:cfp:modifier-le-noyau-linux#fichier-de-configuration-du-noyau|Fichier de configuration du noyau]]).
|
||||
|
||||
Cependant, l'utilisation de l'option ''noatime'' peut ne pas être appropriée pour tous les types d'applications ou de charges de travail. Par exemple, certains programmes de surveillance de fichiers ou de sauvegarde peuvent avoir besoin de suivre l'horodatage de dernière accès pour fonctionner correctement. Par conséquent, il est recommandé de tester soigneusement l'impact de l'option ''noatime'' sur votre système avant de l'utiliser en production.
|
||||
|
||||
==== nodev ====
|
||||
|
||||
L'option ''nodev'' est une option de montage utilisée dans le fichier ''/etc/fstab'' pour spécifier que les fichiers sur le système de fichiers ne peuvent pas être des fichiers spéciaux de périphérique.
|
||||
|
||||
En d'autres termes, si l'option ''nodev'' est utilisée, les utilisateurs ne pourront pas créer de fichiers spéciaux de périphérique (tels que des fichiers de périphérique de bloc ou de caractère) sur le système de fichiers monté.
|
||||
|
||||
L'option ''nodev'' est souvent utilisée pour des raisons de sécurité, car elle empêche les utilisateurs d'exécuter du code malveillant en créant des fichiers spéciaux de périphérique sur un système de fichiers monté.
|
||||
|
||||
Exemple de ligne dans le fichier ''/etc/fstab'' avec l'option ''nodev'' :
|
||||
|
||||
/dev/sda1 /mnt/data ext4 defaults,nodev 0 2
|
||||
|
||||
Dans cet exemple, le système de fichiers ''ext4'' monté sur ''/mnt/data'' ne permet pas la création de fichiers spéciaux de périphérique.
|
||||
|
||||
==== defaults ====
|
||||
|
||||
L'option ''defaults'' est une option de montage simplifiée qui inclut un ensemble prédéfini d'options de montage pour un système de fichiers spécifique. Les options incluses dans l'option ''defaults'' varient en fonction du type de système de fichiers.
|
||||
|
||||
En général, les options suivantes sont incluses dans l'option ''defaults'' :
|
||||
|
||||
* **rw** : autorise les opérations de lecture et d'écriture sur le système de fichiers
|
||||
* **suid** : permet l'exécution des fichiers binaires en tant qu'utilisateur propriétaire
|
||||
* **dev** : autorise la création et la suppression de périphériques spéciaux dans le système de fichiers
|
||||
* **exec** : permet l'exécution de fichiers binaires
|
||||
* **auto** : monte le système de fichiers automatiquement au démarrage
|
||||
* **nouser** : n'autorise pas les utilisateurs ordinaires à monter ou démonter le système de fichiers
|
||||
* **async** : monte un système de fichiers pour spécifier le mode d'écriture de données asynchrone.
|
||||
|
||||
Notez que les options incluses dans l'option ''defaults'' peuvent varier selon la distribution Linux ou le type de système de fichiers utilisé. Il est important de vérifier la documentation appropriée pour votre système avant de modifier ou de configurer les options de montage.
|
||||
|
||||
==== sync, async ====
|
||||
|
||||
En utilisant l'option ''async'', les entrées/sorties peuvent être envoyées à la partition plus rapidement, car le système de fichiers n'attendra pas la confirmation de chaque écriture pour continuer. Cela signifie que les données peuvent être écrites plus rapidement, mais cela peut également entraîner une perte de données en cas de panne du système.
|
||||
|
||||
Si l'option ''sync'' est utilisée, le système de fichiers attendra la confirmation de chaque écriture avant de continuer, ce qui peut ralentir le processus d'écriture, mais garantira l'intégrité des données.
|
||||
|
||||
Il est important de noter que l'utilisation de l'option ''async'' est généralement déconseillée sur des systèmes critiques tels que des serveurs de bases de données ou de fichiers, car cela peut augmenter les risques de perte de données en cas de panne du système ou de coupure de courant.
|
||||
|
||||
Pour un SSD, il est généralement recommandé d'utiliser l'option ''discard'' plutôt que ''async'' ou ''sync'' dans le fichier ''/etc/fstab''.
|
||||
|
||||
L'option ''discard'' permet au système de fichiers de renvoyer les blocs de données qui ne sont plus nécessaires au SSD, ce qui peut améliorer les performances et la durée de vie du SSD.
|
||||
==== user, users ====
|
||||
|
||||
Si un disque n'est pas monté au démarrage du système et que vous souhaitez qu'un utilisateur standard puisse le monter manuellement, vous pouvez utiliser l'option ''users'' ou ''user'' dans le fichier ''/etc/fstab'' pour autoriser les utilisateurs à monter le disque.
|
||||
|
||||
L'option ''users'' permet à n'importe quel utilisateur de monter le système de fichiers, tandis que l'option ''user'' ne permet que à l'utilisateur propriétaire du point de montage de monter le système de fichiers. Voici comment utiliser ces options:
|
||||
|
||||
-- Ajoutez l'option ''users'' à la liste des options pour le système de fichiers dans le fichier ''/etc/fstab'', par exemple:
|
||||
|
||||
/dev/sdb1 /mnt/data ext4 defaults,users 0 0
|
||||
|
||||
Cela permettra à tous les utilisateurs de monter manuellement le système de fichiers avec la commande ''mount /mnt/data''.
|
||||
|
||||
-- Ajoutez l'option ''user'' à la liste des options pour le système de fichiers dans le fichier ''/etc/fstab'', par exemple:
|
||||
|
||||
/dev/sdb1 /mnt/data ext4 defaults,user 0 0
|
||||
|
||||
Cela permettra à l'utilisateur propriétaire du point de montage de monter manuellement le système de fichiers avec la commande ''mount /mnt/data''.
|
||||
|
||||
==== auto ====
|
||||
|
||||
L'option ''auto'' est une option de montage qui spécifie que le système de fichiers doit être automatiquement monté au démarrage du système.
|
||||
|
||||
Lorsque l'option ''auto'' est utilisée pour un système de fichiers spécifique, le système tentera automatiquement de monter le système de fichiers au démarrage, sans intervention de l'utilisateur. Cela peut être utile pour les systèmes de fichiers qui contiennent des données essentielles au fonctionnement du système et doivent être montés automatiquement à chaque démarrage.
|
||||
|
||||
==== nofail ====
|
||||
|
||||
L'option ''nofail'' est une option de montage qui peut être utilisée dans le fichier ''/etc/fstab'' pour spécifier qu'un système de fichiers ne doit pas empêcher le démarrage du système si le montage échoue.
|
||||
|
||||
Par défaut, lorsqu'un système de fichiers spécifié dans le fichier ''/etc/fstab'' n'est pas monté avec succès au démarrage, cela peut entraîner des erreurs ou des blocages du système. Cela peut être particulièrement problématique si le système de fichiers contient des données essentielles pour le fonctionnement du système.
|
||||
|
||||
En utilisant l'option ''nofail'' dans le fichier ''/etc/fstab'', le système de fichiers sera monté de manière à ne pas bloquer le démarrage du système si le montage échoue. Cela peut être utile dans des situations où un système de fichiers peut ne pas être disponible au démarrage ou où il n'est pas critique pour le fonctionnement du système.
|
||||
|
||||
Lorsqu'elle est utilisée en combinaison avec l'option ''auto'', l'option ''nofail'' indique au système de tenter automatiquement de monter le système de fichiers au démarrage, mais de ne pas bloquer le démarrage si le montage échoue.
|
||||
|
||||
==== realtime ====
|
||||
|
||||
Cette option est obsolète et n'est plus utilisée dans les versions récentes des distributions Linux.
|
||||
|
||||
L'option ''realtime'' est utilisée pour les systèmes de fichiers locaux, où elle permet de définir que le système de fichiers doit être monté en mode temps réel pour un accès à haute priorité.
|
||||
|
||||
Cependant, pour les systèmes de fichiers NFS, l'option ''realtime'' n'a pas de sens car les opérations NFS sont déjà exécutées en temps réel. L'utilisation de cette option pourrait donc entraîner des comportements inattendus ou des performances médiocres.
|
||||
|
||||
En outre, il est important de noter que le système de fichiers **ext4** ne supporte pas la fonctionnalité en temps réel, contrairement à certains autres systèmes de fichiers tels que **XFS**.
|
||||
|
||||
|
||||
==== relatime ====
|
||||
|
||||
L'option ''relatime'' est une option de montage pour les systèmes de fichiers Linux qui permet de mettre à jour le champ d'horodatage d'accès (atime) d'un fichier uniquement si celui-ci est plus ancien que le champ d'horodatage de modification (mtime) ou de création (ctime) du fichier.
|
||||
|
||||
L'option ''relatime'' est une amélioration de l'option ''noatime'', qui désactive complètement la mise à jour du champ d'horodatage d'accès lors de la lecture d'un fichier. En comparaison, l'option ''relatime'' permet de conserver l'horodatage d'accès lorsqu'il est nécessaire pour certaines applications (comme les programmes de surveillance de fichiers), tout en évitant la mise à jour inutile du champ d'horodatage d'accès pour les fichiers qui sont régulièrement consultés.
|
||||
|
||||
L'utilisation de l'option ''relatime'' permet de réduire les opérations d'écriture sur le disque dur par rapport à l'option ''atime'' par défaut, tout en conservant les horodatages d'accès pour les fichiers qui en ont besoin. Cela peut contribuer à améliorer les performances globales du système de fichiers.
|
||||
|
||||
/dev/sda1 /mnt/data ext4 defaults,relatime 0 2
|
||||
|
||||
L'option ''relatime'' n'est pas prise en charge par tous les systèmes de fichiers et toutes les versions de Linux. Elle est généralement prise en charge par les systèmes de fichiers couramment utilisés, tels que ''ext4'' et ''XFS'', à partir des versions du noyau Linux 2.6.20 et ultérieures.
|
||||
==== bind ====
|
||||
|
||||
L'option ''bind'' dans le fichier ''/etc/fstab'' permet de monter un répertoire à un emplacement différent dans le système de fichiers, sans avoir besoin de copier les données.
|
||||
|
||||
Lorsque vous utilisez l'option ''bind'', vous montez un répertoire existant (source) sur un autre répertoire (destination) qui peut être n'importe où dans le système de fichiers. Le contenu du répertoire source apparaîtra alors dans le répertoire de destination, et toute modification apportée à l'un des deux répertoires sera reflétée dans l'autre.
|
||||
|
||||
L'option ''bind'' est souvent utilisée pour partager des répertoires entre différentes parties du système de fichiers, ou pour créer des liens symboliques persistants entre des répertoires.
|
||||
|
||||
Voici un exemple d'utilisation de l'option ''bind'' dans le fichier ''/etc/fstab'':
|
||||
|
||||
/home/user1/docs /home/user2/shared-docs none bind 0 0
|
||||
|
||||
Dans cet exemple, le répertoire ''/home/user1/docs'' est monté sur ''/home/user2/shared-docs'' en utilisant l'option ''bind''. Cela permettra à l'utilisateur ''user2'' d'accéder aux documents de l'utilisateur ''user1'' sans avoir à les copier dans son propre répertoire.
|
||||
|
||||
Si vous utilisez l'option ''bind'' pour partager un répertoire entre deux utilisateurs, vous pouvez ajouter l'option ''uid'' ou ''gid'' pour spécifier le propriétaire ou le groupe propriétaire du répertoire de destination, afin que les fichiers créés dans ce répertoire appartiennent au bon utilisateur ou groupe.
|
||||
|
||||
Voici un exemple d'utilisation de l'option ''bind'' avec l'option ''uid'' pour spécifier le propriétaire du répertoire de destination:
|
||||
|
||||
/home/user1/docs /home/user2/shared-docs none bind,uid=user2 0 0
|
||||
|
||||
Dans cet exemple, le répertoire ''/home/user1/docs'' est monté sur ''/home/user2/shared-docs'' en utilisant l'option ''bind'' et l'option ''uid'' pour spécifier que le propriétaire du répertoire de destination est l'utilisateur ''user2''.
|
||||
|
||||
==== discard ====
|
||||
|
||||
L'option ''discard'' dans le fichier ''/etc/fstab'' est utilisée pour activer la fonction de libération de blocs inutilisés (TRIM ou DISCARD) pour les disques SSD. Lorsqu'un système de fichiers est monté avec l'option ''discard'', le système d'exploitation peut informer le disque SSD des blocs de données qui ne sont plus utilisés et qui peuvent être effacés. Cette fonctionnalité de libération des blocs inutilisés peut aider à améliorer les performances et la durée de vie du SSD en évitant la fragmentation des données sur le disque.
|
||||
|
||||
Il est important de noter que tous les disques SSD ne prennent pas en charge la fonction TRIM ou DISCARD, et que certains contrôleurs de disque SSD peuvent avoir des performances médiocres lorsqu'ils sont utilisés avec l'option ''discard''. Il est donc recommandé de vérifier la compatibilité de votre SSD avant d'utiliser l'option ''discard''.
|
||||
|
||||
Pour vérifier que votre SSD prend en charge la fonction TRIM ou DISCARD, vous pouvez exécuter la commande suivante en tant que superutilisateur :
|
||||
|
||||
sudo hdparm -I /dev/sda | grep TRIM
|
||||
|
||||
Si la commande ''hdparm'' n'est pas reconnu, installez le programme ''hdparm'' avec votre gestionnaire de paquets (dnf, yum, apt...).
|
||||
|
||||
Assurez-vous de remplacer ''/dev/sda'' par le nom de périphérique correspondant à votre disque SSD. Si la commande renvoie ''Data Set Management TRIM supported (limit 8 blocks)'', cela signifie que votre SSD prend en charge la fonction TRIM.
|
||||
|
||||
Vous pouvez également utiliser la commande suivante pour vérifier que la fonction TRIM est activée sur votre système de fichiers :
|
||||
|
||||
sudo tune2fs -l /dev/sda1 | grep "Discard"
|
||||
|
||||
Assurez-vous de remplacer ''/dev/sda1'' par le nom de périphérique correspondant à votre partition contenant le système de fichiers. Si la commande renvoie ''Discard options: (0)'', cela signifie que la fonction TRIM est désactivée. Si la commande renvoie ''Discard options: (0x0002)'', cela signifie que la fonction TRIM est activée.
|
||||
|
||||
{{ :informatique:linux:system:dossiers-remarquables:pasted:20230605-220115.png }}
|
||||
===== Conseils =====
|
||||
|
||||
__Ajouter l'option ''discard'' pour le système de fichiers ''root'' et ''home''__
|
||||
|
||||
L'option ''discard'' permet au système de fichiers de libérer rapidement les blocs inutilisés, améliorant ainsi les performances et la durée de vie des **disques SSD**. Pour ajouter cette option, modifiez les lignes correspondantes comme suit :
|
||||
|
||||
<code>
|
||||
LABEL=root_35 / ext4 defaults,noatime,discard 0 1
|
||||
LABEL=home_35 /home ext4 defaults,noatime,discard 0 2
|
||||
</code>
|
||||
|
||||
Il est important d'aller consulter le chapitre [[#discard|discard]].
|
||||
|
||||
__Utiliser l'option ''relatime'' plutôt que ''noatime''__
|
||||
|
||||
L'option ''relatime'' permet au système de fichiers de mettre à jour les horodatages d'accès aux fichiers uniquement si l'accès est plus récent que l'horodatage de modification. Cela permet de réduire le nombre d'écritures sur le disque et d'améliorer les performances. Pour utiliser l'option ''relatime'', modifiez les lignes correspondantes comme suit :
|
||||
|
||||
<code>
|
||||
LABEL=root_35 / ext4 defaults,relatime,discard 0 1
|
||||
LABEL=boot_35 /boot ext4 defaults,relatime 0 1
|
||||
LABEL=home_35 /home ext4 defaults,relatime 0 2
|
||||
</code>
|
||||
|
||||
__Ajouter l'option ''noexec'' pour les systèmes de fichiers qui ne nécessitent pas l'exécution de fichiers__
|
||||
|
||||
L'option ''noexec'' empêche l'exécution de fichiers sur le système de fichiers, ce qui peut aider à renforcer la sécurité. Pour ajouter cette option, modifiez la ligne correspondante pour le système de fichiers ''/media/disk_14'' comme suit :
|
||||
|
||||
<code>
|
||||
rpinas.acegrp.lan:/media/disk_14 /media/disk_14 nfs users,auto,nofail,noexec 0 2
|
||||
</code>
|
||||
|
||||
|
||||
===== Vérifier la configuration du fichier /etc/fstab =====
|
||||
|
||||
Il est possible de vérifier la syntaxe et l'intégrité du fichier ''/etc/fstab'' sans exécuter les instructions en utilisant la commande ''findmnt''. Cette commande est disponible sur les systèmes Linux modernes et permet de lister les points de montage actifs et les systèmes de fichiers correspondants.
|
||||
|
||||
Pour vérifier la syntaxe du fichier ''/etc/fstab'', vous pouvez utiliser la commande suivante :
|
||||
|
||||
findmnt --verify --evaluate --fstab /etc/fstab
|
||||
|
||||
Cette commande vérifie la syntaxe du fichier ''/etc/fstab'' en utilisant l'option ''--verify'' et affiche les erreurs éventuelles. L'option ''--evaluate'' permet d'interpréter les expressions du fichier ''/etc/fstab'' et de les afficher sous forme de chaînes de montage complètes. L'option ''--fstab'' spécifie le chemin du fichier ''/etc/fstab'' à vérifier.
|
||||
|
||||
Si la commande affiche un message ''Succès, aucune erreur ni avertissement détecté'', cela signifie que le fichier ''/etc/fstab'' est syntaxiquement correct.
|
||||
|
||||
La commande ''findmnt'' ne vérifie pas si les systèmes de fichiers sont réellement accessibles ou s'ils sont correctement configurés. Elle ne simule que le processus de montage et vérifie la syntaxe du fichier ''/etc/fstab''. Il est donc recommandé de vérifier manuellement la configuration de chaque système de fichiers pour s'assurer de son accessibilité et de sa sécurité.
|
||||
|
||||
===== Vérifier les options de montage en cours =====
|
||||
|
||||
Vous pouvez vérifier les options de montage actuelles pour un système de fichiers en utilisant la commande ''mount'' sur Linux :
|
||||
|
||||
* Ouvrez un terminal sur votre système Linux.
|
||||
|
||||
* Tapez la commande suivante pour afficher une liste de tous les systèmes de fichiers montés :
|
||||
|
||||
mount
|
||||
|
||||
* Recherchez le système de fichiers que vous souhaitez vérifier dans la liste. Par exemple, si vous souhaitez vérifier les options de montage pour le système de fichiers racine (/), recherchez la ligne correspondante dans la liste.
|
||||
|
||||
* Les options de montage sont affichées entre parenthèses à la fin de la ligne. Les options sont séparées par des virgules.
|
||||
|
||||
<code>
|
||||
...
|
||||
/dev/sda2 on / type ext4 (rw,noatime,seclabel)
|
||||
...
|
||||
/dev/sda1 on /boot type ext4 (rw,noatime,seclabel)
|
||||
/dev/sdb2 on /home type ext4 (rw,relatime,seclabel)
|
||||
/dev/sdc on /home/cedric24c/_tmp type ext4 (rw,relatime,seclabel)
|
||||
</code>
|
||||
|
||||
--
|
||||
|
||||
Si une option est présente, cela signifie qu'elle est activée pour le système de fichiers correspondant. Si une option est absente, cela signifie qu'elle n'est pas activée pour ce système de fichiers.
|
||||
|
||||
--- //[[user:cedricabonnel]]// & [[user:cpt]]
|
||||
@@ -0,0 +1,13 @@
|
||||
====== /etc/profile.d/ ======
|
||||
{{tag>"Linux système"}}
|
||||
{{ :dummy.png?75x75|}}
|
||||
''/etc/profile.d/'' est un répertoire qui contient des fichiers shell (.sh) qui sont exécutés au démarrage de la session pour tous les utilisateurs du système. Ces fichiers peuvent contenir des variables d'environnement, des [[informatique:linux:commandes:alias|alias]] de commandes, des fonctions personnalisées, et d'autres paramètres de configuration pour la session de l'utilisateur.
|
||||
|
||||
Ce genre de répertoire est souvent utilisé par les systèmes d'exploitation basés sur Linux pour permettre une meilleure gestion des fichiers de configuration, il permet de séparer les configurations en plusieurs fichiers et de les organiser dans des sous-répertoires. Cela facilite l'ajout, la suppression ou la modification de configurations spécifiques sans avoir à toucher aux fichiers de base.
|
||||
|
||||
Il est possible de trouver ce genre de répertoire sur des distributions Linux comme **Debian**, **Ubuntu**, **Fedora**, **RedHat**, entre autres. Il est important de noter que cela dépend des paramétrages de l'administrateur système de chaque distribution.
|
||||
|
||||
Voir également [[.:etc-profile]]
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
====== /etc/profile ======
|
||||
{{tag>"Linux système"}}
|
||||
{{ :dummy.png?75x75|}}
|
||||
|
||||
''/etc/profile'' est un fichier de configuration qui est exécuté pour tous les utilisateurs lors de l'ouverture d'une session sur un système basé sur Linux. Il est généralement utilisé pour définir des variables d'environnement, des [[informatique:linux:commandes:alias|alias]] et des chemins d'accès pour tous les utilisateurs sur le système. Il peut également être utilisé pour exécuter des commandes automatiquement lors de l'ouverture d'une session, comme la configuration de paramètres de terminal, l'affichage d'un message de bienvenue, ou l'exécution d'autres tâches de démarrage.
|
||||
|
||||
Il est important de noter que les modifications apportées à ce fichier auront un impact sur tous les utilisateurs du système. Il est donc important de s'assurer que les modifications apportées sont appropriées pour tous les utilisateurs et de les tester en conséquence avant de les mettre en production. Il est également important de conserver une sauvegarde de ce fichier avant de le modifier, pour pouvoir le restaurer en cas de problème.
|
||||
|
||||
Voir également [[.:home:bash-profile]]
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
====== /etc/shadow ======
|
||||
{{tag>"linux systeme"}}
|
||||
|
||||
Le fichier ''/etc/shadow'' est un fichier de système qui contient les informations cryptées des utilisateurs, y compris les mots de passe. Il est généralement accessible uniquement par les utilisateurs **root** et les utilisateurs du groupe **shadow**. Le format de chaque ligne du fichier est généralement le suivant :
|
||||
|
||||
<code>
|
||||
username:password:lastchg:min:max:warn:inactive:expire:flag
|
||||
</code>
|
||||
|
||||
* username : Le nom d'utilisateur pour lequel les informations sont stockées.
|
||||
|
||||
* password : Le mot de passe crypté de l'utilisateur. Les mots de passe cryptés sont généralement stockés sous forme d'une chaîne de caractères commençant par $, suivi d'un chiffre indiquant le type de cryptage utilisé (comme $6$ pour SHA-512) et d'une série de caractères alphanumériques qui représentent le mot de passe crypté.
|
||||
|
||||
* lastchg : La date (en jours depuis le 1er janvier 1970) à laquelle le mot de passe a été modifié pour la dernière fois.
|
||||
|
||||
* min : La période minimale (en jours) requise entre les modifications de mot de passe.
|
||||
|
||||
* max : La période maximale (en jours) autorisée entre les modifications de mot de passe.
|
||||
|
||||
* warn : Le nombre de jours avant l'expiration du mot de passe où l'utilisateur est prévenu de changer son mot de passe.
|
||||
|
||||
* inactive : Le nombre de jours après l'expiration du mot de passe où le compte de l'utilisateur est désactivé.
|
||||
|
||||
* expire : La date d'expiration du mot de passe (en jours depuis le 1er janvier 1970).
|
||||
|
||||
* flag : Un champ optionnel qui peut contenir des informations supplémentaires, telles que l'indication que le compte est verrouillé ou que le mot de passe a été réinitialisé.
|
||||
|
||||
Certains de ces champs peuvent être vide ou ne pas être utilisés selon la configuration de votre système.
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
====== /etc ======
|
||||
{{ :dummy.png?75x75|Nom de la section}}
|
||||
|
||||
Le dossier ''/etc'' est l'un des dossiers les plus importants dans un système Linux. Il contient des fichiers de configuration pour diverses applications et services du système, ainsi que des fichiers de configuration système importants. Il ne doit contenir aucun fichier binaire ; si vous en trouvez, déplacez-les vers ''/usr/bin/'' ou ''/usr/sbin/''.
|
||||
===== Structure du dossier /etc =====
|
||||
|
||||
Le dossier ''/etc'' est situé à la racine du système de fichiers Linux. Il contient plusieurs sous-dossiers, chacun ayant un objectif spécifique. Voici une brève description de certains des sous-dossiers les plus importants :
|
||||
|
||||
* ''/etc/skel/'' stocke les fichiers d'utilisateur "squelette", qui sont utilisés pour peupler un répertoire personnel lorsqu'un utilisateur est créé pour la première fois. (Red Hat)
|
||||
* ''/etc/init.d/'' : contient des scripts de démarrage pour les services système.
|
||||
* ''/etc/opt'' : configuration pour les programmes présents dans ''/opt'' (FHS 3.0)
|
||||
* ''/etc/sgml'' : confiugration pour SGML (FHS 3.0)
|
||||
* ''/etc/sysconfig'' : contient des fichiers de configuration pour les paramètres système.
|
||||
* ''/etc/xml'' : configuration XML (FHS 3.0)
|
||||
* ''/etc/X11'' : Configuration pour le système de fenêtres X11 (FHS 3.0)
|
||||
|
||||
===== Fichiers de configuration système =====
|
||||
|
||||
Le dossier ''/etc'' contient également des fichiers de configuration système importants qui sont utilisés par de nombreuses applications et services du système. Voici quelques exemples de fichiers de configuration système couramment utilisés :
|
||||
|
||||
| ''/etc/passwd'' | contient des informations sur les comptes d'utilisateurs, comme le nom d'utilisateur, le groupe d'utilisateurs et le répertoire de travail de l'utilisateur. | FHS 3.0 |
|
||||
| ''/etc/group'' | contient des informations sur les groupes d'utilisateurs du système. | FHS 3.0 |
|
||||
| ''/etc/fstab'' | contient des informations sur les systèmes de fichiers montés automatiquement au démarrage du système. |
|
||||
| ''/etc/exports'' | liste du contrôle d'accès du système de fichiers NFS. | FHS 3.0 |
|
||||
|
||||
|
||||
|
||||
* ''/etc/hosts'' : contient des informations sur les noms de domaine et les adresses IP pour la résolution de noms. (FHS 3.0)
|
||||
* ''/etc/passwd'' : contient des informations sur les comptes d'utilisateurs du système.
|
||||
* ''/etc/group'' : contient des informations sur les groupes d'utilisateurs du système. (FHS 3.0)
|
||||
* [[.:etc-fstab]] : contient des informations sur les systèmes de fichiers montés automatiquement au démarrage du système. (FHS 3.0)
|
||||
* ''/etc/hosts'' : contient des informations sur les noms de domaine et les adresses IP pour la résolution de noms. (FHS 3.0)
|
||||
* ''/etc/ssh/sshd_config'' : contient des paramètres de configuration pour le serveur SSH.
|
||||
* [[.:etc-shadow]] : contient les mots de passe chiffrés pour les comptes d'utilisateurs.
|
||||
* ''/etc/sudoers'' : contient des informations sur les utilisateurs qui ont le droit d'exécuter des commandes avec les privilèges d'administrateur.
|
||||
|
||||
===== L'importance du dossier /etc =====
|
||||
|
||||
Le dossier ''/etc'' est l'un des dossiers les plus importants dans un système Linux, car il contient des fichiers de configuration pour de nombreuses applications et services du système. Les fichiers de configuration sont utilisés pour spécifier les paramètres du système, les options de sécurité et les préférences des utilisateurs. Sans ces fichiers de configuration, de nombreuses applications et services ne pourraient pas fonctionner correctement.
|
||||
|
||||
Il est important de noter que les fichiers de configuration du dossier ''/etc'' peuvent être modifiés uniquement par l'utilisateur **root**. Cela permet de garantir que les paramètres du système ne peuvent être modifiés que par des utilisateurs disposant des privilèges appropriés.
|
||||
|
||||
|
||||
--- //[[user:cedricabonnel]] assisté par [[user:cpt]] 2023/02/15 22:30//
|
||||
|
||||
@@ -0,0 +1,111 @@
|
||||
====== Dossiers pour Gnome ======
|
||||
{{tag>"Linux système"}}
|
||||
{{ :dummy.png?75x75|}}
|
||||
|
||||
GNOME (GNU Network Object Model Environment) est un environnement de bureau libre et open-source pour les systèmes d'exploitation basés sur Linux. Il a été développé pour fournir une interface utilisateur moderne et facile à utiliser pour les systèmes d'exploitation basés sur Linux.
|
||||
|
||||
GNOME 3 est la version actuelle de l'environnement de bureau GNOME (GNU Network Object Model Environment), qui est un environnement de bureau libre et open-source pour les systèmes d'exploitation basés sur Linux. GNOME 3 a été introduit en 2011, et a remplacé l'ancienne version GNOME 2. Il a été développé pour fournir une interface utilisateur moderne, graphique et facile à utiliser pour les systèmes d'exploitation basés sur Linux. Il a également fournit nouvelles fonctionnalités telles que l'intégration de gestion de fichiers et de recherche, un menu de démarrage plus rapide et plus efficace, une gestion des fenêtres plus intuitive, etc.
|
||||
|
||||
GNOME 3 est utilisé par défaut sur de nombreuses distributions Linux telles que Fedora, Debian, Ubuntu, Mint, etc. Il est connu pour son interface utilisateur moderne, sa facilité d'utilisation, et ses nombreuses fonctionnalités avancées. Il est également entièrement personnalisable et extensible grâce à l'utilisation de thèmes et d'extensions.
|
||||
|
||||
Les fichiers de configuration pour les environnements de bureau tels que GNOME 3 et GNOME 2 se trouvent généralement dans le répertoire ''/etc/''. Les fichiers de configuration pour l'interface utilisateur et les paramètres de l'utilisateur se trouvent généralement dans le répertoire personnel de l'utilisateur, comme ''~/.config/''.
|
||||
|
||||
Il est important de noter que les exemples suivants sont donnés à titre indicatif et que la localisation des fichiers de configuration peut varier en fonction de la distribution Linux utilisée et de la version de GNOME utilisée. Il est donc recommandé de vérifier la documentation de votre distribution Linux.
|
||||
|
||||
===== ~/.config =====
|
||||
|
||||
This is the default location for the environment variable XDG_CONFIG_HOME, if it is not set. User defined menus can be created at menus/applications.menu.
|
||||
|
||||
===== ~/.config/user-dirs.dirs =====
|
||||
|
||||
{{:informatique:linux:pasted:20220326-075231.png|exemple de contenu du fichier user-dirs.dirs}}
|
||||
|
||||
Voir le fichier de configuration par défaut ''/etc/xdg/user-dirs.defaults''
|
||||
|
||||
===== ~/.config/autostart =====
|
||||
|
||||
Contient des fichiers ''.desktop''.
|
||||
|
||||
===== ~/.fonts =====
|
||||
|
||||
Contains fonts specific to a particular user. When a user installs a font by dragging it to the <nowiki>fonts:///</nowiki> URI in nautilus, it is copied to this location.
|
||||
|
||||
|
||||
===== ~/.esd_auth =====
|
||||
|
||||
Contains the authentication cookie for the GNOME sound daemon. The GNOME sound daemon is the Enlightened Sound Daemon (ESD).
|
||||
|
||||
NOTE: This is a file, not a directory.
|
||||
|
||||
|
||||
===== ~/.gconf =====
|
||||
|
||||
Contient des paramètres pour les applications GNOME.
|
||||
|
||||
===== ~/.gconfd =====
|
||||
|
||||
Contient des données pour les applications GNOME.
|
||||
|
||||
===== ~/.gnomerec =====
|
||||
|
||||
Contient des paramètres pour l'interface utilisateur GNOME.
|
||||
|
||||
|
||||
|
||||
===== ~/.local/share =====
|
||||
|
||||
This is the default location for the environment variable XDG_DATA_HOME, if it is not set. User defined desktop entries can be created in the subdirectory applications. User defined mime types can be created in mime/packages/Overrides.xml.
|
||||
|
||||
===== ~/.local/share/icc/ =====
|
||||
|
||||
Dossier de profils de couleur pour applications.
|
||||
|
||||
Voir la page https://wiki.scribus.net/canvas/Getting_and_installing_ICC_profiles
|
||||
|
||||
===== ~/.local/share/applications =====
|
||||
|
||||
Description d'un raccourci applicatif.
|
||||
Le fichier de configuration doit avoir l'extension ''.desktop''.
|
||||
La référence du dossier est stockée dans la variable ''$XDG_DATA_HOME''. par défaut, elle est définie sur ''~/.local/share''. Puis elle est cherchée dans la variable ''$XDG_DATA_DIRS''. Si cette dernière n'est pas pas définie, c'est le chmein ''/usr/share'' qui est utilisé.
|
||||
|
||||
Par exemple :
|
||||
<code>
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=AZ Launcher - Minecraft
|
||||
Icon=az-launcher
|
||||
Exec=${desktop_exec}
|
||||
Comment=A Minecraft Modpack
|
||||
Categories=Game;
|
||||
Terminal=false
|
||||
</code>
|
||||
|
||||
===== ~/.local/share/icons/hicolor/256x256/apps =====
|
||||
|
||||
Dossier des icones. Taille des icônes possibles : 8x8, 13x13, 20x20, 24x24, 32x32, 40x40, 48x48, 64x64, 96x96, 128x128, 256x256
|
||||
|
||||
|
||||
===== ~/.metacity =====
|
||||
|
||||
Contains session data for the Metacity window manager.
|
||||
|
||||
===== ~/.nautilus =====
|
||||
|
||||
Contains file manager data that is specific to the user. For example, this directory can contain the following:
|
||||
|
||||
* Metadata for the directories with which the user works.
|
||||
* Nautilus emblems that the user adds.
|
||||
* Nautilus desktop images.
|
||||
|
||||
===== ~/.themes =====
|
||||
|
||||
|
||||
Contains controls theme options, window frame theme options, and icons theme options that the user adds. The user can add themes from the Theme preference tool.
|
||||
|
||||
===== ~/.thumbnails =====
|
||||
|
||||
|
||||
Contains image thumbnails for the user. The image thumbnails are used in the file manager. The file manager contains a preference that the user can select to stop generation of thumbnail images.
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
====== .bash_aliases ======
|
||||
{{tag>"Linux systeme"}}
|
||||
{{ :dummy.png?75x75|Nom de la section}}
|
||||
|
||||
Le fichier ''~/.bash_aliases'' contient des [[informatique:linux:commandes:alias|alias]] de commandes qui sont des raccourcis pour des commandes plus longues ou complexes. Ces alias sont généralement définis par l'utilisateur pour faciliter l'utilisation de commandes fréquemment utilisées.
|
||||
|
||||
Il peut contenir des alias pour des commandes courantes, comme [[informatique:linux:commandes:ls|ls]] pour ''ls --color=auto'', ou des commandes plus complexes, comme ''v'' pour [[informatique:linux:commandes:vim|vim]] ou ''g'' pour [[informatique:linux:commandes:git|git]].
|
||||
|
||||
{{:informatique:linux:pasted:20220326-074032.png|exemple de contenu du fichier .bash_aliases}}
|
||||
|
||||
|
||||
Le fichier ''.bash_aliases'' est généralement utilisé par les systèmes d'exploitation basés sur Linux, comme **Fedora**, **Ubuntu**, **Debian**, etc. Il est généralement appelé dans le fichier ''.bashrc'' pour exécuter les alias lorsque l'utilisateur ouvre un nouveau terminal. Si le fichier n'existe pas, il peut être créé manuellement par l'utilisateur et les alias peuvent être ajoutés à la main.
|
||||
@@ -0,0 +1,20 @@
|
||||
====== .bash_history ======
|
||||
{{tag>"Lorem"}}
|
||||
{{ :dummy.png?75x75|''.bash_history'' contient l'historique des commandes entrées par l'utilisateur dans le terminal.}}
|
||||
|
||||
Le fichier ''~/.bash_history'' est un fichier qui contient l'historique des commandes que vous avez entrées dans un terminal Bash. Cela peut être utile pour vous rappeler des commandes que vous avez utilisées récemment ou pour résoudre des problèmes en consultant l'historique des commandes.
|
||||
|
||||
Il est stocké dans votre répertoire personnel (''~''), et est enregistré pour chaque utilisateur séparément. Le fichier est automatiquement mis à jour chaque fois que vous exécutez une commande dans un terminal.
|
||||
|
||||
Vous pouvez afficher le contenu de ce fichier en utilisant la commande ''cat ~/.bash_history'' ou ''less ~/.bash_history'' pour naviguer dans le fichier, et utiliser la commande ''history'' pour afficher l'historique de commande dans le terminal.
|
||||
|
||||
{{:informatique:linux:pasted:20220326-074132.png|exemple de contenu du fichier .bash_history · Crédit image : Cédric Abonnel}}
|
||||
|
||||
Vous pouvez désactiver l'enregistrement de l'historique de commandes avec la commande ''unset HISTFILE''. Il est important de noter que l'historique de commandes enregistrées dans ce fichier ne peut être vu que par l'utilisateur qui a exécuté les commandes. Si vous voulez que d'autres utilisateurs puissent voir l'historique de commandes, vous devrez utiliser une méthode de partage différente, comme un fichier de journal de commandes partagé.
|
||||
|
||||
Le fichier ''.bash_history'' est utilisé par les systèmes d'exploitation basés sur Linux pour enregistrer l'historique des commandes entrées par l'utilisateur dans un terminal. Il est généralement utilisé par les distributions basées sur les shells bash, comme **Fedora**, **Ubuntu**, **Debian**, **Red Hat**, **CentOS**, etc.
|
||||
|
||||
A noter que la plupart des distributions basées sur Linux utilisent le //shell// **Bash** comme //shell// par défaut, donc il est très probable que le fichier ''.bash_history'' est utilisé dans presque toutes les distributions Linux, mais il peut y avoir des exceptions. Il est possible que d'autres //shells// (comme **zsh**, **fish**, etc) utilisent des fichiers d'historique différents ou des méthodes différentes pour enregistrer l'historique des commandes.
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
====== .bash_logout ======
|
||||
{{tag>"Linux système"}}
|
||||
{{ :dummy.png?75x75|Nom de la section}}
|
||||
|
||||
''bash_logout'' est un fichier de script exécuté automatiquement par le //shell// **Bash** lorsqu'un utilisateur se déconnecte de son compte. Il est généralement utilisé pour nettoyer les variables d'environnement, les [[informatique:linux:commandes:alias|alias]] et les chemins d'accès, ainsi que pour effectuer d'autres tâches de nettoyage ou d'entretien avant la déconnexion. Il est généralement stocké dans le répertoire personnel de l'utilisateur, comme ''~/.bash_logout''.
|
||||
|
||||
Il peut être utilisé pour effectuer des tâches administratives telles que la suppression des fichiers temporaires ou pour afficher un message de bienvenue ou de déconnexion, ou pour effectuer des tâches plus importantes comme supprimer les fichiers temporaires, fermer les applications en cours d'exécution, etc. Il est important de noter que le fichier ''.bash_logout'' n'est pas créé par défaut et doit être créé manuellement si l'on souhaite utiliser cette fonctionnalité.
|
||||
|
||||
Voici quelques exemples de tâches administratives qui peuvent être effectuées dans un fichier ''.bash_logout'' :
|
||||
|
||||
# Suppression des fichiers temporaires :
|
||||
rm -rf ~/.cache/
|
||||
|
||||
# Affichage d'un message de bienvenue ou de déconnexion :
|
||||
echo "Au revoir, à bientôt !"
|
||||
|
||||
# Fermeture d'applications en cours d'exécution :
|
||||
killall -u $USER
|
||||
|
||||
# Suppression des fichiers temporaires :
|
||||
find ~/.local/share/Trash/files/ -mindepth 1 -delete
|
||||
|
||||
# Nettoyage de l'historique des commandes :
|
||||
history -c
|
||||
|
||||
# Purger les paquets inutilisés :
|
||||
sudo apt-get autoremove
|
||||
|
||||
Il est important de noter que ces exemples sont donnés à titre indicatif et que vous devriez vous assurer de comprendre ce qu'ils font avant de les utiliser dans votre propre fichier ''.bash_logout'' pour éviter tout dommage potentiel à votre système. **Je ne conseille de mettre aucun de ces scripts en production.** Il est également conseillé de faire une sauvegarde de vos fichiers importants avant de supprimer ou de nettoyer des fichiers ou dossiers.
|
||||
|
||||
Voir également [[.:bash-profile]]
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
====== .bash_profile ======
|
||||
{{tag>"Linux systeme"}}
|
||||
{{ :dummy.png?75x75|.bash_profile contient les commandes exécutées lorsque l'utilisateur se connecte à son compte. Il est généralement utilisé pour définir des variables d'environnement, des alias et des chemins d'accès.}}
|
||||
|
||||
===== Définition et exemples =====
|
||||
|
||||
|
||||
''~/.bash_profile'' est un fichier de configuration pour la //shell// ''Bash'', qui est utilisé sur les systèmes d'exploitation Linux. Il est situé dans le répertoire personnel de l'utilisateur et est exécuté lorsque l'utilisateur se connecte au système. Il peut être utilisé pour définir des variables d'environnement, des [[informatique:linux:commandes:alias|alias]] de commande, des fonctions personnalisées, et d'autres paramètres de configuration pour la session de l'utilisateur.
|
||||
|
||||
**Équivalents** : [[.:profile]], [[.:bashrc]], [[.:bash_login]]
|
||||
|
||||
**Ne pas confondre avec** : [[..:etc-profile]], [[..:etc-bashrc]]
|
||||
|
||||
{{:informatique:linux:pasted:20220326-074256.png|exemple de contenu du fichier .bash_profile}}
|
||||
|
||||
À moins d'avoir la présence de l'indicateur **—noprofile**, un **shell de connexion** Bash lira et exécutera les commandes trouvées dans certains **fichiers d'initialisation**.
|
||||
|
||||
Il est important de noter que certains système d'exploitation utilisent ''.bashrc'' pour les fichiers d'initialisation du //shell// d'utilisateur, il est donc important de vérifier quel fichier utilise votre système d'exploitation.
|
||||
|
||||
Quelques exemples d'utilisation :
|
||||
|
||||
* [[informatique:linux:system:variables#path|Modifier le PATH]]
|
||||
|
||||
* [[journal_geek:2023:20230113-afficher-le-nombre-de-mise-a-jour-avec-dnf-a-l-ouverture-de-session|Afficher le nombre de mise à jour en attente avec DNF]]
|
||||
|
||||
|
||||
* [[journal_geek:2023:20230113-afficher-le-nombre-de-mise-a-jour-avec-yum-a-l-ouverture-de-session|Afficher le nombre de mise à jour en attente avec YMU]]
|
||||
|
||||
===== Ordre d’exécution des fichiers d'initialisation =====
|
||||
|
||||
Sous Unix-like, comme Linux et macOS, l'ordre d'exécution des fichiers d'initialisation pour la shell //Bash// est généralement le suivant:
|
||||
|
||||
1. ''/etc/profile'' : Ce fichier contient des paramètres de configuration généraux pour tous les utilisateurs du système.
|
||||
|
||||
2. (''/etc/bashrc'') : contient les commandes et les paramètres de configuration qui doivent être exécutés pour tous les utilisateurs du système.
|
||||
|
||||
3. (''/etc/profile.d/*.sh'') : contient des fichiers shell (.sh) qui sont exécutés au démarrage de la session pour tous les utilisateurs du système.
|
||||
|
||||
4. ''~/.bash_profile'', ''~/.bash_login'', ou ''~/.profile'': Ces fichiers contiennent des paramètres de configuration spécifiques à l'utilisateur et sont exécutés dans cet ordre. Le premier fichier qui existe dans ce groupe sera utilisé.
|
||||
|
||||
5. (''~/.bashrc'') : Ce fichier contient des paramètres de configuration pour chaque session de l'utilisateur.
|
||||
|
||||
Le fichier ''/etc/profile'' va normalement se sourcer dans ''/etc/bashrc'', en lisant et en exécutant les commandes qui s'y trouvent, puis recherche dans ''/etc/profile.d'' tous les fichiers avec une extension ''.sh'' à lire et à exécuter. De plus, le fichier ''~/.bash_profile'' se sourcera normalement dans le fichier ''~/.bashrc''. ''/etc/bashrc'' et ''~/.bashrc'' ont tous deux des vérifications pour éviter le double sourçage.
|
||||
|
||||
|
||||
===== Ordre d’exécution des fichiers en sortie de shell =====
|
||||
|
||||
Lorsque l'utilisateur **quitte le shell de connexion**, ou si le script appelle la sortie intégrée dans le cas d'un shell de connexion non interactif, **Bash** lit et exécute les commandes trouvées dans ''~/.bash_logout'' suivi de ''/etc/bash_logout'' s'il existe.
|
||||
|
||||
1. ''~/.bash_logout''
|
||||
|
||||
2. ''/etc/bash_logout''
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
====== .config ======
|
||||
|
||||
|
||||
{{page>..:..:..:dossiers-remarquables:gnome:}}
|
||||
@@ -0,0 +1,11 @@
|
||||
====== /home ======
|
||||
{{tag>"Linux système"}}
|
||||
{{ :dummy.png?75x75|}}
|
||||
|
||||
Ce répertoire contient les répertoires personnels pour chaque utilisateur du système.
|
||||
|
||||
Chaque utilisateur a son propre répertoire sous ''/home'', nommé avec son nom d'utilisateur, ex: ''/home/john''. Ces répertoires contiennent généralement les fichiers personnels de l'utilisateur, tels que les documents, les images, les vidéos, les musiques, les fichiers de configuration, les scripts, etc. Il peut également contenir des sous-répertoires tels que ''Documents'', ''Téléchargements'', ''Bureau'', etc.
|
||||
|
||||
Il est important de noter que l'architecture et les répertoires de chaque distribution Linux peut varier selon les paramétrages de l'administrateur système.
|
||||
|
||||
<nspages . -h1 -simpleList -hideNoSubns -subns -nbCol=1 -textNS=" " -textPages=" " -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
@@ -0,0 +1,7 @@
|
||||
====== .kde ======
|
||||
{{tag>"Linux système"}}
|
||||
{{ :dummy.png?75x75|}}
|
||||
|
||||
Le dossier ''~/.kde'' est un répertoire qui contient des fichiers de configuration pour l'environnement de bureau KDE (K Desktop Environment) sous Linux. Il est généralement situé dans le répertoire personnel de l'utilisateur et contient des paramètres tels que la **disposition des fenêtres**, les **paramètres de thèmes**, les **raccourcis clavier**, les **paramètres de l'écran d'accueil**, les **paramètres de lanceur d'application**, et d'autres paramètres de configuration pour l'environnement de bureau KDE. Il peut également contenir des sous-répertoires pour des applications spécifiques, comme Konsole ou KMail, qui contiennent des paramètres de configuration pour ces applications.
|
||||
|
||||
À noter que cela dépend des paramétrages de l'administrateur système de chaque distribution.
|
||||
@@ -0,0 +1,19 @@
|
||||
====== .local ======
|
||||
{{tag>"Linux systeme"}}
|
||||
{{ :dummy.png?75x75|}}
|
||||
|
||||
Le dossier ''~/.local'' est un répertoire qui est généralement utilisé pour stocker les **fichiers de configuration** et les **données utilisateur** spécifiques à l'utilisateur pour les applications qui suivent les spécifications de la **FreeDesktop.org**. Il est généralement situé dans le répertoire personnel de l'utilisateur et contient des sous-répertoires tels que:
|
||||
|
||||
* ~/.local/bin : contient des **scripts et des binaires utilisateur** spécifiques
|
||||
|
||||
* ~/.local/share : contient des **données utilisateur pour les applications** telles que les thèmes, les polices, les modèles, etc.
|
||||
|
||||
* ~/.local/lib : contient des **bibliothèques et des modules pour les applications**
|
||||
|
||||
* ~/.local/etc : contient des **fichiers de configuration pour les applications**
|
||||
|
||||
Ce répertoire est créé automatiquement lorsque l'utilisateur installe une application qui suit les spécifications de la **FreeDesktop.org**. Il permet de séparer les données utilisateur des données système pour une meilleure sécurité et une gestion plus facile des données utilisateur.
|
||||
|
||||
À noter que cela dépend des paramétrages de l'administrateur système de chaque distribution.
|
||||
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
====== .profile ======
|
||||
{{tag>"Linux systeme"}}
|
||||
{{ :dummy.png?75x75|.bash_profile contient les commandes exécutées lorsque l'utilisateur se connecte à son compte. Il est généralement utilisé pour définir des variables d'environnement, des alias et des chemins d'accès.}}
|
||||
|
||||
===== Définition et exemples =====
|
||||
|
||||
|
||||
''~/.profile'' est un fichier de configuration pour la //shell// ''Bash'', qui est utilisé sur les systèmes d'exploitation Linux. Il est situé dans le répertoire personnel de l'utilisateur et est exécuté lorsque l'utilisateur se connecte au système. Il peut être utilisé pour définir des **variables d'environnement**, des [[informatique:linux:commandes:alias|alias]] de commande, des **fonctions personnalisées**, et d'autres **paramètres de configuration** pour la session de l'utilisateur.
|
||||
|
||||
Voir l'article sur [[.:bash-profile]] pour plus d'explication et d'exemples.
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
====== /home/ ======
|
||||
|
||||
[[.:]]
|
||||
|
||||
<nspages . -h1 -simpleList -hideNoSubns -subns -nbCol=1 -textNS=" " -textPages=" " -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
|
||||
--
|
||||
|
||||
retour à [[..:]]
|
||||
|
||||
{{page>:sidebar}}
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
====== .var ======
|
||||
{{tag>"Liunx système"}}
|
||||
{{ :dummy.png?75x75|}}
|
||||
|
||||
Le dossier ''~/.var'' est un répertoire qui est généralement utilisé pour stocker les données utilisateur qui peuvent changer fréquemment ou être générées par les applications, telles que **les journaux**, les **fichiers temporaires**, les **fichiers de cache**, etc. Il est généralement situé dans le répertoire personnel de l'utilisateur et contient des sous-répertoires tels que :
|
||||
|
||||
* ~/.var/log : contient les **journaux des applications**.
|
||||
|
||||
* ~/.var/cache : contient les fichiers de **cache des applications**.
|
||||
|
||||
* ~/.var/tmp : contient les **fichiers temporaires** générés par les applications.
|
||||
|
||||
Ce répertoire est généralement créé automatiquement pour stocker les données utilisateur qui peuvent changer fréquemment ou être générées par les applications. Il permet de séparer les données utilisateur des données système pour une meilleure sécurité et une gestion plus facile des données utilisateur.
|
||||
|
||||
À noter qu'il n'est pas systématique de trouver ce genre de répertoire sur toutes les distributions Linux, en fait cela dépend des paramètres de l'administrateur système et des choix de l'équipe de développement de chaque distribution. Il est donc possible que le répertoire ''~/.var'' ne soit pas présent sur certaines distributions Linux. C'est un des raison pour lesquelles il est important de vérifier les spécifications et les paramètres de chaque distribution pour comprendre l'architecture de fichier utilisée.
|
||||
@@ -0,0 +1,73 @@
|
||||
====== 200 · Répertoires et fichiers remarquables sous Linux ======
|
||||
{{ :informatique:linux:pasted:20211107-095450.png?400}}
|
||||
|
||||
|
||||
La structure de répertoires pour les systèmes d'exploitation Linux et Unix est définit par le standard FHS (Filesystem Hierarchy Standard). Il a pour but de fournir une structure de répertoires pour les différents types de fichiers commune pour toutes les distributions Linux et Unix, afin de rendre les systèmes d'exploitation plus portables et plus faciles à utiliser. Il décrit également les règles de nommage des fichiers et des répertoires, ainsi que les conventions pour les fichiers de configuration et les fichiers de données.
|
||||
|
||||
La structure de répertoire décrite par le **FHS** est divisée en plusieurs sections principales :
|
||||
|
||||
* / : la racine de tous les répertoires
|
||||
|
||||
Depuis le répertoire racine, vous trouverez les répertoires suivants :
|
||||
|
||||
|
||||
* /[[.:home:|home]] : contient les répertoires des utilisateurs,
|
||||
|
||||
* /bin : contient les commandes couramment utilisées,
|
||||
|
||||
* /[[.boot:index|boot]] : contient les fichiers nécessaires pour démarrer le système d'exploitation,
|
||||
|
||||
* /[[.:dev|dev]] : contient des fichiers de périphériques,
|
||||
|
||||
* /[[.:etc|etc]] : contient les fichiers de configuration,
|
||||
|
||||
* /lib : contient les bibliothèques de système et bibliothèques partagées,
|
||||
|
||||
* /[[.:media|media]] : contient des sous-dossiers pour les périphériques de stockage amovibles,
|
||||
|
||||
* /[[.:mnt|mnt]] : contient des sous-dossiers pour monter des systèmes de fichiers externes,
|
||||
|
||||
* /[[.opt:index|opt]] : contient des logiciels tiers ou des applications qui ne font pas partie des paquets de distribution standard,
|
||||
|
||||
* /[[.:run|run]] : contient des informations sur les processus en cours d'exécution et les périphériques connectés,
|
||||
|
||||
* /[[.:sbin|sbin]] : contient les commandes pour les administrateurs système. Peut-être remplacé par ''/usr/sbin''.
|
||||
|
||||
* /[[.:srv|srv]] : contient les données de service spécifiques,
|
||||
|
||||
* /[[.:tmp|tmp]] : contient des fichiers temporaires qui sont utilisés par les programmes en cours d'exécution. Peut être remplacer par ''/var/tmp'' ou ''/run/tmp''.
|
||||
|
||||
* /[[.:usr|usr]] : contient les programmes, les documents et les données utilisateur qui sont utilisés par tous les utilisateurs du système,
|
||||
|
||||
* /var : contient les fichiers qui peuvent changer pendant l'exécution du système.
|
||||
|
||||
Le respect de cette structure de répertoires est important car cela permet d'éviter les conflits de nom, de faciliter la maintenance des systèmes, et de rendre les systèmes d'exploitation plus portables entre les différentes distributions.
|
||||
|
||||
===== Répertoires et fichiers remarquables =====
|
||||
|
||||
Il existe de nombreux répertoires remarquables dans une installation de Linux Fedora, voici quelques exemples.
|
||||
|
||||
<nspages . -h1 -simpleList -hideNoSubns -subns -nbCol=1 -textNS=" " -textPages=" " -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
|
||||
===== Dans le dossier personnel =====
|
||||
|
||||
Le dossier personnel (ou répertoire de l'utilisateur) est généralement situé dans le répertoire ''/home/'' sur un système Linux. Le nom du répertoire de l'utilisateur est généralement le même que le nom d'utilisateur, par exemple : ''/home/john'' pour un utilisateur nommé "john". Le répertoire de l'utilisateur en cours est représenté par le symbole ''~ ''.
|
||||
|
||||
Ce répertoire contient généralement des sous-répertoires pour les documents, les images, les musiques, les vidéos et les téléchargements, ainsi que des fichiers de configuration pour les différents programmes utilisés par l'utilisateur. Il est également utilisé comme un espace de travail pour les fichiers et les projets de l'utilisateur.
|
||||
|
||||
Les utilisateurs ont généralement des autorisations en écriture sur ce répertoire, ce qui leur permet de créer, de supprimer et de modifier les fichiers et dossiers qu'il contient. Cependant, les autres utilisateurs ou les utilisateurs qui se connectent en tant qu'invité n'ont généralement pas accès à ce répertoire.
|
||||
|
||||
Il existe plusieurs fichiers et répertoires remarquables dans le répertoire personnel d'un utilisateur sur un système Linux, voici quelques exemples :
|
||||
|
||||
<nspages .:home -h1 -simpleList -hideNoSubns -subns -nbCol=1 -textNS=" " -textPages=" " -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
|
||||
|
||||
|
||||
--- //[[user:cedricabonnel]] et [[user:CPT]] //
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
====== /media ======
|
||||
{{tag>"linux systeme"}}
|
||||
{{ :dummy.png?75x75|Système Linux}}
|
||||
|
||||
Le dossier ''/media'' sur un système Linux contient généralement des sous-dossiers pour les périphériques de stockage amovibles tels que les clés USB, les disques durs externes, les lecteurs de mémoire flash, les CD et les DVD qui ont été montés sur le système. Chacun de ces sous-dossiers contient les fichiers et dossiers qui se trouvent sur le périphérique de stockage amovible. C'est là où vous pouvez accéder aux fichiers sur ces périphériques.
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
====== /mnt ======
|
||||
{{tag>"linux système"}}
|
||||
{{ :dummy.png?75x75|Linux système}}
|
||||
|
||||
Le dossier ''/mnt'' sur un système Linux est généralement utilisé pour monter des systèmes de fichiers externes de manière temporaire. Il peut contenir des sous-dossiers pour les périphériques de stockage externes tels que les disques durs externes, les lecteurs de CD/DVD, les clés USB, les systèmes de fichiers réseau (NFS, SMB, etc) ou les partitions de disques durs internes qui ont été montés à des fins de sauvegarde ou de partage de données. Chacun de ces sous-dossiers contient les fichiers et dossiers qui se trouvent sur le système de fichier externe qui a été monté.
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
====== /opt ======
|
||||
{{tag>"linux system"}}
|
||||
{{ :dummy.png?75x75|linux systeme}}
|
||||
|
||||
===== Définition du répertoire /opt =====
|
||||
|
||||
Le dossier ''/opt'' sur un système Linux est généralement utilisé pour stocker des logiciels tiers ou des applications qui ne font pas partie des paquets de distribution standard. Il peut contenir des sous-dossiers pour chaque logiciel ou application installée, chacun contenant les fichiers nécessaires pour l'exécution de ce logiciel ou application. Dans la plupart des cas, de tels packages suivent une structure de sous-répertoires prévisible ; la plupart stockent leurs binaires dans ''/opt/nomdupackage/bin/'' et leurs pages de manuel dans ''/opt/nomdupackage/man/''.
|
||||
|
||||
Les paquets installés dans ''/opt'' sont généralement installés par l'utilisateur ou par un administrateur, et non pas par le système de gestion de paquet (comme **apt**, **yum**, **dnf**, etc) qui est utilisé pour installer les paquets de la distribution standard. Certains logiciels peuvent également placer des liens vers leurs exécutables dans ''/usr/local/bin'' pour faciliter l'accès.
|
||||
|
||||
Il est courant de voir des sous-répertoires créés dans ''/opt'' pour organiser les différents programmes et applications installés. Par exemple, un développeur pourrait installer un jeu dans ''/opt/games/mygame'', ou un utilisateur pourrait installer un logiciel de traitement de texte dans ''/opt/office/wordprocessor''. Il est également courant de voir des sous-répertoires pour les différentes versions d'une application, comme ''/opt/myapp/1.0'' et ''/opt/myapp/2.0''.
|
||||
|
||||
--
|
||||
|
||||
Il est possible de créer un lien symbolique (également appelé raccourci ou alias) vers un script qui se trouve dans ''/usr/local/bin'' depuis un emplacement comme ''/opt''. Cela permet à l'utilisateur d'accéder facilement au script depuis un autre emplacement, sans avoir à se rappeler ou saisir l'emplacement complet du script. Pour créer un lien symbolique, vous pouvez utiliser la commande ''ln -s'' suivie de l'emplacement du script cible et de l'emplacement où vous souhaitez créer le lien. Par exemple:
|
||||
|
||||
ln -s /usr/local/bin/myscript /opt/myapp/myscript
|
||||
|
||||
Cela crée un lien symbolique nommé ''myscript'' dans le répertoire ''/opt/myapp'' qui pointe vers le script ''myscript'' dans le répertoire ''/usr/local/bin''.
|
||||
|
||||
--
|
||||
|
||||
Il est également possible de créer un script dans ''/usr/local/bin'' qui exécute un programme qui se trouve dans ''/opt''. Cela permet à l'utilisateur d'accéder au programme en utilisant un nom de commande simple, plutôt que de devoir saisir l'emplacement complet du programme dans ''/opt''.
|
||||
|
||||
Pour ce faire, vous pouvez créer un script shell dans ''/usr/local/bin'' qui contient les commandes pour exécuter le programme dans ''/opt''. Par exemple :
|
||||
|
||||
<code>
|
||||
#!/bin/bash
|
||||
/opt/myapp/myprogram
|
||||
</code>
|
||||
|
||||
Le script doit avoir les autorisations d'exécution.
|
||||
|
||||
Enfin, les programmes dans ''/opt'' peuvent nécessiter des librairies ou des exécutables pour fonctionner, il est donc important de s'assurer que ces dépendances soient présentes et accessibles.
|
||||
|
||||
|
||||
~~NOCACHE~~
|
||||
|
||||
|
||||
--- //[[user:cedricabonnel]] et [[user:CPT]] //
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
====== /run ======
|
||||
{{tag>"Lorem"}}
|
||||
{{ :dummy.png?75x75|Nom de la section}}
|
||||
|
||||
Le dossier ''/run'' sur un système Linux est un système de fichiers en mémoire qui contient des informations sur les processus en cours d'exécution et les périphériques connectés. Il peut contenir des informations sur les sockets, les tuyaux, les informations de démarrage et les informations de configuration, les informations sur les processus en cours d'exécution et les informations sur les périphériques connectés. Il remplace généralement les anciens répertoires ''/var/run'' et ''/var/lock'', qui ont été utilisés pour stocker des informations similaires, mais qui ont été stockées sur le disque dur plutôt que dans la mémoire. Il est utilisé pour stocker des informations qui doivent être disponibles immédiatement après le démarrage du système, mais qui ne doivent pas être conservées après un redémarrage.
|
||||
|
||||
--- //[[user:cedricabonnel]] et [[user:cpt|CPT]] //
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
====== sbin ======
|
||||
{{tag>"script linux"}}
|
||||
{{ :dummy.png?75x75|Nom de la section}}
|
||||
|
||||
Les utilitaires utilisés pour l'administration système (ainsi que d'autres commandes réservées à l'administrateur) sont stockés dans ''/sbin'', ''/usr/sbin'' et ''/usr/local/sbin''. **/sbin** contient des exécutables essentiels au démarrage, à la restauration, à la récupération et/ou à la réparation du système, en plus des exécutables dans ''/bin''. Les programmes exécutés une fois que ''/usr'' est monté (lorsqu'il n'y a pas de problèmes) sont généralement placés dans ''/usr/sbin''. Les programmes d'administration système installés localement doivent être placés dans ''/usr/local/sbin''.
|
||||
@@ -0,0 +1,10 @@
|
||||
====== Répertoires et fichiers ======
|
||||
|
||||
<nspages . -h1 -simpleList -hideNoSubns -nbCol=1 -textNS=" " -textPages=" " -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404 ]>
|
||||
|
||||
--
|
||||
|
||||
retour à [[..:..:]]
|
||||
|
||||
{{page>:sidebar}}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
====== /srv ======
|
||||
{{tag>"Liunx système"}}
|
||||
{{ :dummy.png?75x75|}}
|
||||
|
||||
Le répertoire **/srv** est défini dans le FHS (Filesystem Hierarchy Standard) pour stocker les **données de service** spécifiques à un système.
|
||||
|
||||
Le but principal de spécifier ceci est que les utilisateurs puissent trouver l'emplacement des fichiers de données pour un service particulier, et que les services qui nécessitent un seul arbre pour les données en lecture seule, les données en écriture et les scripts (comme les scripts **CGI**) puissent être raisonnablement placés. Les données qui n'intéressent qu'un utilisateur spécifique doivent être placées dans le répertoire personnel de cet utilisateur. Si la structure de répertoire et de fichier des données n'est pas exposée aux consommateurs, elle doit être placée dans ''/var/lib''.
|
||||
|
||||
La méthodologie utilisée pour nommer les sous-répertoires de ''/srv'' n'est pas spécifiée, car il n'existe actuellement aucun consensus sur la manière de le faire. Une méthode pour structurer les données sous ''/srv'' est par protocole, par exemple **ftp**, **rsync**, **www** et **cvs**. Sur de grands systèmes, il peut être utile de structurer ''/srv'' en fonction du contexte administratif, comme ''/srv/physics/www'', ''/srv/compsci/cvs'', etc. Cette configuration variera d'un hôte à l'autre. Par conséquent, aucun programme ne doit compter sur une structure spécifique de sous-répertoire de ''/srv'' existant ou sur le fait que les données sont nécessairement stockées dans ''/srv''. Cependant, ''/srv'' devrait toujours exister sur les systèmes conformes à la norme FHS et devrait être utilisé comme emplacement par défaut pour de telles données.
|
||||
|
||||
Les distributions doivent veiller à ne pas supprimer les fichiers placés localement dans ces répertoires sans l'autorisation de l'administrateur.
|
||||
@@ -0,0 +1,54 @@
|
||||
====== /tmp ======
|
||||
{{tag>"Système Liunx"}}
|
||||
{{ :dummy.png?75x75|Système Linux}}
|
||||
|
||||
Le dossier ''/tmp'' sur un système Linux contient des fichiers temporaires qui sont utilisés par les programmes en cours d'exécution. Ces fichiers sont créés pour stocker des données temporaires, comme les fichiers de traitement intermédiaires, les fichiers de journalisation, les fichiers de cache, etc.
|
||||
|
||||
Il est recommandé de supprimer les fichiers et répertoires situés dans ''/tmp'' chaque fois que le système est démarré, pour éviter l'encombrement inutile. FHS a ajouté cette recommandation sur la base de précédents historiques et de pratiques courantes, mais n'a pas fait une exigence car l'administration système n'est pas dans le cadre de cette norme.
|
||||
|
||||
===== Nettoyage de /tmp au démarrage =====
|
||||
|
||||
Vous pouvez utiliser un script Bash pour supprimer tous les fichiers et répertoires dans ''/tmp'' au démarrage grâce à **systemd**.
|
||||
|
||||
* Placer le script ''cleartmp.sh'' dans le dossier ''/usr/local/bin'' :
|
||||
|
||||
<code BASH cleartmp.sh>
|
||||
#!/bin/bash
|
||||
|
||||
# script to clear /tmp directory on system startup
|
||||
|
||||
echo "Cleaning /tmp directory..."
|
||||
|
||||
# remove all files and directories in /tmp
|
||||
rm -rf /tmp/*
|
||||
|
||||
echo "Cleaning done."
|
||||
</code>
|
||||
|
||||
* Créez un fichier de service **systemd** pour exécuter votre script. Par exemple, dans ''/etc/systemd/system/cleartmp.service'' :
|
||||
|
||||
<code>
|
||||
[Unit]
|
||||
Description=Clear /tmp directory on startup
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/local/bin/cleartmp.sh
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
</code>
|
||||
|
||||
* Rechargez **systemd** pour prendre en compte le nouveau fichier de service :
|
||||
|
||||
sudo systemctl daemon-reload
|
||||
|
||||
* Activez le service pour qu'il démarre au démarrage :
|
||||
|
||||
sudo systemctl enable cleartmp.service
|
||||
|
||||
* Vérifiez que le service est bien configuré et actif :
|
||||
|
||||
sudo systemctl status cleartmp.service
|
||||
|
||||
Avec cette configuration, votre script sera exécuté automatiquement au démarrage du système, et vous pourrez suivre son état et les journaux d'erreur avec les commandes de **systemd**.
|
||||
@@ -0,0 +1,32 @@
|
||||
====== /usr ======
|
||||
{{tag>"Linux système"}}
|
||||
{{ :dummy.png?75x75|Description du répertoire usr}}
|
||||
|
||||
Le répertoire ''/usr'' contient les programmes, les documents et les données utilisateur qui sont utilisés par tous les utilisateurs du système. Le répertoire ''/usr/'' est destiné aux fichiers qui peuvent être partagés entre plusieurs machines. Le répertoire ''/usr/'' est souvent sur sa propre partition et est monté en lecture seule.
|
||||
|
||||
* ''/usr/bin'' : Ce répertoire est généralement utilisé pour stocker **les commandes système**. Il est également accessible pour tous les utilisateurs, mais nécessite des privilèges d'administrateur pour y installer des scripts.
|
||||
|
||||
* ''/usr/etc'' : Ce répertoire est utilisé pour les fichiers de configuration à l'échelle du système.
|
||||
|
||||
* ''/usr/games''
|
||||
|
||||
* ''/usr/include'' : Ce répertoire est utilisé pour les fichiers d'en-tête C.
|
||||
|
||||
* ''/usr/kerberos'' : Ce répertoire est utilisé pour les binaires et les fichiers liés à Kerberos.
|
||||
|
||||
* ''/usr/lib'' : Ce répertoire est utilisé pour les fichiers objets et les bibliothèques qui ne sont pas destinés à être directement utilisés par des scripts shell ou des utilisateurs.
|
||||
Il contient également les bibliothèques nécessaires à l'exécution des binaires dans ''/usr/bin/'' et ''/usr/sbin/''. Ces images de bibliothèque partagées sont utilisées pour démarrer le système ou exécuter des commandes dans le système de fichiers racine.
|
||||
|
||||
* ''/usr/libexec'' : Ce répertoire contient de petits programmes d'assistance appelés par d'autres programmes.
|
||||
|
||||
* ''/usr/local/'' : Conformément à la FHS (Filesystem Hierarchy Standard), ce sous-répertoire est utilisé par l'administrateur système lors de l'installation de logiciels localement et devrait être préservé des écrasements lors des mises à jour système. Le répertoire ''/usr/local'' a une structure similaire à celle de ''/usr/''.
|
||||
|
||||
* ''/usr/sbin'' : Ce répertoire est généralement utilisé pour stocker **les commandes système qui nécessitent des privilèges d'administrateur** pour être exécutées. Cela signifie qu'il contient toutes les binaires d'administration système, y compris celles essentielles au démarrage, à la restauration, à la récupération ou à la réparation du système. Les binaires dans ''/usr/sbin/'' nécessitent des privilèges root pour être utilisés. À partir de Red Hat Enterprise Linux 7.0, ''/sbin'' a été déplacé vers ''/usr/sbin''.
|
||||
|
||||
* ''/usr/share'' : Fichiers indépendants de la plateforme (non binaires)
|
||||
|
||||
* ''/usr/src'' : Optionnel. Code source divers, généralement limité au noyau et aux bibliothèques système. FHS 2.2 demandait que toutes les sources soient dans ce répertoire, ce que certains Unix continuent de faire bien que ce ne soit plus recommandé.
|
||||
|
||||
* ''/usr/tmp''
|
||||
|
||||
|
||||
Reference in New Issue
Block a user