Vous êtes sur la page 1sur 12

novembre 2008 Module Systmes dexploitation

COMMANDES LINUX DE BASE

OBJECTIFS : 1 2 3 Devenir un utilisateur autonome des systmes UNIX et LINUX. Etre parfaitement l'aise avec les commandes lies la gestion des fichiers et des processus. Savoir utiliser l'interprteur de commandes shell et son environnement.. Manipulation des fichiers et rpertoires Droits daccs aux fichiers et rpertoires Redirection avec la commande cat

ACCES AU SYSTEME Comment se connecter sous UNIX ? Le premier concept important garder en mmoire avant de travailler avec UNIX ou sa version PC Linux est qu'il s'agit d'un systme multi-utilisateurs. L'accs la machine UNIX doit donc tre contrl. Pour tre enregistr sous UNIX, il faut avoir un compte utilisateur (login, password) cr par l'administrateur systme. Ladministrateur est un super utilisateur qui a les droits de gestion du systme (login root ou su). Si vous tes dans un environnement non graphique, le premier message lors d'une connexion sous UNIX est : login : (Taper votre nom d'utilisateur) Le systme affiche alors le message : password : (Vous devez alors rentrer votre mot de passe) Dans le cas dun environnement graphique, vous avez des fentres qui demandent ces informations. Les caractristiques de chaque utilisateur sont enregistres dans un fichier /etc/passwd qui est gr par l'administrateur systme, mais que vous pouvez consulter. Dans ce fichier, vous trouverez pour chaque utilisateur, son loginname, son password (sous forme code videmment), son numro
1

d'utilisateur, numro de groupe, son nom et son prnom, le groupe auquel il appartient, le shell ou programme lancer. Le password est votre protection contre les intrusions. C'est la seule faon de protger vos donnes. Trouver un bon mot de passe : Voici quelques conseils qui vous permettront de trouver un mot de passe le plus sr possible. utiliser des majuscules et des minuscules utiliser des chiffres et des caractres spciaux 7 8 caractres de long concatner des mots pour en crer un autre Ce qu'il ne faut pas faire : utiliser un mot de passe que l'on peut trouver dans un dictionnaire utiliser un nom de famille (surtout si la famille est clbre et qu'on peut trouver le nom dans un dictionnaire), un nom de lieu, le prnom de votre petit(e) ami(e) !! si vous en avez un(e) utiliser un mot trop court Changer de mot de passe : Pour changer son mot de passe, il faut utiliser la commande passwd. Le programme demande alors l'ancien mot de passe puis deux fois le nouveau. Si le droulement est normal, le nouveau mot de passe sera utilis pour une prochaine session. Connectez vous maintenant, puis lisez les deux premires parties avant dattaquer les exercices. A PROPOS DU SYSTEME DE FICHIERS Organisation du systme Sous Unix, tout est fichier . Cela signifie quun disque, une mmoire, un lecteur de disquette, un lecteur de bande, la sortie dun processus sont tous vus par le systme comme des fichiers. Il est donc fondamental que ces fichiers soient ordonns. Le systme de fichiers sous Unix est organis de manire arborescente (il sappelle ext2), comme le montre la figure suivante :

Parmi les nombreux fichiers qui apparaissent ici sous la racine qui se nomme / , on remarque la prsence de : /bin : ce rpertoire contient les commandes de base /usr/bin contient la suite de commandes /tmp contient les fichiers temporaires /etc contient les fichiers de configuration du systme /sbin et /usr/sbin contiennent les commandes dadministration du systme /dev contient tous les fichiers spciaux permettant laccs aux priphriques /home contient les rpertoires des utilisateurs

Les fichiers Les fichiers sous Unix peuvent avoir un nom compos de 255 caractres. Le systme tant MultiUtilisateurs, il est fondamental didentifier le propritaire du fichier. De plus les utilisateurs pouvant tre diviss en groupes, le fichier possdera une information concernant ce groupe dutilisateurs. Afin quun de vos copains ne puisse pas lire ou effacer vos fichiers, des droits sont appliqus aux fichiers. Si on examine le contenu du rpertoire racine par exemple, en utilisant la commande ls avec certaines options, on obtient le rsultat suivant : drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxrwsr-x drwxr-xr-x drwxr-xr-x drwx------rw-r--r-drwxr-xr-x drwxr-xr-x dr-xr-xr-x drwxr-xr-x drwxr-xr-x drwxrwxrwt drwxr-xr-x drwxr-xr-x 2 3 2 10 109 2 14 2 6 2 5 3 25 2 29 16 18 root root root root root root root root root root 1 root root 145 root root root root root root root root root root root staff root root root root root root root root root root root root 2048 Jul 22 2006 bin 1024 Sep 23 12:03 boot 1024 Jul 22 2006 cdrom 24576 Oct 16 10:43 dev 5120 Oct 16 11:21 etc 1024 Jul 22 2006 floppy 4096 Sep 2 17:11 home 1024 Jul 22 2006 initrd 4096 Sep 18 13:31 lib 12288 Jul 22 2001 lost+found root 0 Sep 25 11:37 ls 1024 Jul 29 12:54 mnt 1024 Jul 24 17:07 opt root 0 Oct 13 18:25 proc 2048 Oct 16 15:01 root 3072 Sep 25 13:49 sbin 3072 Oct 16 17:10 tmp 4096 Sep 18 19:34 usr 4096 Jul 22 2006 var

La dernire colonne donne le nom du fichier. La premire donne le type du fichier ainsi que ses attributs pour le propritaire le groupe et les autres. La troisime donne le propritaire du fichier. La quatrime colonne donne le groupe dappartenance. Les suivantes donnent la taille du fichier et sa date.
3

On distingue 4 types de fichiers :

Les fichiers ordinaires, qui ont pour premier attribut un tiret. Ces fichiers peuvent tre de type texte ou binaires. Les attributs donnent ou non un accs en lecture (r), en criture (w) ou en excution (x). Les rpertoires (dossiers) sont identifis par un attribut d (directory). Ces fichiers possdent aussi des droits en lecture et criture. Dans le cas de rpertoires , le caractre x donne un droit de passage. Une commande cd (change directory) sera alors possible. Les fichiers lien : Les fichiers lien permettent de rfrencer un fichier ordinaire ou un rpertoire en utilisant un nom diffrent. Les fichiers spciaux : Les fichiers spciaux permettent daccder aux priphriques du systme : disques, disquettes, lecteur de bandes, cartes rseaux Seul ladministrateur (su, root) peut crer ou effacer de tels fichiers, les autres utilisateurs peuvent ventuellement lire ces fichiers.

PREMIERE PARTIE : MANIPULATION DES FICHIERS ET REPERTOIRES 1. Dplacements dans une arborescence de rpertoires et listage du contenu

Indication du rpertoire courant : pwd Aller dans Quel est votre rpertoire courant ? Placezson rpertoire principal : cd Affichage court : ls vous dans votre rpertoire principal (si ce 1 Affichage long : ls -al (y compris n'est pas dj le cas) Affichez le contenu de fichiers/dossiers "invisibles", c--d. dont le nom votre rpertoire principal commence par ".") 2 Examinez le contenu du premier niveau de l'arborescence Unix Commande : ls / ou : cd / puis ls man ls

Utilisation de l'aide en ligne : consultez le 3 manuel en ligne pour voir les diffrentes options de la commande ls

2. Cration et manipulation de rpertoires

Replacez-vous dans votre rpertoire principal cd 1 et crez un sous-rpertoire d'exercice de nom puis : mkdir ex_unix ex_unix 2 Descendez dans ce rpertoire et crez-y deux cd ex_unix puis : mkdir dir1 dir2 sous-rpertoires dir1 et dir2

depuis ex_unix : mv ../toto dir2 Dplacez dans le rpertoire dir2 le fichier ou, depuis rpertoire principal : mv toto 3 toto cr prcdemment Vrifiez qu'il se ex_unix/dir2 ou, depuis rpertoire dir2 : mv ../../toto . trouve au bon endroit ls ~/ex_unix/dir2 Dtruisez le rpertoire dir2. Opration qui se fait en deux tapes ( moins d'utiliser la cd ~/ex_unix/dir2 4 commande rm -r) : destruction des fichiers puis : rm * cd .. se trouvant dans le rpertoire destruction du puis : rmdir dir2 rpertoire proprement dit

3. Manipulation et visualisation de fichiers Gnration de divers fichiers d'exercice : placez-vous dans votre sous-rpertoire ex_unix crez 4 fichiers-texte par 1 redirection sur fichiers de l'aide en-ligne relative aux commandes ls, cd, mkdir et rmdir

cd ~/ex_unix man ls > 1.txt man cd > 2.txt man mkdir > 3.txt man rmdir > 4.txt ls

cat 1.txt more 1.txt puis utiliser <cr> pour avancer d'une ligne, <espace> Exprimentez les diffrentes commandes de pour avancer d'une page, <q> pour sortir head -5 2 visualisation de fichiers-texte que sont : *.txt (affiche les 5 premires lignes de tous les cat, more, head et tail fichiers de nom *.txt) tail -5 1.txt (affiche les 5 dernires lignes...) Concatnez tous vos fichiers texte sur un seul cat 1.txt 2.txt 3.txt 4.txt > 3 fichier de nom visu.txt Vrifiez le visu.txt more visu.txt rsultat en affichant le fichier ainsi cr Dplacez dans le sous-rpertoire dir1 tous mv ?.txt dir1 ls (il ne reste plus que visu.txt 4 les fichiers crs l'exception du fichier dans ex_unix) ls dir1 (les fichiers 1.txr, 2.txt, visu.txt et contrlez 3.txt, 4.txt sont bien dans dir1) Dans le rpertoire dir1, recherchez quels cd dir1 sont les fichiers qui contiennent la chane de puis : grep 'rmdir' *.txt 5 caractre rmdir Affichez la place-disque occupe par vos 6 fichiers en utilisant les commandes ls et du ls -l (affichage de la taille en Bytes) du -ak (affichage de la taille en KB)

cp visu.txt vis2.txt compress Faites une copie du fichier visu.txt sous vis2.txt le nom vis2.txt Compressez le fichier puis : ls -l vis* (comparez la place occupe 7 vis2.txt et voyez quel est le gain de par visu.txt , respectivement vis2.txt.Z) place Dcompressez le fichier vis2.txt et uncompress vis2.txt.Z vrifiez qu'il est bien identique visu.txt puis : diff visu.txt vis2.txt

Exercice 1
1.

Crez un fichier premiertexte contenant une ou deux phrases en utilisant lditeur de texte vi.
6

2. 3.

Visualisez le contenu de premiertexte sans l'diter. Quelle est la taille du fichier premiertexte ?

Exercice 2
Faites une copie de premiertexte appele double. 2. Comparez leurs tailles. 3. Renommez double en introduction. 4. Quelle diffrence y a-t-il entre mv double introduction et cp double introduction
1.

Exercice 3
Crez un rpertoire essai/. Dplacez introduction dans essai/. Faites une copie de premiertexte appele copie, et placez-la galement dans essai/. 4. Affichez une liste de ce que contient essai/.
1. 2. 3.

Exercice 4
Essayez de dtruire essai/. Que se passe-t-il ? Que faut-il faire pour dtruire un rpertoire ? 2. Dtruisez tout ce que contient essai/. 3. Dtruisez essai/.
1.

Exercice 5 - Questions de cours


Ces exercices sont des questions de cours : les solutions se trouvent toutes dans les pages de man des commandes en question.. Testez les commandes sur des fichiers et rpertoires d'essai pour vous faire la main et comprendre ce qui se passe.. Utilisation de la commande ls
1. 2.

3.
4. 5.

6.

A quoi sert l'option -R de ls ? Dans quel ordre les fichiers et rpertoires sont-ils classs par dfaut? Quelles sont les options qui peuvent servir modifier ce critre de classement ? Indice : trier se dit to sort en anglais. Affichez le contenu de votre rpertoire courant de telle sorte que les fichiers modifis rcemment apparaissent en premier. Quels sont les droits de votre rpertoire Mail ? Qu'est-ce que cela signifie ? Dcrivez le rsultat de la commande ls -l. Comment afficher les droits d'un rpertoire donn ?
7

Votre ls vous affiche le contenu de votre rpertoire avec des signes distinctifs qui permettent d'identifier plus vite le type de fichiers (slash / pour les rpertoires, arobase @ pour les liens, etc). Quelle est l'option qui ajoute ces caratres ? 8. Un rpertoire a les droits suivants : drwx--x--x Je ne suis pas propritaire; puis-je afficher le contenu du rpertoire ?
7.

Exercices 6 Manipulation sur les rpertoires


Commandes mkdir et rmdir 1. Crez trois rpertoires en une seule ligne de commande. 2. Effacez ces trois rpertoires en une seule ligne de commande. 3. Que se passe-t-il si vous tapez mkdir mkdir 4. Vous voulez dtruire un rpertoire bla/, dont ls vous dit qu'il est vide. Cependant, quand vous tapez rmdir bla, la machine vous rpond : rmdir: bla: Directory not empty Que faut-il faire ? 5. Est-ce que mkdir peut prendre des options ? 6. A quelle condition est-ce que la ligne de commande mkdir Rapport/annexes peut fonctionner et crer effectivement ce sous-rpertoire ? 7. Y a-t-il une option de mkdir qui permette de crer la fois un rpertoire et un sousrpertoire de ce rpertoire ? 8. Comment crer un rpertoire en spcifiant des droits ? 9. Quel est l'effet de la commande suivante : rmdir -p toto/tata/tutu/ 10. Vous voulez crer la fois un rpertoire toto/ et un sous rpertoire tutu/ dans toto/. Quelle option faut-il utiliser pour que : 1. Si toto/ n'existe pas, le rpertoire et son sous-rpertoire soient crs; 2. Si toto/ existe dj, le sous-rpertoire tutu/ soit cr, sans message d'erreur.

Exercices 7 Utilisation de cp et mv
Commande cp 1. Est-il possible de faire une copie d'un rpertoire et de l'ensemble de ses sous-rpertoires en une seule ligne de commande, sans d'abord faire une copie de chacun des fichiers l'un aprs l'autre ? 2. Que se passe-t-il si l'on veut faire une copie appele tentative/ de son rpertoire essai/, et que le rpertoire tentative/ existe dj ? 3. Que se passe-t-il si vous voulez faire une copie d'un fichier dans un rpertoire o il existe dj un fichier de ce nom ? 4. Est-il possible de taper une ligne du genre de : cp fichier1 fichier2 fichier3 repertoire/ Quel est l'effet de cette ligne ?
8

Commande mv
1. 2.

3. 4.
5.

La syntaxe de mv est mv fichier1 fichier2; fichier1 est renomm en fichier2. Mais que se passe-t-il si fichier2 existe dj ? Comment renommer un rpertoire bla en blo ? Que se passe-t-il si le rpertoire blo existe dj ? Comment faire pour la fois dplacer un fichier et changer son nom ? Que se passe-t-il si il existe dj un fichier de ce nom dans le rpertoire d'arrive ? Mmes questions avec un rpertoire. Que se passe-t-il si on lance mv avec les options -i et -f ensemble ?

Exercices 8 Expansion des noms de fichiers


Les mta caractres Les mta caractres sont des caractres qui possdent une signification particulire pour le shell et qui simplifient parfois pas mal la vie.

1. Crer le rpertoire Year dans votre rpertoire courant, en une commande dplacez les fichiers prcdemment crs dans le rpertoire Year. 2. Lister tous les fichiers se terminant par 5 commenant par annee4
9

commenant par annee4 et de 7 lettres maximum commenant par annee avec aucun chiffre numrique contenant la chane ana commenant par a ou A

3. Copier les fichiers dont l'avant dernier caractre est un 4 ou 1 dans le rpertoire /tmp en une seule commande.

Exercices 9 Commande find


La commande find peut tre utilise pour trouver un fichier suivant certains critres. Elle permet de retrouver un fichier par son nom, sa taille, sa date, son type La syntaxe de la commande est la suivante : find rpertoire_de_dpart caractristique_recherche Exemple :
1.

Placer vous sous /home et taper find . name FIC. ou find . newer ~/fic

2. 3. 4. 5.

Comment chercher tous les fichiers dont les noms commenant par un a majuscule ou une minuscule, suivi d'ventuellement quelques lettres ou chiffres, et se terminent par un chiffre entre 3 et 6 ? Comment fait-on pour indiquer que le fichier recherch a t modifi il y a plus de 30 jours ? Il y a 30 jours ? Il y a moins de 30 jours? Comment faire pour dire que le fichier a t modifi plus rcemment qu'un autre fichier donn ? Comment fait-on pour spcifier que le fichier recherch est un rpertoire ? Comment indiquer que le fichier recherch a une taille suprieure une taille donne ?

Exercices 10 - Commandes head et tail


Affichez les 10 premires lignes du fichier /etc/hosts, les 15 dernires lignes, toutes les lignes partir de la quinzime, les lignes 15 20. 2. Rcuprer les lignes 5 9 d'un fichier de 12 lignes. 3. Comment afficher la cinquime ligne d'un fichier ?
1.

DEUXIEME PARTIE : DROITS DACCES AUX FICHIERS ET REPERTOIRES Exercices 11 Cration des droits
10

1. Dans votre rpertoire courant, crez un rpertoire courant essai_droit, par dfaut ce rpertoire est 755 (rwxr-xr-x), quelles sont les commandes (en notation symbolique et en base 8) pour lui donner les droits suivant (on suppose qu'aprs chaque commande on remet le rpertoire 755:

propritaire droit en droit en lecture criture comma Oui nde 1 comma Oui nde 2 comma Non nde 3 comma Non nde 4 oui non oui non

Groupe droit droit en droit en d'accs lecture criture oui oui non oui Oui Non Non Oui non oui non non

les autres droit droit en droit en d'accs lecture criture oui non oui oui non non oui non non non non non

droit d'accs oui oui non non

2. Crez un fichier droit dans le rpertoire essai_droit, par dfaut ce fichier est 644 (rw-r-r--).En partant du rpertoire courant, pour chaque commande de l'exercice prcdent, essayez d'accder au rpertoire essai_droit (commande cd), de faire un ls dans essai_droit et de modifier le fichier avec un diteur quelconque (vi par exemple). 3. Tapez la commande umask, de manire ce que les fichiers lors de leur cration aient par dfaut les droits 640 (rw-r-----), et les rpertoires 750 (rwxr-x---).

Exercices 12 Modifications droits des fichiers et rpertoires


1. 2.

Changez les droits d'un fichier fic1 pour que tous ceux de votre groupe puissent crire dedans. Donnez en une seule ligne le droit d'excution tous les utilisateurs d'un fichier script qui n'a jusqu'alors que des droits standards (-rw-r--r--).
11

3. 4. 5. 6. 7.

Le fichier toto a les droits suivants : -rwxr--r--. Modifiez-en les droits en une ligne de commande de sorte que le propritaire n'ait plus que le droit de lecture. Modifier les droits du fichier toto (-rwxr--r--) de sorte que le groupe et les autres utilisateurs aient les mmes droits que le propritaire. Quelle option permet de modifier rcursivement les droits d'un rpertoire et des fichiers qu'il contient ? Quelle option de mkdir permet de crer un rpertoire en spcifiant les droits sur ce rpertoire ? Affichez et interprtez les droits de /usr/sbin/mount.

TROISIEME PARTIE : REDIRECTIONS AVEC LA COMMANDE CAT


LA COMMANDE cat : le retour La commande cat s'utilise le plus souvent avec des redirections. 1. Comment visualiser deux fichiers l'un aprs 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 rsultat dans un fichier notes. 4. Quelle diffrence y a-t-il entre cat bla blo > blu et 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 dsormais numrotes ?

12