Vous êtes sur la page 1sur 33

Module Système d’exploitation Filière SIC

Travaux Pratiques N°1 et N°2


Maryam LAQLII, Sic, A1
Encadré par : ELBATTEOUI Ismail

Objectifs :
- Manipuler des commandes sur le système d’exploitation Linux

TP N°1 : Connexion au système et ouverture de sessions de


travail

1. Qu’est-ce qu’un interprète de commandes ?


Un interpréteur de commandes est un logiciel système faisant partie des
composants de base d'un système d'exploitation. Sa fonction est d'interpréter les
commandes qu'un utilisateur tape au clavier dans l'interface en ligne de
commande.
2. Manipulation de quelques commandes sur l’interprète de commandes
« Shell » :
1. Dans le fichier /etc/passwd, chaque ligne correspond aux informations liées à
un utilisateur de la machine.
La commande cat sert à concaténer et afficher sur la sortie standard le(s)
fichier(s) en paramètre ou sert à afficher sur la sortie standard, le contenu des
fichiers, spécifiés en argument de la commande, l’un après l’autre. En plus,
cette commande sert à créer et écrire dans un fichier.
2. La ligne de commande cat /etc/shells permet d’afficher les différents shells
ainsi que celui utilisé par défaut.

Pour savoir le shell utilisé par défaut on utilise la syntaxe suivante :


Echo $SHELL

3. La commande passwd permet de changer de mot de passe. Pour cela, après


ma connexion, je lance cette commande en tapant :$ passwd (Enter).
4. La commande exit aide à sortir d’une boucle infini.
Quand je tape la commande exit, le terminal se ferme et je perds tout le
contenu sur lequel je travaillais.
5. La commande who permet de connaître les informations sur les différents
utilisateurs connectés.

On peut remarquer que la seule session en cours est ‘abcd’. 


6. Une commande est un programme qui est stocké sous la forme d'un fichier.
La commande which permet de retrouver le fichier correspondant, ou des
informations sur une commande.

Which who affiche les fichiers contenant les informations sur les
utilisateurs connectés.

7. La commande man permet d’avoir des informations sur une commande


précise.
Quand je tape : man cat, j’aurai :
Et bien d’autres informations sur la commande cat si je clique sur entrer.
Ces informations sont généralement les suivantes :
 Le nom de la commande dont la fonction est brièvement décrite.
 Toutes les possibilités de saisies liées à cette commande (syntaxe).
 Une explication courte des conséquences de la commande.
 Les fichiers modifiés par la commande ou nécessaires au moment de la
saisie.
 La liste des différentes options de cette commande.
 Les références croisées vers d'autres commandes proches.
 Des explications sur les messages d'erreur.
 Les valeurs renvoyées par la commande.
 Les problèmes connus de cette commande.
 Les exemples d'appel à cette commande.
 Des astuces pour utiliser cette commande.

Et pour la commande : man man


 On utilise la commande |more si l’affichage d’exécution d’une
commande contient plus d’une page de notre terminal.
|more (who - -help |more)

8. Savoir la fonction de quelques commandes à l’aide de la commande man :


8.1. Logname :
Logname est une commande Unix abréviation de « Login Name », qui
affiche le nom d’utilisateur courant.
8.2. Id :
Cette commande donne l’identifiant réel et effectif de l’utilisateur et du
groupe.
8.3. Whoami :
Cette commande permet d’afficher le nom de l’usager associé à
l’identificateur effectif/ l’identifiant effectif de l’utilisateur.
8.4. Users :
Cette commande les noms des utilisateurs qui sont actuellement
connectés à l’hôte.

8.5. Who :
Cette commande permet de connaître les sessions en cours.
8.6. Uname :
Cette commande donne les informations sur le système.

- Uname –p : donne le type du processeur.


- Uname –m : donne le nom de la machine.
- Uname –n : donne le nom de l’hôte du nœud du réseau.
- Uname –r : donne des informations à propos du noyau du système.
- Uname –v : donne la version du noyau.
- Uname –a : donne toutes les informations possibles sur le système et
la machine à l’exception du type du processeur et de la plateforme du
hardware s’ils ne sont pas connus.
8.7. Date :
Cette commande donne et modifie la date et le temps du système.
8.8. Wich :
Cette commande affiche la localisation de n’importe quelle commande,
vu que chaque commande est associée à un fichier précis.
8.9. Touch :
Cette commande permet de mettre à jour la date de dernière modification
d’un fichier.

9. Un éditeur de texte est un logiciel destiné à la création et l'édition de fichiers


textes.
La commande cat constitue aussi un éditeur simplifié. Donc, on peut
l’utiliser pour entrer des données dans un fichier précis.

10.ls –l :

Cette commande affiche les informations complètes des fichiers et sous-


répertoires.
11. cat fich1
Cette commande permet d’afficher le texte que j’ai déjà stocké dans le fichier
fich1.
TP N°2 : L'arborescence du système de fichiers
d'UNIX

Exercice 1 :
1. Je crée le répertoire rep en utilisant la commande mkdir.

2. Je me place dans le répertoire rep en utilisant la commande cd.

- ls : Affiche le contenu du répertoire courant ou de celui passé en


paramètre.

- ls –a : Liste tous les fichiers, y compris les fichiers cachés


commençant par « . ».
- ls –l : Affiche les informations complètes des fichiers et sous
répertoires.
- ls –al : Cette commande affiche la taille, la date et l’heure de
modification, le nom du fichier ou du répertoire, le propriétaire du
fichier et son autorisation. En outre, elle affiche les fichiers cachés.

- ls –i : Affiche le descripteur des fichiers (i-numéro).


- ls –ali : Cette commande affiche la taille, la date et l’heure de
modification, le nom du fichier ou du répertoire, le propriétaire du
fichier et son autorisation. En outre, elle affiche les fichiers cachés et
le descripteur des fichiers (i-numéro).
3. On observe les tailles, les dates et les heures de modification, les noms
des fichiers et des répertoires, les propriétaires des fichiers et leurs
autorisations. En outre, on observe les fichiers cachés et les descripteurs
de ces derniers (i-numéro).
Le répertoire « rep » ne contient aucun fichier (il est vide), car je viens de
le créer.
Par contre, je peux créer un fichier dans le répertoire « rep » et l’afficher.

Le répertoire « rep » contient le fichier « fich1 ».


4.
- cat :
Cette commande concatène et affiche sur la sortie standard le(s) fichier(s)
en paramètre ou affiche sur la sortie standard, le contenu des fichiers,
spécifiés en argument de la commande, l’un après l’autre.
 cat . :
Elle affiche sur la sortie standard le nom du répertoire en paramètre
qui est « . » ( le répertoire courant) et sa nature(dossier).
NB : Vu que « . » n’est pas un fichier alors cette commande n’affiche
pas sur la sortie standard les paramètres cités en haut.

- rm :
Cette commande (ReMove) sert à supprimer un ou plusieurs fichiers.
 rm . :
Puisque « . » n’est pas un fichier, cette commande ne peut le supprimer
( « . » est un dossier)
- pwd :
Cette commande signifie en anglais « print working directory ». Elle
permet d'afficher le chemin d'accès vers le répertoire où se situe
l'utilisateur qui a entré la commande.
Ou simplement, elle permet d’afficher le répertoire courant.

- cd :
Cette commande aide à se déplacer vers le répertoire identifié par
'chemin'.
 cd . : aide donc à se déplacer vers le répertoire courant « . ».

- pwd . : a affiché le chemin d’accès vers le répertoire dans lequel se


trouve l’utilisateur.

- cd .. : pour se déplacer vers le répertoire parent .


- pwd : donne le chemin d’accès au répertoire parent « home » qui est le
répertoire courant.

Conclusion :
Si on change le répertoire courant par la commande cd, la commande pwd
affiche un chemin différent vers ce dernier.
5. ls –ali affiche des informations sur tous les fichiers et les répertoires qui
existent dans le répertoire personnel du super-utilisateur( les i-nodes, les
fichiers cachés, les droits d’accès aux dossiers et fichiers existants. Par
contre, ls −ali ~/rep affiche le contenu du répertoire « rep » que nous
venons de créer (les fichiers cachés, les i-nodes et d’autres informations).

6. On peut conclure que le répertoire racine est le répertoire courant qui est
le même que le répertoire parent.
En plus, la syntaxe ls −lai | more permet d’afficher les fichiers et les
informations (Les descripteurs de fichiers( les i-nodes)..), sur les
répertoires, les fichiers ( tout type de fichiers ; cachés, ordinaires,
binaires…) et les liens page par page (vu que la quantité d’informations
est très grande).
7.

On en déduit que le répertoire rep existe déjà.


On observe que la commande rmdir ne supprime que les répertoires vides et
puisque le répertoire « rep » n’est pas vide, elle ne peut pas le supprimer.
Le répertoire « rep » contient les fichiers fich1 et fich1. C’est ce qui est
démontré par la commande ls –l.
En plus des fichiers fich1 et fich1., le répertoire « rep » contient d’autres fichiers
cachés qui sont « . » et « .. » qui s’affichent à l’aide de l’option –a de la
commande ls.

Exercice 2 :
Introduction :
*, ?, [..], ^ et $ sont des expressions régulières qui remplacent et représentent
des données come des caractères.
[ ab] signifie a ou b.
c[ab]d signifie cad ou cbd.
[a-d] représente l’intervalle des lettres entre a et d.
c[a-d] signifie ca,cb,cc,cd.
[a-d][a-d]* signifie l’existence de deux caractères avant ayant 0 ou une seule
occurrence.
[a-d]* je trouve 0 occurrence ou une
Ligne commençant par a : ^a pour début
Lignes Qui se terminent par a : a$ pour la fin
a? : signifie qu’une chaine de caractères contient 1 et un seul caractère après a
* : signifie avoir 0 ou plusieurs d’un caractère précis
^et $ : sont réservés pour les lignes
* : pour les caractères.
- ls /bin/a* donne tous les fichiers ou répertoires qui commencent par a
et représentent les occurrences de a (pas de spécification sur
l’endroit), avec 0 fois a ou une seule fois a dans une chaine de
caractères ; (0 occurrence sur une chaine de caractères ou une fois a)
* renvoie soit 0 soit n caractères après a.
Ceci a soit 0 occurrence ou une seule.
/bin : le répertoire contenant des fichiers binaires (exécutables).
Si aucun fichier ne commence par a, la commande renvoie 0.
- ls /bin/a??* donne les fichiers et répertoires qui commencent par a et
comporte en plus du a au moins deux caractères.
On a deux et deux caractères après a, puis n’importe quels caractères.

- ls /bin/b*[0-9] affiche les fichiers et répertoires qui commencent par b


et puis d’autres caractères et des nombres entre 0 et 9.
Si l’occurrence de * est 0, on peut obtenir b2,b5..
- ls /bin/g*[ep] /usr/bin/b*[a-z] affiche les fichiers et répertoires qui
commencent par b et se terminent par d’autres caractères allant de a
jusqu’à z, ou d’autres qui commencent par g et finissent par e ou p

- ls /home/.././var/log/../../etc affiche les fichiers et les répertoires en


partant de la racine jusqu’à etc et en passant par var qui est un dossier
contenant des données « variables », souvent des logs (traces écrites
de ce qui s'est passé récemment sur l'ordinateur).
- ls /home/.././var/log/../../etc/* affiche les fichiers et les répertoires en
partant de la racine jusqu’à etc et en passant par var qui est un dossier
contenant des données « variables », souvent des logs (traces écrites
de ce qui s'est passé récemment sur l'ordinateur). A condition, que ces
fichiers ou répertoires peuvent débuter par n’importe quel caractère
puvant avoir une occurrence ou 0 occurence.
- ls /home/.././var/log/../../etc/.* affiche les fichiers et les répertoires en
partant de la racine jusqu’à etc et en passant par var qui est un dossier
contenant des données « variables », souvent des logs (traces écrites
de ce qui s'est passé récemment sur l'ordinateur). A condition, que ces
fichiers ou répertoires débutent par un point et se terminent par
n’importe quels caractères ayant une occurrence ou 0 occurence.

- Autres commandes :

 Commence par a et z : ls /usr/bin az*


 Commence par r, s, z, ou v : ls /usr/bin [srvz]*
 Ne commence ni avec d ni avec s : ls /usr/bin [!ds]*
 Comporte au moins un fls : ls /usr/bin *fls*
 Comporte au moins deux f : ls /usr/bin *f*f* (pas de notion d’ordre)
 Comporte au moins 3 caractères ls : ls /usr/bin/ ???*
 Comporte exactement 3 caractères ls : ls /usr/bin/ ???
 Comporte au plus 3 caractères : ls /usr/bin/ ?/usr/bin/ ??/usr/bin/ ???

Exerice 3 :
1.

2.

3.

On

remarque que les fichiers fich1.txt et le fich2.txt n’ont pas les mêmes i-nodes.
4.
Même après avoir changé le nom du fichier fich2.txt en fich3.txt, l’inode de ce
dernier ne change pas.
5.

6.

7.

8.

9.
 Lien physique :

1.

2. On observe que l’i-node du fichier d’origine fich1.txt est le même que


celui du lien_fich1. Donc, les i-nodes du fichier d’origine et du lien
physique sont similaires.
3. On constate que le lien_fich1 a le même contenu que le fichier d’origine
fich1.txt. Donc, le lien physique garde le même contenu de son fichier
d’origine (la source).

4.
Quand on modifie le contenu du fichier d’origine qui est ici fich1.txt, le
contenu du lien physique qui est ici lien_fich1 sera modifié aussi.

5. On observe que quand on modifie le contenu du lien physique, le contenu


du fichier d’origine sera aussi modifié.

Conclusion : Quand on modifie le lien physique ou le fichier d’origine (source) ,


cette modification se répercute mutuellement.
6.

7. On observe que malgré qu’on a supprimé le fichier d’origine fich1.txt, le


contenu du lien physique ne sera pas supprimée et le lien physique aussi.
 Lien symbolique :
1.

2. On observe que les i-nodes du fichier d’origine fich1.txt et du lien


symbolique lien_sfich1 diffèrent. Donc, les i-nodes du fichier
d’origine et du lien symbolique diffèrent.

3. Le fichier d’origine fich1.txt et le lien symbolique lien_sfich1 one le


même contenu.

4. Quand on modifie le contenu du fichier d’origine fich1.txt, le contenu


du lien symbolique sera aussi modifié.

5. Quand on modifie le contenu du lien symbolique, le contenu du fichier


d’origine sera aussi modifié.

6. Quand on supprime le fichier d’origine fich1.txt, le lien symbolique


reste.
7. Quand on supprime le fichier d’origine, le lien symbolique ne sera pas
supprimé. Par contre, ce dernier pointe un fichier inexistant, ce qui
explique le message reçu.

 Comparaison entre le lien physique et le lien symbolique :


D’après cette partie, on en conclue en premier lieu que le lien physique et son
fichier d’origine ont toujours le même i-node. Par contre, les i-nodes du lien
symbolique et du fichier d’origine diffèrent. En deuxième lieu, avant avoir
modifié le contenu d’un des trois fichiers (lien physique, lien symbolique et
fichier d’origine), ces derniers auront tous le même contenu. En troisième lieu,
une modification du fichier d’origine entraine une modification du lien physique
et vice versa. En quatrième lieu, une modification du fichier d’origine entraine
une modification du lien symbolique et vice versa. En cinquième lieu, si on
supprime le fichier d’origine, le lien physique ne sera pas supprimé ainsi que son
contenu. Par contre, quand on supprime le fichier d'origine, le lien symbolique
symbolique ne sera pas supprimé mais il va pointer vers un fichier inexistant, et
il n’aura pas de contenu.

Vous aimerez peut-être aussi