0% ont trouvé ce document utile (0 vote)
124 vues40 pages

Administration Unix

Ce document décrit les principales caractéristiques du système d'exploitation Unix, notamment sa structure, la gestion des utilisateurs, des processus et des fichiers.

Transféré par

Mohamed salah landolsi
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
124 vues40 pages

Administration Unix

Ce document décrit les principales caractéristiques du système d'exploitation Unix, notamment sa structure, la gestion des utilisateurs, des processus et des fichiers.

Transféré par

Mohamed salah landolsi
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

L'Institut Supérieur des

Technologies de l'Information
et des Communications(ISTIC)

Administration
Système Unix

Afef SLIMANI
Doctorante à l‘ENSI – Université de Manouba
afef5477@[Link]
1
Caractéristiques d’Unix
• Multi-utilisateurs : plusieurs utilisateurs peuvent se
connecter et travailler en même temps. Chaque
utilisateur a son environnement personnel.
• Mécanisme d’identification (user, group) et temps
partagé (multiprocesseur)
• Multi-tâches : un même utilisateur peut lancer
plusieurs travaux en même temps, simultanément.
Notion de processus
• Interactif : possibilité de « dialoguer » avec
l’ordinateur. Possibilité aussi de lancer des processus
(tâches) en arrière plan et en mode différé (batch).
2
Caractéristiques d’Unix
• Système hiérarchisé : organisation arborescente
• Protection : identification des utilisateurs par nom
et mot de passe, protection des fichiers (lecture,
écriture, exécution pour utilisateur, group ou tout
le monde), 1 super-utilisateur (root)
• Périphériques sont représentés par des noms de
fichiers et peuvent être utilisés comme des
fichiers ordinaires.
• Un grand nb de commandes possibles
3
Structure du système Unix (i)

Application

Noyau

Shell Matériel

Utilitaires

4
Structure (ii)
 Le noyau gère les tâches de base du système
 Initialisation du système
 Gestion des ressources
 Gestion des processus
 Gestion des fichiers
 Gestion des E/S
 L’utilisateur (les applications) communique avec le
noyau par l’intermédiaire d’un Shell.
 Les shells sont aussi des langages de commandes et de
programmation
 Shells les plus connus : BOURNE SHELL, C-SHELL, KORN-
SHELL, TC-SHELL
 Les utilitaires = outils d’interfaçage avec le système, de
programmation et de communication.
5
Session Unix (1)
 Unix est un système multi-utilisateur
 Il convient donc d’identifier chaque utilisateur
 Identification à l’ouverture de la session de
travail (login)
 Username
 Password (mot de passe sur 8 caractères)
 Conseil :
 Changer souvent de mot de passe

 Mélanger chiffres et caractères

6
Session Unix (2)
 Commence lorsqu’un utilisateur se connecte
 Se termine lorsque l’utilisateur connecté se déconnecte.
 Établir une connexion
 Saisie de l’identifiant (login), ex : dupont
 Saisie du mot de passe (password)
 Exécution du fichier d’initialisation (startup) .login
 /users/deustiosi/deustiosi2/dupont % : le prompt
(la connexion est effectuée, le système attend les
commandes)
Les différents prompts : % ou $, # pour l’administrateur

7
Les utilisateurs
 UID (User Identifier)
 Unique dans le système
 Identifie l’utilisateur
 Username
 Utilisé
au moment du login
 Donne un environnement particulier à un utilisateur
(UID)
 Root = le super utilisateur
 UID = 0, Username = root
 Administrateur du système
 Possède des droits particuliers pour administrer les
systèmes
8
L’identification au login
 Fichier /etc/passwd
 Visible de tous => mot de passe chiffré
 Chaque entrée est une ligne avec des champs séparés par des « : »
Username:mot_de_passe_chiffré:UID:nom_réel:répertoire_maison:shell

root:FQQ.Rqgmd2cn[Link]system PRIVILEGED account:/:/bin/csh


nobody:*Nologin:65534:65534:anonymous NFS user:/:
lp:TYg6u89k:8:12:Line Printer Subsystem:/users/lp:
dpaul:EZRy5Tu[Link]ominique PAUL:/users/dpaul:/bin/csh
dpaul2:i89hhezG:102:100:Dominique PAUL (Distant):/users/dpaul/courrier:/bin/mail
jmartin:P9khgr[Link]Jacques Martin:/users/martin:/bin/csh

 Vérification du mot de passe au login


 1. saisie du username dpaul
 2. saisie masquée du password toto
 3. chiffrage du mot de passe EZRy5Tu7
 4. comparaison avec le mot de passe chiffré de l’entrée username dans le
fichier /etc/passwd 9
Les groupes
 Chaque utilisateur appartient à un ou
plusieurs groupes d’utilisateurs

 Les groupes sont décrits dans le fichier


/etc/group
system:*:0:root,dpaul
lp:*:12:
prof:*:100:dpaul
etu:*:1000:etu:dpaul2,martin
nobody:*:65534:
10
Quelques commandes simples
 date : pour obtenir la date
 cal : pour obtenir le calendrier
 who : qui est connecté ?
 logname : qui suis-je ?
 pwd : où suis-je ?
 tty : nom du terminal
 passwd : Changer le mot de passe

11
Dialoguer avec un autre utilisateur
 Par le partage des fichiers
 Par messagerie : write, mail

 write nom_utilisateur
ceci est un essai

Ctrl D (termine le message)

 mail nom_utilisateur
subject :
Bonjour,
Ceci est un essai,
. (termine le message)

 Pour consulter sa boîte aux lettres : mail


12
Les commandes
 Des programmes standards du système
(également appelés Utilitaires)
 ls, ps, kill, find, rm, rmdir, mail, who, talk …
 sh, csh, ...

 Vos propres programmes


 monls, dir, [Link]
 mysh

 Les programmes des autres utilisateur


 lscommun

 La plupart des commandes proposent des options


13
Les Langages de Commande
(Shell)
 Lancement des travaux
 commandes, programmes utilisateurs, …
 3 modes de fonctionnement
 Interactif
 boucle interactive avec l’utilisateur (prompt $)
 Batch
 enchaînement de commandes
(structure de contrôle, variables, code de retour ...)
 En arrière plan ( & )
 plusieurs commandes en parallèle

 Ex: sh, csh, ksh, tcsh, bash …


14
Exemples…
 pwd
 /root/src/system/Shells

 ls -l
 total 12
-rwx------ 1 root root 60 Nov 18 2001 add*
-rwx------ 1 root root 122 Nov 18 2001 boucle*
-rwx------ 1 root root 91 Nov 18 2001 f*
-rw-r--r-- 1 root root 0 Nov 11 16:51 ls
-rwxr-xr-x 1 root root 300 Nov 18 2001 occ*
drwxr-xr-x 2 root root 1024 Nov 18 2001 old/
-rwx------ 1 root root 81 Nov 18 2001 rof*
-rwx------ 1 root root 293 Nov 18 2001 taille*
-rwx------ 1 root root 169 Nov 17 2001 taille1*
drwxr-xr-x 2 root root 1024 Nov 18 2001 test/
-rwx------ 1 root root 562 Nov 18 2001 tmax*
-rwx------ 1 root root 194 Nov 18 2001 tmax2*
-rw-r--r-- 1 root root 24 Oct 5 16:32 tmp
15
Les Processus
 Contexte d’exécution d’une tâche
 pas de partage des ressources avec les autres
processus à part sur les fichiers
 le code de la tâche est dans un fichier

 2 types de Processus
 Processus utilisateur
 tâche lancée par un utilisateur
 Processus Système
 tache lancée par root pour les besoins du système

 lpd : spool d ’impression,


 nfsd : partage de fichier,
 rlogind, telnetd : login distant, … 16
Propriétés des Processus
 Identifiant
 Identifiant PID (Process ID)
 Unique dans le système (du boot au shutdown)
 Identifiant du parent (PPID (Parent Process ID)

 Propriétaire
 UID de l ’utilisateur qui a lancé le processus
 changement : appel système
 seulement pour root

17
Création d’un processus (i)
 Depuis un processus parent
(mécanisme général)
 par clonage
 appel système fork()

 puis par mutation du code


 appel système execv()
 code du programme dans un fichier

 Une exception
processus 1 : le premier qui engendre tous les autres
 PID=1, PPID=1 18
Création d’un processus (ii)
 Depuis un processus shell
 en premier plan (foreground)
 le shell attend la terminaison du processus
> grep lecomte /etc/passwd > tmp
> more tmp
& lancement de processus en mode détaché
(ou arrière plan ou background)
 permettre à un utilisateur d ’avoir plusieurs taches actives
simultanément (multi-taches)
> emacs & ;
| pipelining de processus
> grep lecomte /etc/passwd | more
> find . -name "*.c" | grep src | wc -l
19
La terminaison d’un Processus
 La terminaison
 appel système exit()
 retourne le statut à l ’appelant qui est en attente
(wait())
 commande kill et appel système kill()
 la terminaison est le comportement par défaut

20
Les fichiers Unix
 Dans Unix :
 un fichier = une séquence d’octets
 Pas de structure spécifique des fichiers imposée par le noyau
 Rôles d’un fichier :
 Conserver l’information
 Traiter l’information
 Transmettre l’information
 Différents types de fichiers :
 Ordinaires (ascii ou binaires)
 Répertoires : contiennent des noms de fichiers et/ou de catalogues
 Spéciaux : ils sont associés aux périphériques
 Filtres
 Point de vue de l’utilisateur :
 Regroupement des fichiers : utilisation des répertoires
 Accès aux fichiers en prenant en compte la hiérarchie
 Protection des fichiers : droit d’accès 21
Organisation des fichiers
/ Racine

dev etc usr users bin unix

master lic

tnsi cci
Espace de
travail de CCI

/dev contient les fichiers associés aux périphériques :


Ex : lp (imprimante), ttyn (terminal n°n), hkn (disque dur n°n) …
/etc contient les fichiers d’administration
/bin contient les commandes unix
/usr contient les commandes et les bibliothèques supplémentaires
/users est le répertoire utilisateurs
/unix contient les fichiers systèmes
22
Remarque : Unix possède un seul système de fichiers
Le Système de Fichiers (i)
 Les « inodes »
 un inode = contenu d’un fichier ou d’un répertoire
 un lien = une entrée d’un répertoire désignant un fichier
 Répertoire
 ensemble de liens (= [nom, numéro d’un inode])
 ls -i . liste les inodes référencés depuis le répertoire.
 Table des inodes
 UID, droit, dates, …
 10 références disque vers les 10 premiers blocs
 3 références disque vers des blocs d’indirection
 jusqu’à 3 niveaux d’indirection

23
Le Systèmes de Fichiers (ii)
super-bloc
table des l’inode #0 contient le répertoire racine du FS
i-nodes 10 directs
1 simple indirection
inode #i Copyright Didier DONSEZ 1996 1 double indirection
1 triple indirection

Bloc
de
2048
octets

512 pts

Simple Double Triple

24
Le nommage des fichiers
 Organisation hiérarchique des noms de fichiers
 un répertoire contient des fichiers et des répertoires
 Chemin
identifie un fichier ou un répertoire
les noms sont séparés par des /
pour info : ce sont des \ sur MSDos et des : sur Mac

 Chemin absolu
 depuis la racine / du système
> /usr/bin/ls -l /users/paul/pub/[Link]
 Chemin relatif
 depuis le répertoire de travail (Working Dir.) du processus
> cd /usr/bin
> ./ls -l ../../users/paul/pub/[Link]
25
L’arborescence de fichiers
 Constat
 Plusieurs disques
 Chaque disque, plusieurs partitions
 Des partitions distantes (par le réseau)
 Une arborescence unique
 composée de plusieurs Systèmes de Fichiers
 utilitaires mount et umount
 tables /etc/fstab et /var/adm/mountdtab
/dev/rz2a / ufs rw 1 1
/dev/rz0g /usr ufs rw 1 2
/dev/rz2b swap1 ufs sw 0 2
/dev/rz0b swap2 ufs sw 0 2
/dev/rz2g /var ufs rw 1 2
/dev/rz3c /usr/users ufs rw 1 2
/usr/share/man@rabbit /usr/share/man nfs ro,bg 0 0
26
usr_dmn#user1 /usr/user1 advfs rw,userquota,groupquota 0 2
Déplacement dans le système de
fichiers
 A la connexion, l’utilisateur est positionner dans son répertoire de
connexion
 Ex : /users/deustiosi/deustiosi2/dupont
 Pour se déplacer dans la hiérarchie :
 cd <nom_répertoire>
 Le nom du répertoire peut être
 Absolu : tout le chemin est précisé
 Relatif : par rapport au répertoire courant
 Ex : cd /users/deustiosi/deustiosi2/dupont (chemin absolu, remarque : commence
toujours par « / » !!)
cd dupont (chemin relatif)
 Quelques commandes simples :
 pwd : affiche le répertoire courant
 cd : retour au répertoire de connexion
 cd .. : monter d’un niveau dans la hiérarchie
 cd ../.. : monter de 2 niveaux dans la hiérarchie
 Le caractère « . » désigne le répertoire courant
28
Principales commandes sur les
fichiers
 Opérations de base sur les fichiers
 Visualisation du contenu d’un fichier
 cat <nom_fichier>
 more <nom_fichier>
 Renommage et déplacement d’un fichier
 mv <source> <destination>
 mv essai.c tp1.c (renommage)
 mv tp TPSE (déplacement)
 mv tp TPSE/tp2 (déplacement et renommage)
 Copie d’un fichier
 cp <source> <destination>
 Création de liens sur un fichier
 ln <ancien> <nouveau>
 Suppression d’un fichier
 rm <nom_fichier>
Ex : rm *.o : supprime tous les fichiers d’extension « .o »
rm a* : supprime tous les fichiers dont le nom commence par « a »
rm * : supprime tous les fichiers
rm *.? : supprime tous les fichiers ayant une extension d’une lettre
* : une chaîne quelconque de caractères
29
? : un caractère quelconque
Principales commandes sur les
fichiers
 Opérations de base sur les répertoires
 Création/suppression d’un répertoire
 mkdir <nom_répertoire>

 rmdir <nom_répertoire> : supprime un répertoire vide.

 rm -R <nom_répertoire> : supprime tout le répertoire

 Montage d’un système de fichiers


 Possibilité d’ajouter un système de fichiers extérieurs en
l’insérant dans la hiérarchie.
 Les commandes mount et unmount permettent de monter et
de démonter un système de fichiers.
 L’ajout d’une mémoire de masse est transparent pour
l’utilisateur.

30
Principales commandes sur les
fichiers
 Affichage du contenu d’un répertoire :
 ls [options] <nom_répertoire>
 L’option –l permet d’obtenir l’ensemble des informations relatives à chaque
fichier du répertoire :
 Type de fichier : « - » (fichier ordinaire), « d » (répertoire) ou « b », « c »
(fichiers spéciaux)
 Droits d’accès
 Nom du propriétaire
 Taille
 Nom
 Date de création
 Etc…
 L’option –R permet d’afficher récursivement le contenu d’un répertoire.
 Ex : ls / (afficher les répertoire à la racine
 Dev bin usr users etc unix …
 ls –R /
 /dev : liste des fichiers dans /dev
 /bin : liste des fichiers dans /bin
31
Autres commandes utiles
touch : crée un fichier
wc : donne le nombre de caractères (-c), de mots (-w) ou de lignes (-l)
sort : permet de trier par ordre alphabétique les lignes d’un fichier
grep : recherche d’un motif dans un fichier
Exemple : grep printf essai.c
grep –l printf *.c (affiche la liste des fichiers contenant « printf »)
head : affiche les première lignes
tail : affiche les dernières lignes
diff : permet de comparer 2 fichiers
find : permet de rechercher un fichier
lpr : imprime un fichier
lpq : affiche les fichiers en attente d’impression
lprm : détruit des fichiers en attente d’impression

man (très utile !!) : donne le manuel d’utilisation d’une commande

32
Droits d’accès aux fichiers (ii)
 Droit d’accès
 3 catégories d’utilisateur
u u u g g g o o o
r w x r w x r w x
 u(ser) le propriétaire du inode
 g(roup) les utilisateurs appartenant au groupe du inode
 o(ther) les autres utilisateurs de la machine
 3 types d’opérations sur les fichiers
 r(ead) lire
 w(rite) écrire, ajouter, supprimer
 x(eXecute) exécuter le programme contenu dans le fichier
 3 types d’opérations sur les répertoires
 r(ead) lister
 w(rite) ajouter un nouveau fichier
 x(eXecute) parcourir
33
 2 syntaxes : symbolique et octal
Protection des fichiers : mode symbolique
chmod <qui> <permission> <opération> <fichier>
<qui> valant u, g, o ou a (pour All/Tous)
<permission> valant + pr autoriser, - pr interdire
<operation> valant r, w ou x

Exemples :
chmod g+w montp.c (les membres du groupe peuvent écrire dans
le fichier montp.c)

chmod og-rwx montp.c (protection en lecture, en écriture et en


exécution)

34
Protection des fichiers : mode octal
chmod <permission> <fichier>
permission : UGO (User, Group, Others : chiffre octal
codant les bits r w x)
u u u g g g o o o
r w x r w x r w x
Exemples :
chmod 740 montp.c (rend le fichier accessible en lecture au groupe et
inaccessible aux autres)

35
Droits d’accès aux fichiers
 Propriété d’un Fichier
 UID du créateur (qui en devient le
propriétaire)
 Chown : changement de propriétaire (owner)

 Groupe d’un fichier


 GID du créateur
 Chgrp : changement de groupe
36
Les fichiers standards et leur
redirection
On peut assimiler un processus à un objet abstrait qui dispose
de 3 flux d’informations :
Flux en entrée Flux en sortie
Entrée standard
0 1 Sortie standard
(stdin) 2
Sortie erreur
standard

Signaux

Redirection de l’entrée standard : commande < nom_fichier


(l’entrée standard est redirigée sur le fichier de référence nom_fichier)
Redirection de la sortie standard : commande > nom_fichier ou commande
>> nom_fichier (redirection sans écrasement)
Redirection de la sortie en erreur standard :
commande > nom_fichier (en Bourne Shell)
commande >& nom_fichier (en C-schell) 37
Les fichiers et les processus
 Chaque processus dialogue avec
l’extérieur via des descripteurs de fichiers
ouverts
 Fichier
> grep donsez /etc/passwd > tmp
> more tmp
 Pipe
 fichier créé temporairement sans existence sur les
disques
> grep donsez /etc/passwd | more 38
Les SHELL

39
Définition
 Shell
 interface entre l’utilisateur et UNIX

 Les différents types de shells


 Bourne shell (prompt par défaut $)
 C shell (prompt par défaut %)

 Korne shell (prompt par défaut $)

40
Définition (suite)
 Shell est un programme (/bin/sh) qui interprète et
exécute les commandes :
 Création des processus
 Attente des fins d’exécutions
 Redirection des E/S : stdin, stdout et stderr

 Shell est aussi un langage de commandes


 Avec interprétation de phrases conditionnelles, composées ou
itératives (if … then …else, for …, while …)

 Shell peut lire ses commandes dans un fichier appelé


procédure (Script-shell)
 Shell gère un certain nombre d’indicateurs et de
variables utilisables par le programmeur
 Shell autorise le passage de paramètres
41

Vous aimerez peut-être aussi