Cours Linux les droits des fichiers, tutoriel & guide de travaux pratiques administration Linux en pdf.
Le noyau
● Ensemble logiciel assurant l’interface entre le matériel et les processus (systèmes ou utilisateurs)
● Chargé au démarrage du système, reste en mémoire
● Une fois initialisé, il détecte les périphériques et lance le premier processus (init)
● Il peut être monolithique ou à modules dynamiques
● Entièrement configurable par l’administrateur
● Abstraction du matériel
● Couche logique = API unifiée
● Pilotes pour la gestion des périphériques
● Gestion des processus
Naissance, suspension, suppression
● Gestion des communications interprocessus Signaux, tubes, …
● Partage du temps machine entre les processus
● Gestion de la mémoire
Réservation, libération, échange (swap)
Modules du noyau
● Module = extension du noyau à charger dynamiquement .o placé dans /lib/modules/version_de_noyau
● Pilotes matériels sont les modules les plus courants
● Commandes :
lsmod : liste les modules
insmod : charge un module
rmmod : retire un module
depmod : établit les dépendances inter-modules
modprobe : charge ou retire modules et dépendances
● Fichiers :
/etc/modules.conf : configuration de modprobe
/lib/modules/???/modules.dep : liste des dépendances
Notions sur Unix
● Noyau et modules ► Fichiers
● Disques et autres média
Unix et les fichiers
● Sous UNIX, tout est représenté par un fichier
données (bien sûr), mais aussi périphérique, mémoire…
● Différents types de « fichiers »
Les plus courants : normal (-), répertoire (d)
Mais aussi : lien symbolique (l), périphérique (c), etc.
● Commande pour voir le détail des fichiers : ls -l
-rw-r–r– 1 mquinson users 1055740 Jun 13 16:42 toto
Les droits des fichiers
Les droits d’accès aux fichiers sont limités
● On distingue trois classes d’utilisateurs par fichier : Propriétaire ; Membres de son groupe ; Autres
● Pour chaque classe, trois droits d’accès de base :
Lecture (r) ; Écriture (w) ; Exécution (x)
Question : que veut dire exécution d’un répertoire?
● Changer les droits (des fichiers dont on est propriétaire)
● chmod o+x toto (donne le droit x aux autres – other)
[ugo][+-][rwx]
● chmod 755 toto (fixe les droits à rwxr-xr-x) r = 4 ; w = 2 ; x = 1
Les droits particuliers des fichiers
● Sticky bit (t – 1000)
Reste en mémoire après exécution (chargement rapide)
(Seul le super-utilisateur peut donner ce droit)
● Droits d’endossement (s)
● setuid (user identity) : 4000
● setgid (group identity) : 2000
L’arborescence des fichiers
● Les fichiers sont rangés sous forme d’arbre
Racine unique → différence avec windows (a:, c:, d:)
● Le standard FHS précise la place des fichiers Filesystem Hierarchy Standard ; plus ou moins suivi
L’arborescence des fichiers
/etc : emplacement de la configuration
/home : fichiers des utilisateurs
/home/mquinson et /home/toto etc. /dev : fichiers spéciaux des périphériques
/proc (ou /sys) : fichiers spéciaux interface avec le noyau
/usr : programmes classiques
/usr/bin : les exécutables eux-mêmes
/usr/lib : bibliothèques
/usr/sbin : exécutables réservés au super-utilisateur
/usr/share/doc et /usr/share/man : documentation
/bin et /sbin : programmes nécessaires au démarrage
/tmp : fichiers temporaires (effaçables)
/var : ce qui change au cours du temps (comme DB)
Les fichiers de configuration (/etc)
● Configuration du système en général /etc/rc : scripts de démarrage
/etc/passwd : DB utilisateurs, mots de passe, etc.
/etc/fstab : configuration des montages disques
/etc/motd : mot du jour affiché au login
/etc/profile : configuration des shells
● Configuration de chacun des programmes
réglages pour tout le système (non modifiable par les utilisateurs)
Un fichier ou un répertoire par programme.
Les programmes (/usr et /)
/usr/bin : presque tous les programmes du système
/usr/sbin : les programmes réservés au super-utilisateur
/usr/share : ce qu’on peut partager entre architecture
/usr/share/doc : la documentation (format libre)
/usr/share/man : documentation au format man
/usr/lib : les bibliothèques et autre
(dépend de l’architecture sans être exécutable)
/usr/include : les entêtes (.h du langage C)
/usr/local : fourre tout pour les installations manuelles /usr/local/bin, /usr/local/lib etc.
/bin et /sbin : programmes nécessaires au démarrage
L’état du système (/var)
/var/log : journaux du système
/var/spool : mails en attente de distribution, etc.
/var/lock : verrous
/var/local : pour les programmes de /usr/local
/var/run : informations sur le système (jusqu’au reboot)
/var/run/utmp : informations sur les utilisateurs présents
/var/tmp : temporaires devant survivre aux reboots
● Introduction
● Présentation de Linux
● Démarrage de Linux
● Administration du système
………..