You are on page 1of 16

Ex1 : Manipuler les fichiers et les répertoires

1. Connectez-vous sur tty1 en tant que l’utilisateur « etudiant » avec le mot


de passe « etudiant ». Pour info « tty1 » représente la 1ère console.
$ su - etudiant

2. Une fois connécté vous devriez être dans votre répertoire personnel.
Comment s’en rassurer.
$ pwd

/home/etudiant

3. Vérifiez de 2 manières que vous possédez des fichiers sur votre répertoire
personnel par le biais des commandes ci-dessous.
$ ls

$ ls –a

Pourquoi le résutat des 2 commandes est différent.

Réponse : l’option « -a » rajoutée à la commande « ls » permet de lister


aussi les fichiers cachés. Ces fichiers commencent par un «. »

4. Regarder la taille des fichiers contenus dans votre répertoire personnel par
le biais de la commande ci-dessous.
$ ls –la

La taille des fichiers est réprésentée en unité « octet » sur le 5ème champ du
résultat de la commande précédente.

Houssam AMIRY 1 Systèmes d'exploitation


« OPEN SOURCE »
5. A ce point on va créer des fichiers et une arborescence pour organiser ces
fichiers.
On va tout d’abord utiliser la commande « touch » pour la création de
fichiers vides.
$ touch {rapport,graph}_{jan,fev,mar}
C’est une manière qui permet de créer 6 fichiers d’un seul coup.
Utilisez la commande « ls » pour examiner le résultat de la dernière
commande.
$ ls
grap_fev graph_jan graph_mar rapport_fev rapport_jan
rapport_mar
Pour organiser ces fichiers on va créer des nouveaux répertoires.
On utilisera « mkdir »
6. On désire disposer de l’arborescence « projets/graphs »
Citez deux manières pour le faire.
a) $ mkdir projets
$ mkdir projets/graphs
b) $ mkdir –p projets/graphs
La méthode « b » permet de creér d’un seul coup toutes les
branches d’une nouvelle arborescence.
7. Créer l’arborescence projets/rapports
$ mkdir projets/rapports
8. Déplacer vous au sein du répertoire « rapports » puis créer le répertoire
« projets/copies »
$ cd projets/rapports
$ mkdir ../copies
Les « .. » permettent de remonter dans l’arborescence Linux
9. A partir de cette étape on commencera à faire le ménage dans notre
repertoire personnel en déplaçant les fichiers dans leurs bon endroit.
Lister le contenu du répertoire « projets »
$ ls projets

Houssam AMIRY 2 Systèmes d'exploitation


« OPEN SOURCE »
copies graphs rapports
10. Déplacer en premier lieu le fichier « graph_jan » dans le sous-répertoire
« graphs » puis par la suite déplacer d’un seul coup les 2 autres fichiers
« graphs » restant dans le même répertoire.
$ mv graph_jan projets/graphs
$ mv graph_fev graph_mar projets/graphs
La commande « mv » permet de déplacer plusieurs fichiers sur la même
ligne de commande
Vérifiez le contenu du sous-répertoire « graphs »
$ ls –l projets/graphs
11. Ensuite déplacez les deux fichiers « rapport_jan » et « rapport_fev »
dans le répertoire « rapports » et supprimer le fichier « rapport_mar ».
$ mv rapport_jan rapport_fev projets/rapports
$ rm rapport_mar
12. On va créer des copies des fichiers du mois de Janvier dans le répertoire
« copies » en utilisant pour l’un le chemin absolu et pour l’autre un
chemin relatif.
$ cd projets/copies
$ pwd
/home/etudiant/projets/copies
$ cp ../rapports/rapport_jan .
$ cp /home/etudiant/projets/graphs/graph_jan .
Le point à la fin est la destination : le répertoire de travail courant.

Houssam AMIRY 3 Systèmes d'exploitation


« OPEN SOURCE »
Ex2 : Créer sa propre arborescence

1. Sans vous déplacer, créez dans votre répertoire par défaut un répertoire
Cours, puis un sous répertoire Unix dans Cours ;placez-vous dans le
répertoire Unix, et créez-y un sous-répertoire TD
2. En restant dans le répertoire Unix, créez un répertoire Automates et un
répertoire Java dans le répertoire Cours ;
3. Placez-vous dans le répertoire Java et affichez précisément tout ce qu’il
contient (il devrait contenir deux répertoires ; si vous n’en trouvez pas tant,
consultez la page de man de ls et choisissez la bonne option) ;
4. Placez-vous dans le deuxième de ces deux répertoires et détermine le
répertoire courant
5. Replacez-vous dans le répertoire Java, puis allez dans le premier des deux
répertoires de la liste établie précédemment ; déterminez le répertoire
courant ;
6. Revenez directement dans votre répertoire principal ;de là, effacez le
répertoire Java.

Houssam AMIRY 4 Systèmes d'exploitation


« OPEN SOURCE »
Ex3 : Utiliser l’editeur vi
Connectez-vous en tant que l’utilisateur « etudiant ». Utilisez « vi » afin de
créer un nouveau document :
$ vi linux

Vous vous retrouvez alors dans l’éditeur « vi ». Passez dans le mode


ajout en appuyant sur la touche « a »

Vous êtes maintenant en mode ajout. Tout ce que vous saisissez fera
partie du document. Saisissez le dans vi aussi vite que possible. Ne vous
arrêtez pas pour corriger des fautes. On y reviendra.

1. Enregistrez cette première version en quittant l’éditeur :


<Echap>:wq

2. Editez de nouveau le document :


$ vi linux

Maintenant examinez l’extrait avec attention. Recherchez des fautes


d’orthographe et trouvez la première. Déplacer le curseur jusqu’au début du
mot épelé incorrectement à l’aide des commandes h, j, k et l pour déplacer
votre curseur à gauche, en bas, en haut et à droite, respectivement. Vous
pouvez également utiliser la commande. Vous pouvez également utiliser la
commande w pour avancer d’un mot à la fois. Corrigez le mot. Par exemple,
si vous avez mal écrit le mot « versions », positionner vous au début du mot
et remplacer-le comme suit :

jjjwwwwwwwww

ou en étant plus fantaisiste :

3j9w

Cette séquence vous amènera au bon mot, en supposant que vous avez saisi
le document donné. Il est évident que des lignes, des mots ou des espaces
supplémentaires (ou inférieurs) changeront cette séquence.

Corriger le mot à l’aide de la commande :

Houssam AMIRY 5 Systèmes d'exploitation


« OPEN SOURCE »
cwversions<Echap>

3. Examinez chaque ligne, une à une, trouvant d’autres erreurs. Essayez


d’utiliser la fonction de recherche pour déplacer le curseur vers un mot
mal épelé. Par exemple, si « légèrement » est mal épelé, recherchez le
mot ou une partie du mot. Par exemple : /léger<Entrée>
4. Trouvez les autres ereurs. Corrigez-les à l’aide des commandes comme
cw pour changer un mot, dw pour supprimer des mots en trop, dd pour
supprimer des lignes, cl pour changer des lettres individuelles. Souvenez-
vous d’utililser l’utile commande u pour annuler des changements faits
par erreur.
5. Enregistrez cette version en quittant l’éditeur :
:wq

Houssam AMIRY 6 Systèmes d'exploitation


« OPEN SOURCE »
Ex4 : Gérer les droits unix d’un fichier

1. Lister les droits de tous les fichiers de votre répertoire maison.

$ ls –l

La commande précédente ne permet pas de visualiser les

fchiers cachés de votre compte. L’option « -a » permet de

donner une liste complète.

$ ls –la
2. Dans votre répertoire courant, créez un répertoire essai_droit,
Saisissez la commande suivante pour déterminer les droits qui

lui ont été attribués par défaut.

$ ls –ld essai_droit

Par défaut ce répertoire est à 755 (rwxr-xr-x),


3. Quelles sont les commandes (en notation symbolique et en base 8) pour lui
donner les droits suivant (on suppose qu'après chaque commande on remet le
répertoire à 755:
p ro p riétaire g r o up e les a u tre s
d ro it e n d ro it e n d ro it d ro it en d ro it en d ro it d ro it en d ro it en d ro it
l e c t u r e é c r i t u r e d 'a c c è s l e c t u r e é c r i t u r e d 'a c c è s l e c t u r e é c r i t u r e d 'a c c è s
com m a
oui oui oui oui non oui non non oui
nde 1
com m a oui non oui non oui non non non ou i
nde 2
com m a non oui non non non oui oui non non
nde 3
com m a non non oui oui non oui non non non
nde 4

Commande 1 : $ chmod 751 essai_droit


$ chmod o-r essai_droit

Commande 2 : $ chmod 521 essai_droit

Houssam AMIRY 7 Systèmes d'exploitation


« OPEN SOURCE »
$ chmod u-w,g-rx+w,o-r essai_droit

4. Créez un fichier droit dans le répertoire essai_droit


Saisissez la commande suivante pour déterminer les droits qui lui ont été
attribués par défaut.
$ ls –l droit
par défaut ce fichier est à 644 (rw-r--r--).

5. Saisissez la commande umask pour visualiser la valeur qui lui est attribuée
par défaut.
$ umask

On va changer la valeur de umask, de manière à ce que les fichiers lors de


leur création aient par défaut les droits 640

(rw-r-----), et les répertoires 750 (rwxr-x---).

Le umask convenable devrait avoir une valeur de 027

Saisissez la commande suivante pour effectuer ce changement

$ umask 027

4. En restant sur la même console où vous avez changé la valeur de

umask créer le repertoire essai_droit2 et le fichier droit2 et vérifiez leurs


droits réspectifs.

Houssam AMIRY 8 Systèmes d'exploitation


« OPEN SOURCE »
Ex5 : Manipuler les fichiers de type lien

 Liens Symboliques

Créer sur votre répertoire maison un lien symbolique monpass vers le


fichier /etc/passwd.

$ ln -s /etc/passwd monpass

Saisissez la commande suivante

$ ls –li monpass /etc/passwd

Faites les remarques suivantes :

Chaque fichier a son propre numéro d’inodeun lien symbolique est un


fichier différent de l’original.

Le 1er caractère de la longue liste pour un symlink est la lettre l

Remarquez les permissions particulières du lien symbolique

Remarquez la taille du lien symbolique, c’est 11 vu que la chaîne


« /etc/passwd » est composé de 11 caractères

 Liens Physiques

1. Créer un fichier linux

$ touch linux

2. Créer un lien physique fedora sur le fichier linux

$ ln linux fedora

3. Saisissez la commande qui suit :

$ ls –li linux fedora

Houssam AMIRY 9 Systèmes d'exploitation


« OPEN SOURCE »
4. Faîtes les remarques suivantes :

a) Les deux fichiers linux et fedora ont exactement le même inodes.

b) Il existe un seul fichier sous-jacent, mais il existe 2 points d’entrée

c) linux et fedora sont tous deux des fichiers réguliers

d) Le nombre de liens a été incrémenté à 2 car deux noms de chemins


pointent vers le même fichier

 Application
1. Créer un fichier test contenant la ligne Ceci est un fichier de test.

2. Créer une copie de ce fichier, test1, puis un lien test2 et un lien


symbolique test3 sur test.

3. Comparer les numéros d’inodes de ces quatres fichiers

4. Effacer test puis afficher le contenu de test1, test2 et test3. Préciser


l’action de rm

5. Créer un nouveau fichier test contenant la ligne Ceci est un deuxième


fichier test. Afficher à nouveau le contenu des quatres fichiers. Commentez ?

Houssam AMIRY 10 Systèmes d'exploitation


« OPEN SOURCE »
Ex6 : Traiter des données ou des fichiers en utilisant des
filtres, les redirections et les tubes

1- Comment visualiser deux fichiers l'un après l'autre à l'aide de la


commande cat ?
2- Comment faire une copie d'un fichier sans utiliser cp ni ouvrir d'éditeur de
texte ?
3- Utiliser cat pour écrire un peu de texte et mettre le résultat dans un fichier
notes.
4- Quelle différence y a-t-il entre :
a. Cat bla blo > blu
b. Cat bla blo >> blu
Que se passe-t-il, pour chaque ligne, selon que le fichier blu existe ou n'existe
pas ?

5- Comment obtenir un fichier blo qui corresponde à un fichier bla dont les
lignes seraient désormais numéroté ?

Houssam AMIRY 11 Systèmes d'exploitation


« OPEN SOURCE »
Ex7 : Jokers et expressions régulières
1- Vous avez chez vous des fichiers appelés essai1, essai2, essai3 et essai4.
Comment les effacer en une seule ligne de commande ?
2- Dans mon répertoire d'accueil, j'ai un certain nombre de fichiers avec un
suffixe .c. Je désire les regrouper dans un répertoire que j'appellerai C/.
Quelles sont les commandes que je dois taper ?
3- Vous désirez regrouper dans un répertoire Rangement les fichiers dont le
nom contient un caractère minuscule suivi d'un caractère majuscule.
Quelle(s) est/sont la/les commande(s) à donner ?
4- En utilisant ls et grep, affichez la liste des fichiers dans /bin dont le nom :
a. Commence par «a» et dont la deuxième lettre est «s» ou «t»;
b. Contient «un» et se termine par «t»;
c. Contient «gre» ou «st».
d. Contient exactement deux lettres «m»;
e. Contient au moins deux lettres «m»;
f. Contient au moins quatre caractères et aucun chiffre;
g. Est constitué de deux lettres exactement;
5- Comment éliminer les lignes vides dans un fichier ? Comment éliminer
les lignes ne contenant que des blancs ?

Houssam AMIRY 12 Systèmes d'exploitation


« OPEN SOURCE »
Ex8 : Les commandes Head et Tail
1- Affichez les 15 premières lignes du fichier /etc/passwd, les 15 dernières
lignes, toutes les lignes à partir de la quinzième, les lignes 15 à 20.
2- Récupérer les lignes 5 à 9 d'un fichier de 12 lignes.
3- Comment afficher la cinquième ligne d'un fichier ?

Ex9 : Filtres et redirections


1- Créez un fichier dont chaque ligne commence par un chiffre, suivi d'un
slash (/), puis d'un ou plusieurs mots.
a. Affichez les lignes de ce fichier triées en ordre croissant, suivant le
nombre placé en début de ligne;
b. Éliminez de chaque ligne le chiffre et le caractère «/»;
c. Triez ces lignes par ordre alphabétique inverse.
2- Combien de fichiers de configuration avez-vous ?
3- Combien de répertoires de configuration avez-vous ?
4- Comment mettre dans un fichier la liste de tous les fichiers de
l'arborescence à partir du répertoire courant ?
5- Créez un fichier liste contenant la liste de tous vos fichiers, avec leur
taille, leurs droits, etc.
6- Comment afficher uniquement les fichiers du répertoire courant qui sont
des liens symboliques ?
7- Combien de lignes contiennent le mot «file» dans la page de man de syst ?
8- Quels sont les dix plus gros fichiers de /usr/bin/ ?
9- Pour chaque ligne du fichier /etc/hosts, affichez :
a. Le cinquième caractère;
b. Les caractères 5 à 10, et le treizième;
c. Tous les caractères à partir du quinzième.
Houssam AMIRY 13 Systèmes d'exploitation
« OPEN SOURCE »
Ex10 : Ajouter et supprimer des utilisateurs et des groupes

Saisissez la commande passwd pour changer votre mot de passe


$ passwd
Vous êtes « root » saisissez la commande ci-dessous pour supprimer le mot
de passe de l’utilisateur « benali »
$ passwd –d benali
Suivez les étapes suivantes pour supprimer le mot de passe de
L’utilisateur « benali » en éditant le fichier /etc/shadow
a) vi /etc/shadow
b) chercher la ligne correspondant à l‘utilisateur bengali
c) vider le 2ème champ de la ligne entre les 2 premiers « : »
d) quittez vi en forçant la sauvegarde « :wq ! »
En utilisant la commande useradd créer un compte pour
l’utilisateur « benomar »
$ useradd benomar
Verifiez l’ajout d’une ligne propre à « benomar » dans les fichiers
/etc/passwd et /etc/shadow
Connectez vous en tant qu’utilisateur « benomar »
$ su – benomar
$ pwd
Créer un groupe unix de nom ofppt
$ groupadd ofppt
Changer le groupe primaire de l’utilisateur « benomar »
pour devenir « ofppt »
$ usermod –g ofppt benomar
Changer le shell de « benomar » pour devenir « csh »
$ chsh –s /bin/csh benomar
Supprimer le compte « benomar »
Houssam AMIRY 14 Systèmes d'exploitation
« OPEN SOURCE »
$ userdel benomar

Créer un groupe unix « dept » à gid 1000 en utilisant le


fichier /etc/group
a) $ vi /etc/group
b) ajouter une ligne en fin de fichier, semblables aux autres lignes
existantes, pour le groupe « dept » au gid 1000

Créer un utilisateur « bouhal » avec uid 879 appartenant au


groupe « dept » précédemment rajouté. L’utilisateur
« bouhal » aura son répertoire maison sur /home/bouhal
et utilsera le shell « bash »
a) $ vi /etc/passwd
b) Rajouter une ligne en fin du fichier semblable aux autres lignes
existantes et contenant les informations du compte « bouhal »
c) $ vi /etc/shadow
d) rajouter une ligne en fin du fichier débutant par « bouhal » et
suivi de 8 « : »
e) créer la répertoire maison de l’utilisateur « bouhal »
$ mkdir /home/bouhal
f) rendre « bouhal » propriétaire de sa home directory
$ chown bouhal:dept /home/bouhal

Houssam AMIRY 15 Systèmes d'exploitation


« OPEN SOURCE »
Ex11 :
1.Determniner tous les comptes utilisateurs de votre machine
2. Créer à l’aide des commandes unix le groupe « admin »
à gid 1234 et le compte unix « bassir » à uid 747 appartenant
au groupe « admin »
3. Proceder à la creation du groupe « etude » à gid 2546 et
l’utilisateur « brachid » à uid 964 appartenant au groupe
« etude » en utilisant les differents fichiers relatifs aux
groupes et comptes unix
4. Rajouter « brachid » au groupe admin

5. Changer par commande unix le shell de« brachid » en « sh »


6. Utiliser le fichier de configuartion des comptes unix pour
Le shell de « bassir » en « sh »
7. Associer au compte « bassir » le mot de passe « /uhjN^,7$ »
8. Supprimer le mot de passe du compte « bassir
9. Supprimer le compte « bassir » en utilisant les commandes Unix
10. Supprimer le compte « brachid » en utilisant les fichiers de
Configuration
11. Supprimer le groupe « admin » en utilisant les commandes unix
12. Supprimer le groupe « etude » en utilisant les fichiers de configuration

Houssam AMIRY 16 Systèmes d'exploitation


« OPEN SOURCE »

You might also like