Vous êtes sur la page 1sur 8

Université de Monastir 2019/2020

Faculté des sciences de Monastir LSI 1


Département Informatique

Travaux Pratiques N°1 :


Prise en main de l’environnement Linux
Système d’Exploitation 1
Durée :4,5 heures

OBJECTIFS :
 Comprendre les concepts de base du système Linux
 Manipulation des commandes de base pour la gestion des fichiers et des repertoires

1 OUVERTURE DE SESSION
1) Connectez-vous à un poste.
2) Quels sont votre login et mot de passe ?
3) Ouvrir une fenêtre Shell, quel est le prompt dans cette fenêtre ?
4) Où trouvez-vous dans l'arborescence Linux ?

2 DECOUVERTE DU SHELL
Le shell est l’interpréteur de commandes (l'interface). Il est chargé de faire l’intermédiaire
entre le système d'exploitation et l'utilisateur grâce aux lignes de commandes saisies par ce
dernier. Son rôle consiste ainsi à lire la ligne de commande, interpréter sa signification,
exécuter la commande, puis retourner le résultat sur les sorties.
A présent, Linux nous propose de plus en plus d'opérations de manière graphique très
conviviale. Nous pouvons donc cliquer sur des icônes comme sous MacOS ou Windows.
Mais nous risquons souvent de retourner aux commandes manuelles, car c'est plus rapide.
Il existe plusieurs types de shells. Le fichier /etc/shells contient une liste de tous les shells
disponibles : ash, bash, /etc/shells csh, false, passwd, tcsh...
Malgré quelques différences, tous comportent des commandes internes (pwd, cd, ls, if, then,
for, else) et des commandes externes (netconfig, man, lpc).
Cependant, chaque utilisateur possède un shell par défaut, qui sera lancé à l'ouverture d'une
invite de commande. Le shell par défaut est précisé dans le fichier de configuration
/etc/passwd dans le dernier champ de la ligne correspondant à l'utilisateur. Il est possible de
changer du shell dans une session en exécutant tout simplement le fichier exécutable
correspondant, par exemple : /bin/bash.

-1-
Travaux Pratiques N°1 : 2019/2020
Prise en main de l’environnement Linux LFI1

Pour exécuter une commande sur le shell, il faut qu’une invite (ou prompt) soit prête.
En général, il s’agit d’un caractère dollar ($) ou supérieur (>), en début de ligne. On peut
distinguer diverses sortes de commandes.

Les premières commandes

Syntaxe d’une commande :


Une commande LINUX doit posséder la syntaxe suivante :

$ Commande [option1] …... [optionN] [arg1] …... [argN]

Parmi les premières commandes qu’on peut découvrir on peut citer :

•whoami : c’est une commande simple qui vous renvoie l’identifiant de l’utilisateur.

•who : Permet de connaître la liste de personnes actuellement connectées sur la machine.

•man : Le manuel en ligne pour toutes les commandes accessibles depuis le terminal. Il suffit
de taper man ma_commande pour accéder à la description complète de ma_commande.
Pour avoir de l'aide sur une commande, connaître sa syntaxe et sa description, on peut
également utiliser le help : nom de commande --help

Exercice 2.1

1. Lancer un terminal et testez les commandes who, whoami, et w et observez les


informations affichées.
2. Ouvrez la page de manuel de la commande man en tapant man who. Vous pouvez faire
défiler le texte avec les flèches haut et bas, ou les touches page up et page down. Pour sortir,
pressez la touche q.

Exercice 2.2

Lancer un terminal et taper les commandes suivantes et interpréter le résultat obtenu :


- date
- cal
- id
- groups
- hostname
- clear
- history
- exit
- reboot

-2-
Travaux Pratiques N°1 : 2019/2020
Prise en main de l’environnement Linux LFI1

3 MANIPULATION DES FICHIERS SOUS LINUX


3.1 Concept des fichiers
Un fichier est l’unité de stockage logique mise à la disposition des utilisateurs pour
l’enregistrement de leurs données. Dans un fichier on peut écrire du texte, des images, des
calculs, des programmes…
Les fichiers sont généralement créés par les utilisateurs. Toutefois certains fichiers
sont générés par les systèmes ou certains outils tels que les compilateurs. Afin de différencier
les fichiers entre eux, chaque fichier a un ensemble d’attributs qui le décrivent. Parmi ceux-ci
on retrouve : le nom, l’extension, la date et l’heure de sa création ou de sa dernière
modification, la taille, la protection. Certains de ces attributs sont indiqués par l’utilisateur,
d’autres sont complétés par le système d’exploitation.
 Les fichiers dont le nom commence par « . » sont des fichiers cachés.
 A l’aide de quelques commandes de base, on peut effectuer toutes les opérations utiles
sur le système de fichiers (parcours, copie, déplacement, etc.) par l’intermédiaire de la ligne
de commande. Comme exemples de commandes on cite :

•touch : Taper la commande touch fic permet de créer un fichier vierge appelé fic.
•cp : la commande cp fic1 fic2 crée un nouveau fichier identique à fic1 appelé fic2. On
peutaussi écrire cp fic1 . . . ficn dest qui copie les fichiers fic1 à ficn dans le répertoire dest.
Par défaut cp ne copie que des fichiers. L’option –r permet de forcer cp à copier les
répertoires et sous-répertoires de ce qui lui est donné en argument (autrement dit à copier
récursivement).
•mv : fonctionne de manière similaire à cp, mais elle déplace les fichiers concernés plutôt que
de les recopier.
•rm : permet de supprimer des fichiers. Il n'y a pas de corbeille en console, la suppression est
définitive. Il faut donc être prudent.
•cat, less : La commande cat mon_fichier permet d’afficher en une seule fois le contenu entier
du fichier texte mon_fichier. Pour des textes plus longs, on utilise less ou more de manière à
avoir le texte page par page.
•head tail : On peut obtenir uniquement le début ou la fin d'un fichier avec head et tail. En
utilisant tail -f on peut suivre l'évolution d'un fichier en temps réel.

3.2 Concept des répertoires


Un répertoire est une entité crée pour l’organisation des fichiers. En effet on peut enregistrer
des milliers, voire des millions de fichiers sur un disque dur et il devient alors impossible de s’y
retrouver. Avec la multitude de fichiers créés, le système d’exploitation a besoin d’une
organisation afin de structurer ces fichiers et de pouvoir y accéder rapidement. Cette
organisation est réalisée au moyen de répertoires également appelés catalogues ou directory.

-3-
Travaux Pratiques N°1 : 2019/2020
Prise en main de l’environnement Linux LFI1

 toutes les versions d’Unix ont une racine unique désignée par « / ».
 Tous les répertoires possèdent obligatoirement dans leur liste deux autres
répertoires ;
• « . » est un synonyme pour le répertoire lui-même.
• « .. » est un synonyme pour le répertoire qui le contient.
 Pour trouver un fichier ordinaire, il faut connaître son chemin d’accès.
 un chemin = un point de départ + une liste des répertoires à traverser pour arriver
au répertoire de destination.
 la liste de répertoire est composé de répertoire séparés par le symbole « / ».
• si le point de départ est la racine, le chemin est dit absolu.
• dans le cas contraire, c’est un chemin relatif.
• la racine est représentée par « / ».
 Astuce : « ~ » représente le répertoire d’accueil de l’utilisateur courant.
Exemple des commandes de manipulation des répertoires :

•pwd : cette commande, utilisée sans argument, elle indique dans quel répertoire vous
vous trouvez actuellement (répertoire courant, ou working directory). A l’ouverture d’un
nouveau terminal, le répertoire courant est toujours votre répertoire personnel.
•cd : la commande cd rep change le répertoire courant en le répertoire rep. Elle permet de
se déplacer dans l’arborescence. Utilisée seule ou avec l’argument ~, elle vous ramène
dans votre répertoire personnel. Utilisée avec l’argument « .. » , elle vous fait remonter
d’un niveau dans l’arborescence (au répertoire parent).
•ls : Cette commande affiche le contenu du répertoire courant, fichiers et sous-
répertoires.
•mkdir : la commande mkdir rep crée un répertoire vide rep. Si ce répertoire existe déjà
vousobtiendrez bien sûr une erreur.
•rmdir : supprime les répertoires, s’ils sont vides.
Exercice 3.2
1. Lancer dans un terminal les commandes suivantes :
1) Pwd
2) ls
a) Quel est votre répertoire de travail ?
b) Quels fichiers trouvez-vous ?
c) Êtes-vous sûr d'avoir affiché tous les fichiers ?
2. Lancer les commandes suivantes :
1) ls -l
2) ls -al
3) ls -Ral
b) Quel est le rôle de l'option -l ?
c) Quel est le rôle de l'option -a ?
d) Quel est le rôle de l'option -R ?

-4-
Travaux Pratiques N°1 : 2019/2020
Prise en main de l’environnement Linux LFI1

3.3 Hiérarchie standard sous LINUX


- /bin : commandes principales
- /dev : fichiers périphériques
- /etc : fichiers de configuration de la machine
- /home : répertoire des utilisateurs
- /lib : librairies partagées
- /sbin : commandes d’administration essentielles
- /tmp : fichiers temporaires
- /usr : seconde hiérarchie
- /var : données variables

3.4 Les fichiers de configuration


Lorsque diverses personnes ont accès à un système, il est nécessaire que l'administrateur
système gère les utilisateurs. Pour ceci, les commandes usuelles et les fichiers à configurer
doivent être connus.
Les fichiers importants à connaître sont :
 le fichier /etc/passwd
 le fichier /etc/group

 Structure de fichier /etc/passwd :


Ce fichier contient 7 champs, séparés par le caractère « : »
1. Le nom du compte de l'utilisateur
2. Le mot de passe de l'utilisateur (codé bien sûr)
3. L’entier qui identifie l'utilisateur pour le système d'exploitation (UID=User ID,
identifiant utilisateur)
4. L’entier qui identifie le groupe de l'utilisateur (GID=Group ID, identifiant de groupe)
5. Le commentaire dans lequel on peut retrouver des informations sur l'utilisateur ou
simplement son nom réel
6. Le répertoire de connexion qui est celui dans lequel il se trouve après s'être connecté
au système
7. La commande est celle exécutée après connexion au système (c'est fréquemment un
interpréteur de commandes)

 Structure de fichier /etc/group :


Ce fichier contient 4 champs, séparés par le caractère « : »
1. Nom du groupe
2. « x » pour remplacer un mot de passe non attribué maintenant
3. Numéro de groupe, c-à-d l'identifiant GID
4. La liste des membres du groupe

-5-
Travaux Pratiques N°1 : 2019/2020
Prise en main de l’environnement Linux LFI1

4 MANIPULATION DES ARBORESCENCES


N.B : Pour la suite des exercices créer dans le répertoire etudiant un répertoire qui porte le
numéro de votre groupe de TP (par exemple groupe01 pour le groupe TP1). Ce répertoire
sera considéré comme votre répertoire personnel.

Exercice 4.1 (Création d’une arborescence et gestion des fichiers)

1. À partir de votre répertoire Système reproduisez l’arborescence suivante, en sachant que


les répertoires commencent par des majuscules et les fichiers par des minuscules :
Un moyen simple de contrôler que vous n’avez rien oublié est de taper ls –R depuis
votre répertoire personnel.

2. Créez une copie de presentation.txt appelée .plan (le point est voulu) dans votre
répertoire Tp1.

3. Supprimez ensuite le fichier presentation.txt à l’aide de la commande rm.

4. Affichez le contenu de votre répertoire personnel avec ls.

a) Que constatez-vous ?
b) Réessayez avec ls –a. Concluez. Quelle est la nature du fichier .plan créé ?

5. Copiez le répertoire Tp dans le répertoire Perso avec le nom Cours.

6. À partir de votre répertoire maison, tentez de détruire le répertoire Test puis le répertoire
Cours à l’aide de rmdir. Que se passe-t-il ? Remédiez au problème en utilisant la
commande rm et la bonne option (pensez à utiliser la commande man pour voir les
différentes options possibles pour rm).

7. Expérimentez la commande mv en déplaçant des fichiers dans votre arborescence.


Essayez également de déplacer un répertoire. Que doit-on faire pour que cela
fonctionne?

-6-
Travaux Pratiques N°1 : 2019/2020
Prise en main de l’environnement Linux LFI1

Exercice 4.2 (Création d’une arborescence et gestion des fichiers)


On se propose de créer, dans votre répertoire personnel, l'arborescence de fichiers suivante.

Pour chacune des étapes suivantes donner la commande correspondante.


1. Accéder à votre répertoire personnel.

(a) Créer un répertoire TP3.


(b) Sans changer de répertoire, créer un répertoire rep1 dans le répertoire TP3.
(c) Sans changer de répertoire, afficher le contenu du répertoire TP3.

2. Passer dans le répertoire rep1.

(a) Vérifier que vous êtes dans rep1.


(b) Afficher tous le contenu du répertoire rep1.
(c) Créer un fichier vide f3.
(d) Créer le répertoire rep4.
(e) Vérifier le contenu du répertoire rep1.

3. Sans changer de répertoire :

(a) Créer dans rep4 un fichier vide nommé f4.


(b) Faite une copie de f4 nommée f5 dans rep4.
(c) Vérifier le contenu de rep4.

4. Passer dans le répertoire rep4.

(a) Créer les répertoires rep2 et rep3.


(b) Depuis rep4, créer le fichier vide f1 dans rep2.
(c) Faite une copie de f1 nommée f2 dans rep2.
(d) Vérifier le contenu du répertoire rep2 depuis rep4.
-7-
Travaux Pratiques N°1 : 2019/2020
Prise en main de l’environnement Linux LFI1

5. Revenir directement dans le répertoire TP3.

(a) Faite une copie de f1 (dans rep2) nommée f6 dans TP3.


(b) Vérifier le contenu du répertoire TP3.
(c) Depuis TP3, déplacer f6 dans rep4 sans changer son nom.
(d) Depuis TP3, déplacer f4 dans le répertoire TP3 en le renommant f8.
(e) Renommer f8 en f9.
Exercice 4.3 :

Donner la suite de commandes pour créer, dans votre répertoire personnel, l'arborescence
suivante :

1. Nous supposons que le répertoire courant est java :

(a) Dans le répertoire java, créer un fichier vide appelé programme1.java


(b) Sans changer de répertoire créer un fichier vide dans le répertoire sources appelé
programme1.c
(c) Sans changer de répertoire créer un fichier vide dans le répertoire Linux appelé
Introduction.
(d) Sans changer de répertoire copier le fichier programme1.c dans le répertoire Linux.
(e) Sans changer de répertoire déplacer le fichier Introduction dans le répertoire coursSE.
(f) Sans changer de répertoire renommer le fichier programme1.java par
programme2.java.
(g) Supprimer le répertoire bin.
(h) Donner la commande pour afficher le contenu du répertoire courant.

2. Dessiner la nouvelle arborescence du répertoire user1.

-8-

Vous aimerez peut-être aussi