Manipuler des fichiers sous Linux Flashcards

1
Q

Comprendre l’arborescence Linux

A

1.La fondation Linux est l’organisme responsable du maintien de la
norme définissant l’arborescence des systèmes Unix/Linux.
1.1. Cette norme est appelée FHS pour Filesystem
Hierarchy Standard et est disponible sous plusieurs
formats

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Prenons quelques exemples pour illustrer
cette notion :

A

Les répertoires contenant des informations stockées sur un équipement mais
utilisées par d’autres équipements seront identifiés par le mot-clé “shareable”
Les répertoires contenant des fichiers qui ne peuvent pas ou ne doivent pas être
partagés entre plusieurs équipements seront marqués “unshareable” (non
partageables en français).
Les répertoires contenant des données qui ne peuvent pas changer d’elles-
mêmes, ou sans l’intervention de l’administrateur, avec nécessité d’une
élévation de privilèges sont marqués “static”.
Les répertoires qui ne sont pas marqués statiques sont marqués “variable”
(variables)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Répertoires adressés de manière absolue
ou relative:

A

Tous les exemples de répertoires cités ici sont adressés de manière
absolue, c’est-à-dire à partir de la racine du système /
La norme FHS adresse ces recommandations à partir d’un système monté
sur la racine /. L’administrateur peut quant à lui adresser les répertoires et
les fichiers de manière relative à un emplacement courant. Pour cela,
chaque répertoire sous la racine / possède deux fichiers spéciaux nommés
. pour se désigner soi-même, et .. pour désigner son parent dans
l’arborescence

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Répertoires adressés de manière relative:

A

Ainsi, la commande suivante permet de vous déplacer :
dans /home
puis dans ..(donc retour à /)
puis à nouveau dans /home
puis dans . (c’est-à-dire /home à ce moment-là) ;
puis dans .. (donc retour à /)
et finalement dans /home.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Découvrir les principaux répertoires de
l’arborescence

A
  • Le répertoire /root
  • Le répertoire /home
  • Le répertoire /usr
  • Le répertoire /var
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

/root

A
  • La norme ne stipule pas de répertoire /root. Or celui-ci est présent sur quasiment
    toutes les distributions Linux !
  • Le répertoire /root est créé pour stocker “les données personnelles de
    l’administrateur”, mais il n’est pas indispensable pour faire démarrer le système et
    l’exploiter. Et stocker dans ce répertoire des données critiques pour le système est
    effectivement une erreur.
  • Le compte root est le compte privilégié de Linux, il doit être réservé exclusivement
    aux tâches administratives sur le système.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

/home

A
  • En fait, il l’est, mais de manière facultative également.
  • Le répertoire /home est, par définition, très contextuel, ce qui le rend impossible à
    normaliser. Ainsi, sur tel serveur, vous n’aurez peut-être tout simplement pas de
    compte utilisateur… Du moins pas de compte nécessitant un répertoire personnel de
    stockage de données. Sur tel autre serveur à objectif de partage de fichier, au
    contraire, vous en aurez une multitude.
  • FHS précise néanmoins que les fichiers de configuration nécessaires aux utilisateurs
    qui souhaitent exploiter des applications et des programmes doivent être stockés
    dans un sous-répertoire de /home désigné par le login du compte utilisateur, préfixé
    d’un point
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

/usr

A
  • Ce répertoire est devenu avec le temps une arborescence majeure des distributions
    Linux. Il contient lui-même des répertoires bin et sbin dans lesquels se situent
    également des commandes !
  • /bin: ce sont les commandes critiques pour le bon fonctionnement du système, quel
    que soit son objectif. Elles sont lancées par le système et par l’administrateur
  • /sbin: ce sont les commandes uniquement à destination de l’administrateur pour la
    gestion du système.
  • /usr/bin: ce répertoire contient majoritairement les commandes à destination de
    tous les utilisateurs du système, privilégiés ou non.
  • /usr/sbin: ce sont des commandes à nouveau à destination unique de
    l’administrateur, mais non critiques pour le bon fonctionnement du système
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

/var

A
  • L’objectif de ce répertoire est simple : stocker toutes les informations utilisateurs,
    administrateurs et systèmes variables.
  • Normalement, avec une utilisation classique de /var, /usr devrait pouvoir être utilisé
    en lecture seule ! Ce qui est un gage de sécurité très important.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Sous répertoire important dans /var

A
  • /var/log: répertoire contenant l’arborescence de toutes les traces systèmes et
    applicatives. C’est dans ce répertoire qu’il est possible de consulter les traces des
    historiques de démarrage du système, de connexion des comptes utilisateurs,
    d’activité des services réseaux (SSH, HTTPD, SMTP, etc.) ainsi que les traces du noyau.
  • /var/run: répertoire contenant toutes les données relatives aux processus en cours
    d’exécution, les sémaphores, les données applicatives, les fichiers numéro de
    processus, etc.
  • /var/spool: répertoire contenant des données stockées de manière temporaire entre
    processus. Souvent, ce répertoire est utilisé pour stocker des données relatives à des
    actions ou tâches à effectuer dans un futur proche par les processus en cours
    d’exécution.
  • /var/mail: c’est le répertoire de stockage des messageries électroniques locales des
    comptes utilisateurs du système.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Le répertoire /proc

A
  • Cette arborescence contient toutes les informations concernant le processus ! Et il y
    en a beaucoup… Pour lister le contenu de cette arborescence, lancez la commande
    suivante : ls /proc
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Exemple /proc/1

A
  • Observons par exemple le contenu du répertoire /proc/1 qui est le premier
    processus du noyau :
  • Lance la commande initsplash qui lui va lancer à son tour le processus systemd
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Le répertoire /sys

A

Cette arborescence contient les informations sur les périphériques gérés par le noyau,
notamment :
* les périphériques de type bloc ou caractères dans les répertoires /sys/block ou
/sys/dev
* les drivers dans /sys/devices
* les différents systèmes de fichiers dans /sys/fs
* les modules du noyau dans /sys/module.
* Le répertoire /sys/kernel contient une arborescence de fichiers représentant des
variables du noyau accessibles en écriture et permettant de modifier le
comportement à chaud du système.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Visualiser des fichiers

A

Nous aborderons dans ce chapitre les commandes cat et le couple infernal more et
less.
Nous verrons également les trois canaux permettant de manipuler les flux de données,
mais aussi les commandes grep, sed et awk qui ajoutent des fonctionnalités de filtrage
et de transformation de ces flux.
Enfin nous terminerons par la fonctionnalité favorite de tout administrateur : la
possibilité de chaîner des commandes avec les pipes Linux !

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Afficher le contenu des fichiers

A

La commande cat est une commande externe
* Elle est très connue des administrateurs Linux et Unix. En effet c’est une commande
historique qui permet de prendre un ou plusieurs flux de données en paramètre
d’entrée, et de les afficher à l’écran sur le terminal.
* Le terme “cat” provient de l’abréviation de “catenate” en anglais, qui signifie
“concaténer” (autrement dit : “mettre bout à bout”)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly