Vous êtes sur la page 1sur 25

Introduction au systme dexploitation Linux

Copyleft c GUINKO Tonguim Ferdinand - IBAM - Universit de Ouagadougou

17 novembre 2009

Table des matires


1 Introduction au systme dexploitation Linux 1.1 Le systme dexploitation UNIX . . . . . . . . . . . . . . . . . . . . . 1.1.1 1.1.2 1.1.3 1.1.4 1.2 1.2.1 1.2.2 Historique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Caratristiques du noyau UNIX . . . . . . . . . . . . . . . . . Evolution du systme dexploitation UNIX . . . . . . . . . . . Pour aller plus loin . . . . . . . . . . . . . . . . . . . . . . . . Gnralits . . . . . . . . . . . . . . . . . . . . . . . . . . . . Historique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.2.1 1.2.2.2 1.2.3 1.2.4 1.2.5 Mode de numrotation . . . . . . . . . . . . . . . . . Principes et idologie . . . . . . . . . . . . . . . . . 4 4 4 5 6 8 8 8 9 9 10 10 10 10 10 10 11 12 13 14 14 14 14 14 14

Le systme dexploitation LINUX . . . . . . . . . . . . . . . . . . . .

Caratristiques du noyau LINUX . . . . . . . . . . . . . . . . Evolution du systme dexploitation LINUX . . . . . . . . . . Le systme de chiers . . . . . . . . . . . . . . . . . . . . . . 1.2.5.1 1.2.5.2 1.2.5.3 1.2.5.4 1.2.5.5 1.2.5.6 1.2.5.7 1.2.5.8 1.2.5.9 Dnition . . . . . . . . . . . . . . . . . . . . . . . . Les types de systmes de chiers . . . . . . . . . . . Les systmes de chiers tendus (Ext, Ext2, Ext3) de LINUX . . . . . . . . . . . . . . . . . . . . . . . . . Les types de supports . . . . . . . . . . . . . . . . . Le numro dinode . . . . . . . . . . . . . . . . . . . Les types de chiers . . . . . . . . . . . . . . . . . . Les droits daccs . . . . . . . . . . . . . . . . . . . Les rgles de nomage des chiers . . . . . . . . . . . Les caractres spciaux . . . . . . . . . . . . . . . .

1.2.5.10 Les jokers . . . . . . . . . . . . . . . . . . . . . . . . 1.2.5.11 Le montage dun systme de chier . . . . . . . . . .

1.2.5.12 Le chier de conguration "/etc/fstab" . . . . . . . 1.2.5.13 Larborescence de LINUX . . . . . . . . . . . . . . . 1.2.5.14 Les chiers spciaux du rpertoire "/proc" . . . . . 1.2.5.15 Les URL . . . . . . . . . . . . . . . . . . . . . . . . 1.2.5.16 / . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.5.17 /boot . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.5.18 /bin . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.5.19 /dev . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.5.20 /etc . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.5.21 /home . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.5.22 /lib . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.5.23 /opt . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.5.24 /proc . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.5.25 /root . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.5.26 /sbin . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.5.27 /tmp . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.5.28 /var . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.5.29 /usr . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.6 Les variables denvironnement par dfaut . . . . . . . . . . . 1.2.6.1 1.2.6.2 1.2.6.3 1.2.6.4 1.2.6.5 1.2.6.6 1.2.6.7 1.2.6.8 1.2.7 1.2.7.1 1.2.7.2 1.2.7.3 1.2.7.4 1.2.7.5 1.2.7.6 PWD . . . . . . . . . . . . . . . . . . . . . . . . . . HOSTNAME . . . . . . . . . . . . . . . . . . . . . . USER et LOGNAME . . . . . . . . . . . . . . . . . DISPLAY . . . . . . . . . . . . . . . . . . . . . . . . SHELL . . . . . . . . . . . . . . . . . . . . . . . . . HOME . . . . . . . . . . . . . . . . . . . . . . . . . TERM . . . . . . . . . . . . . . . . . . . . . . . . . PATH . . . . . . . . . . . . . . . . . . . . . . . . . . CD : se dplacer dans larborescence de rpertoires . PWD : dans quel rpertoire suis-je actuellement ? . . LS : lister les chiers dun rpertoire . . . . . . . . . MORE, CAT : voir un chier . . . . . . . . . . . . . CP : copier un chier . . . . . . . . . . . . . . . . . RM : supprimer un chier . . . . . . . . . . . . . . .

14 14 14 14 14 14 14 14 14 15 15 15 15 15 15 15 16 16 16 17 17 17 18 18 18 18 18 20 20 20 21 21 21 21

Les commandes de base . . . . . . . . . . . . . . . . . . . . .

1.2.7.7 1.2.7.8 1.2.7.9 1.2.8 1.2.9

MKDIR : crer un rpertoire . . . . . . . . . . . . . MV : dplacer ou renommer un chier . . . . . . . . FIND : retrouver un chier . . . . . . . . . . . . . .

21 21 21 21 21 21 21 21 22 22 22 22

1.2.7.10 TOP, PS : la gestion des processus . . . . . . . . . . tat des processus . . . . . . . . . . . . . . . . . . . . . . . . Systme dexploitation . . . . . . . . . . . . . . . . . . . . . .

1.2.10 Processeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.11 Mmoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.12 Liste matrielle . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.13 Liste des priphriques USB . . . . . . . . . . . . . . . . . . . 1.2.13.1 Noyau . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.13.3 Acher un calendrier du mois en cours . . . . . . .

1.2.13.2 MAN : acher la page dinformation dune commande 22

Chapitre 1

Introduction au systme dexploitation Linux


1.1
1.1.1

Le systme dexploitation UNIX


Historique

En 1965 le Massachusetts Institute of Technology 1 (MIT), et ses partenaires que sont lAmerican Telephone and Telegraph Company 2 (AT&T) ( lpoque, la compagnie nationale de tlcommunications amricaine, dont lunit en charge de la recherche et du dveloppement tait le Bell laboratories ) et General Electric, se lance dans le projet MULTICS (pour MULTiplexed Information and Computing Service ou service multiplex dinformation et de calcul) 3 , dont lobjectif est de crer le premier systme dexploitation multi-tches et multi-utilisateurs. Les chefs de projets taient Ken THOMPSON 4 et Dennis RITCHIE5 de AT&T. Une premire version crite en PL/1 est propose en 1970, avec deux originalits : un systme de gestion de chiers arborescent et un shell conu comme processus utilisateur. Sur le principe de la multi-programmation, le systme dexploitation autorisait le chargement de plusieurs programmes en mmoire et grait le passage de lun lautre, mais cette fois-ci sans attendre le blocage dun programme, comme ce fut le cas avec les tous premiers systmes dexploitation. MULTICS devint ainsi le premier systme dexploitation multitche et multi-utilisateur, en temps partag, pouvant fonctionner sur tout ordinateur, et assurant une portabilit des applications. En eet, sur MULTICS, chaque programme tait excut pendant une dure de quelques millisecondes, puis le systme passait au suivant. Ce temps, trs court, donnait lillusion que les programmes sexcutaient simultanment - une illusion qui existe encore avec les systmes dexploitation contemporains. De
1 2

http://fr.wikipedia.org/wiki/Massachusetts_Institute_of_Technology/ http://fr.wikipedia.org/wiki/American_Telephone_&_Telegraph/ 3 http://fr.wikipedia.org/wiki/Multics/ 4 http://fr.wikipedia.org/wiki/Kenneth_Thompson 5 http://fr.wikipedia.org/wiki/Dennis_Ritchie/

plus, ces programmes pouvaient appartenir des utilisateurs distincts, chacun ayant limpression que la machine travaille uniquement pour lui. Mais il fut trs vite constat que le langage PL/16 ntait pas adapt aux objectifs assigns au projet. De plus le matriel pour faire fonctionner MULTICS etait hors de prix. Devant lchec du projet, AT&T se retire, lass davoir investi 7 millions de $ sans retour. Ken THOMPSON et Dennis RITCHIE continuent seuls et rcrivent MULTICS en langage Assembleur. Sur la machine hbergeant la premire version du systme dexploitation MULTICS, Ken THOMPSON cre le langage B 7 en 1971. En 1973, Dennis RITCHIE et Brian KERNIGHAN8 amliorent le langage B et crent le langage C 9 , en vue dune rcriture du systme dexploitation MULTICS, dans le but den produire une version simplie (mono-utilisateur). Brian KERNIGHAN appela avec humour la nouvelle version du systme dexploitation UNICS (Uniplexed - loppos de Multiplexed - Information and Computer Service), nom qui volua plus tard en UNIX. Lobjectif ociel assign au projet UNIX tait la ralisation dun systme de traitement de texte ddi au secrtariat. Rapidement, dautres applications (tlphonie, prise de commandes) sont apparues. Le systme UNIX stoe au fur et mesure, et devient un vrai systme dexploitation. UNIX revolutionne lunivers des systmes dexploitation et se rvle particuirement simple porter sur de nouvelles plateformes, ce qui favorise son succs.

1.1.2

Caratristiques du noyau UNIX

UNIX est un systme dexploitation : Multi-tche : chaque programme tait excut pendant une dure de quelques millisecondes, puis le systme passait au suivant. Ce temps, trs court, donnait lillusion que les programmes sexcutaient simultanment ; Multi-utilisateur : les programmes pouvaient appartenir des utilisateurs distincts ; plusieurs utilisateurs peuvent travailler en mme temps et chaque utilisateur peut eectuer plusieurs tches (processus) la fois ; ainsi, chacun a limpression que la machine travaille uniquement pour lui ; Il propose une gestion protge de la mmoire (MMU, pagination) : chaque programme excut par le systme dexploitation se voit attribuer une zone mmoire protge, dans laquelle aucun autre programme (processus) ne peut crire. Ce principe de protection mmoire est la caractristique la plus cruciale pour bncier dun systme dexploitation stable. Un processus est un programme sexcutant dans un environnement spcique (si 2 utilisateurs excutent le mme programme, il y aura bien 2 processus distincts). Avec la protection mmoire, une erreur intervenant dans un processus ne peut pas en perturber un autre. Cependant, les processus peuvent bien entendu communiquer (envoi de messages, synchronisation,
6 7

http://fr.wikipedia.org/wiki/PL/I http://fr.wikipedia.org/wiki/B_(langage) 8 http://fr.wikipedia.org/wiki/Brian_Kernighan 9 http://fr.wikipedia.org/wiki/Langage_C)

partage de ressources). UNIX propose : un systme de chier arborescent : maintient une arborescence unique des chiers. La localisation des chiers sur plusieurs supports (par exemple plusieurs disques) est transparente pour lutilisateur. Cette arborescence na aucune limite en profondeur. des Entres/sorties compatibles chiers, priphriques et processus : les priphriques sont utiliss et vus comme des chiers. Ils sont rfrencs dans le systme de chier et manipuls comme des chiers classiques (lecture ou criture dinformation). Un programme crit pour envoyer des informations dans un chier pourra donc le faire sur un priphrique (par exemple une imprimante), et rciproquement. Les canaux de communication entre processus (pipe) sutilisent avec les mmes primitives. Rduction du noyau systme (ne gre que lindispensable) : le noyau (la licence Unix comprend le noyau plus de nombreux utilitaires) ne gre que le minimum : les processus les ressources (mmoire, priphriques, ...) les chiers Tout autre traitement doit tre pris en charge par un ou plusieurs processus utilisateurs. Cest par exemple le cas pour linterprteur de commande (shell) ou le systme graphique (X11, en gnral). On dispose ainsi de plusieurs programmes (les shells : sh, csh, etc.) et on peut en crire dautres. On peut donc choisir son environnement de travail. Interfaces au noyau (pilotes de priphriques et appels systmes) : linterface entre le noyau et les priphriques est assure par lensemble des gestionnaires de priphrique (device drivers). Linterface entre le noyau et les programmes utilisateurs est assure par lensemble des appels systmes (system calls).

1.1.3

Evolution du systme dexploitation UNIX

En 1974 parat le premier article dcrivant Unix. Le gouvernement fdral amrician interdit aux AT&T de commercialiser le systme. AT&T distribue alors son nouveau systme dexploitation sous forme de code source. Les premiers clients dUNIX peuvent tre rpartis en deux groupes : les universits (Berkeley University of California 10 , Colombia University 11 , etc.) et centres de recherches amricains dune part, et les grands constructeurs de matriel informatiques (Sun Microsystems, IBM, DEC, Hewlett-Packard etc.) dautre part. Pour les universits et centres de recherche, UNIX se rvle tre un systme peu onreux (AT&T le leur vendait un prix symbolique) et puissant. LUniversit de Californie Berkeley (UCB) se montre particulirement intresse par ce systme dexploitation remarquable et entreprend dy ajouter des modications. En eet, ds la n de lanne 1977, des chercheurs de lUniversit de Californie apportrent de nombreuses amliorations au systme UNIX fourni par AT&T et
10 11

http://en.wikipedia.org/wiki/University_of_California_Berkeley http://en.wikipedia.org/wiki/Columbia_University

[ht !] width=15cm]images/historiqueDunix1.png Fig. 1.1 Chronologie et lliation des dirents UNIX et apparents (http://fr. wikipedia.org/) le distriburent sous le nom de Berkeley Software Distribution (BSD 12 ). Les dirents clients de AT&T tant libre de dvelopper des nouveauts, trs vite apparaissent des familles direntes dUNIX. A la n des annes 1970, trois branches de dveloppement des sources virent le jour : La branche de recherche de AT&T qui dveloppa, toujours aux laboratoires Bell, jusquen 1990, les 8e, 9e et 10e ditions du systme UNIX. La branche commerciale de AT&T qui dveloppa System III, puis quatre ditions de System V (System V, SVR2, SVR3, SVR4) ; Berkeley Software Distribution dvelopp par lUniversit de Californie, jusquen 1994. Ces branches se sont mutuellement empruntes du code et/ou des concepts. Ainsi : La 8e dition est issue de la version 4.1 BSD ; La version SVR3 a emprunt le concept des STREAMS la 8e dition ; La version SVR4 a intgr beaucoup de code de la version 4.3 BSD ; La version 4.4 BSD comporte une trs petite quantit de code de la version SVR4. En 1979 avec sa version 7 UNIX commence se vendre. Les direntes distributions dUnix peuvent alors se regrouper en familles : Les UNIX-based construits partir des sources ; Les UNIX-like (ou unixodes) entirement rcrits, ne devant aucune royalties AT&T et autres ; LUNIX de Berkeley ; Et enn lUNIX original de AT&T. Lincompatibilit grandissante entre les nombreuses variantes dUNIX proposes par les dirents diteurs pour les direntes machines a ni par porter atteinte la popularit dUNIX. De nos jours, les systmes UNIX propritaires, longtemps majoritaires dans lindustrie et lducation, sont de moins en moins utiliss. En revanche, trois systmes de type UNIX bass sur BSD (FreeBSD (13 ), NetBSD (14 ) et OpenBSD (15 )) dune part, et le systme GNU/Linux, compatible UNIX, dautre part, ainsi que Mac OS X (bas sur Darwin 16 ), occupent une part de march de plus en plus importante. En 1985, suite linterdiction faite par AT&T dutiliser UNIX des ns pdagogiques, le professeur Andrew Stuart TANENBAUM 17 dcide de developper,
BSD fut par exemple le premier systme UNIX exploiter pleinement le mcanisme de mmoire virtuelle pagine du VAX 11/780 13 http://www.freebsd.org/ 14 http://www.netbsd.org/ 15 http://www.openbsd.org/ 16 http://developer.apple.com/darwin 17 http ://fr.wikipedia.org/wiki/AndrewT anenbaum
12

[ht !] width=16cm]images/historiqueDunix2.png Fig. 1.2 Historique des principaux systmes de type UNIX (http://fr. wikipedia.org/) pour ses enseignements, le systme dexploitation MINIX 18 . MINIX est un clone libre dUNIX, dont le noyau est bas sur une architecture de type micro-noyaux et sinscrit dans la famille des UNIX-like. MINIX eut un certain succs dans le milieu des tudiants en informatique, car il tait lger (une partition de 20 Mo sut pour linstaller, ainsi que 512 Ko 2 Mo de mmoire vive), facile lire et comprendre. En eet, Andrew TANENBAUM a prfr privilgier la simplicit par rapport la performance, et t volontairement rduit an quil puisse tre compris entirement par ses tudiants en un semestre. Mais certains utilisateurs de MINIX, qui lapprciaient pour ses vertus pdagogiques, dploraient ces limitations techniques astreintes par son auteur Andrew Stuart TANENBAUM. Au nombre de ceux-ci, gurait Linus Benedict TORVALDS (19 ), lpoque tudiant nlandais, dont les limitations techniques de MINIX lincitrent dvelopper un nouveau systme dexploitation, partir de MINIX, en 1991, quil appela dabord Freax. Le projet trouve son nom dnitif grce Ari LEMMKE 20 , administrateur du serveur FTP 21 , qui hbergea le travail de Linus Benedict TORVALDS, dans un rpertoire nomm LINUX (22 ), pour le rendre public au tlchargement. LINUX est un accronyme form du prnom Linus et du nom UNIX (Linus UNIX, lUNIX de Linus). LINUX fut donc directement inspir de MINIX, mais nen contient aucune source.

1.1.4

Pour aller plus loin

Histoire dtaille dUNIX : http://cm.bell-labs.com/cm/cs/who/dmr/ Premire dtion du manuel dUNIX : http://cm.bell-labs.com/cm/cs/who/ dmr/1stEdman.html

1.2
1.2.1

Le systme dexploitation LINUX


Gnralits

Le systme dexploitation LINUX est ali aux systmes dexploitations unixodes ; mais au sens strict du terme unixodes, LINUX nest pas un systme dexploitation de type UNIX puisquil ne contient pas de ligne de code provenant des sources de ATT ou de quelque autre source propritaire. Le dveloppement de LINUX a t inspir de MINIX, qui lui mme est un clne dUNIX sans en contenir une seule
18 19 20

http://www.minix3.org/ http://fr.wikipedia.org/wiki/Linus_Torvalds

ftp://ftp.funet.fi/ http://fr.wikipedia.org/wiki/Linux/,http://fr.wikipedia.org/wiki/Distribution_ Linux/


22

21

ligne de code. La conception de LINUX par Linus Torvalds fut fortement inuence par la philosophie de conception de MINIX. LINUX est librement diusable selon les termes de la GNU 23 Public License 24 . LINUX, de faon stricte nest que le noyau, le cur du systme dexploitation GNU/Linux : GNU/LINUX comprend donc le noyau et les outils basiques fournis par le projet GNU. Nanmoins, GNU/LINUX a en commun avec UNIX une bonne partie de son fonctionnement et de son comportement.

1.2.2

Historique

Au dpart, Linus TORVALDS commence par dvelopper, titre ludique, en assembleur, un simple mulateur de terminal, quil utilise pour se connecter via modem au serveur informatique de son universit. Linus dsire alors surtout comprendre le fonctionnement de son ordinateur, un compatible PC bas sur un microprocesseur Intel 80386. Aprs lajout de diverses fonctionnalits dont un systme de chiers compatible avec celui de Minix, Linus rcrit son systme en langage C et oriente son projet vers quelque chose de plus ambitieux : un noyau aux normes POSIX 25 . Le 5 octobre 1991, Linus annona sur le forum Usenet la disponibilit dune bauche de son systme dexploitation ; il lance un appel contribution, et permet un libre accs au code source. Des milliers de bnvoles travers le monde sintressent au projet. Aujourdhui, les principaux contributeurs sont aujourdhui un ensemble dentreprises, souvent concurrentes, comme Fedora, Mandriva, Novell, IBM ou Intel. La licence du noyau Linux est la licence publique gnrale GNU dans sa version 2. Cette licence est libre, ce qui permet dutiliser, copier et modier le code source selon ses envies ou ses besoins. Ainsi, quiconque a les connaissances ncessaires peut participer aux tests et lvolution du noyau. 1.2.2.1 Mode de numrotation

Les numros de version du noyau sont composs de trois chires : le premier est le numro majeur, le second le numro mineur. Avant lapparition des versions 2.6.x, les numros mineurs pairs indiquaient une version stable et les numros mineurs impairs une version de dveloppement. Ainsi, les versions 2.2, 2.4 sont stables, les versions 2.3 et 2.5 sont des versions de dveloppement. Cependant, depuis la version 2.6 du noyau, ce modle de numrotation stable/dveloppement a t abandonn et il ny a donc plus de signication particulire aux numros mineurs pairs ou impairs. Le troisime chire indique une rvision, ce qui correspond des corrections de bogues, de scurit ou un ajout de fonctionnalit, par exemple 2.2.26, 2.4.30 ou 2.6.11.
23 24

Gnus Not Unix : Gnu Nest pas Unix http://www.gnu.org/home.fr.html/ 25 http://fr.wikipedia.org/wiki/POSIX

10

1.2.2.2

Principes et idologie

1.2.3 1.2.4 1.2.5


1.2.5.1

Caratristiques du noyau LINUX Evolution du systme dexploitation LINUX Le systme de chiers


Dnition

Le systme de chiers correspond au type de formatage qui va tre appliqu une partition. Un systme de chiers est une faon dorganiser et de stocker une arborescence sur un support (disque, cd ...). Chaque type de systme dexploitation a dvelopp sa propre organisation. Par exemple, le systme dexploitation MS Windows a utilis successivement les systmes de gestion de chiers FAT, FAT32 puis NTFS. Plusieurs systmes de chiers peuvent cohabiter les direntes partitions dun mme disque. Le systme de chiers de Linux est tout entier organis lintrieur dune seule arborescence. Le systme de chiers de Linux est gomtrie variables, il est compatible avec la plupart des systmes de chiers xistant dans le monde (et entre autre les systmes FAT, FAT 32 ou NTFS de Windows de Microsoft), il peut grer la plupart des support physiques, et il peut sagrandir tout moment (ladministrateur du systme peut crer un nouveau point de montage nimporte o dans larborescence). 1.2.5.2 Les types de systmes de chiers

Les systmes de chiers UNIX MINIX pour UNIX SYS V pour UNIX Systme V UFS pour UNIX BSD UMSDOS pour Unix sur une partition MSDOS EXT pour lancien LINUX native EXT2FS ou EFS pour LINUX native EXT3FS pour LINUX native 3 gnration avec la journalisation des chiers REISERFS Les systmes de chiers Microsoft MSDOS ou FAT pour la FAT 16 de DOS et de Windows 95 VFAT pour la FAT 32 de Windows 95/98 NTFS pour Windows NT JOLIET pour le CDROM nom long de Microsoft Les autres systmes de chiers HPFS pour OS/2 HFS pour MAC OS et APPLE MACINTOSH ISO 9660 pour les CDROM UNIX XIAFS

11

Les systmes de chiers rseaux CODA pour les rseaux Unix NFS pour Network File System des rseaux Linux SMB pour les rseaux Windows de Micorosoft NCP pour les rseaux Netware de Novell 1.2.5.3 Les systmes de chiers tendus (Ext, Ext2, Ext3) de LINUX

Le systme de chiers tendus ExtFS 26 , le second systme de chiers tendus Ext2FS 27 et le troisime systme de chiers tendus Ext3FS 28 furent conus et dvelopps pour LINUX par Rmy CARD, Laboratoire MASI-Institut Blaise Pascal, Theodore TSO, MIT, et Stephen TWEEDIE, University of Edinburgh. ExtFS Cest un ancien systme de chiers utilis dans les premiers systmes Linux. Ext2FS Le deuxime systme de chiers est probablement le systme de chiers le plus largement rpandu dans la communaut LINUX. Il fournit une smantique UNIX standard et des fonctionnalits avances. Qui plus est, grce aux optimisations incluses dans le code du noyau, il est robuste et ore dexcellentes performances. Puisque Ext2FS fut conu de manire volutive, il prvoit lajout de nouvelles capacits. Certaines personnes sont en train de dvelopper des extensions au systme actuel : listes de contrle daccs se conformant la smantique Posix, undelete, et compression de chier la vole. Ext2FS fut dabord dvelopp et intgr au noyau Linux et est maintenant activement port sur dautres systmes dexploitation. Un serveur Ext2FS tournant sur le systme GNU Hurd a t dvelopp. Des gens sont aussi en train de travailler sur un portage de Ext2FS pour le serveur LITES, tournant sur le micro-noyau Mach et sur le systme dexploitation VSTa. Dernier point, mais non des moindres, Ext2FS est une partie importante du systme dexploitation Masix, actuellement en cours de dveloppement par lun des auteurs. Motivations Le second systme de chiers tendu fut conu et implment pour rsoudre certains problmes prsents dans le premier systme de chiers tendu. Notre but tait de fournir un systme de chiers puissant, qui utilise la smantique des chiers Unix et ore des fonctionnalits avances. Bien sr, nous voulions que Ext2FS aie dexcellentes performances. Nous voulions aussi un systme de chiers trs robuste dans le but de rduire les risques de perte de donnes lors dusage intensif. Finalement, et non des moindres, Ext2FS a d prvoir de la place pour les extensions, permettant ainsi aux utilisateurs
26

http://web.mit.edu/tytso/www/linux/ext2.html,http://uranus.it.swin.edu.au/~jn/ explore2fs/es2fs.htm
28

27

12

de bncier de nouvelles fonctionnalits sans avoir reformater leur systme de chiers. Les fonctionnalits standard dExt2FS Ext2FS supporte les types de chiers standards Unix suivants : chiers rguliers, rpertoires, chiers priphriques spciaux et liens symboliques. Ext2FS est capable de grer les systmes de chiers crs sur de trs grandes partitions. Tandis que le code originel du noyau restreint sa taille maximale 2 Go, les travaux rcents dans la couche VFS ont repouss cette limite 4 TB. Ainsi, il est maintenant possible dutiliser de gros disques sans avoir besoin de crer de nombreuses partitions. Ext2FS gre les noms de chiers longs. Il utilise des entres de rpertoire de taille variable. La taille maximale dun nom de chier est de 255 caractres. Cette limite peut tre tendue 1012 si ncessaire. Ext2FS rserve certains blocs pour le super utilisateur (root). Normalement, 5% des blocs sont rservs. Cela permet ladministrateur de rattraper facilement des situations o un processus utilisateur remplit le systme de chiers. Les autres caractristiques du systme de chiers Ext2FS : : Le systme de chier Ext2FS (extented N2 File System) utilise des tables de hash code pour retrouver rapidement des i-nodes. La taille maximale des partitions est de Giga Octets 4 Tera Octets La taille maximale des chiers est de 16 Giga Octets Un accs direct 12 blocs logiques La conservation de la date de suppression pour rcuperer des chiers Lidentication de version pour les serveurs de chiers distants NFS La fragmentation de blocs logiques an doptimiser lexploitation de lespace mmoire de stockage La synchronisation automatique des donnes systmes La rservation de zones du systme de chiers pour le super-utilisateur La longueur maximale des noms de chier long jusqu 255 caractres (255 octets) Lutilisation de tables de "hash code" pour retrouver rapidement des i-nodes Ext3FS Ext3FS supporte les mmes fonctionnalits quExt2FS, mais inclut en plus la journalisation 29 . En somme, Ext3 est Ext2 avec un journal. 1.2.5.4 Les types de supports

IDE : /dev/hdb8 correspond au deuxime disque dur IDE et la 8 partition logique ; SCSI et ZIP IDE : /dev/sda1 correspond au premier disque dur SCSI et la premire partition ;
29 La journalisation dun systme de chiers est une fonctionalit qui permet de tracer les oprations dcriture tant quelles ne sont pas termines et cela en vue de garantir lintgrit des donnes, et de pouvoir les rcuprer plus rapidement, en cas darrt brutal (coupure dalimentation, plantage du systme, etc.), alors que les partitions nont pas t correctement synchronises et dmontes

13

FLOPPY : /dev/fd0 correspond au premier lecteur de disquette A : $. Le nombre de blocs dune disquette de 31/2 pouceshighdensityestde1440.Ladisquettedoittref ormattea CDROM : /dev/cdrom. Il existe un lien symbolique entre le chier /dev/cdrom et le nom du priphrique /dev/cdrom0. Les lecteurs de cartouches amovibles sont monts comme des disques durs externes. Il faut dabord partitionner le lecteur avec fdisk, puis crer une table de partition et installer un systme de chier avec mk2fs, ensuite il faut crer le point de montage avec mkdir et monter les partitions avec mount, enn ajouter une ligne dans le chier /etc/fstab pour que le priphrique soit mont chaque dmarrage. 1.2.5.5 Le numro dinode

Sous LINUX/UNIX, chaque chier est dcrit par des mtadonnes conserves dans linode (contraction de index et node ; en franais : nud dindex). Le contenu du chier quant lui est crit dans un ou plusieurs blocs du support de stockage, selon la taille du chier. Un inode est une structure de donnes, dun systme de gestion de chiers de LINUX ou dun systme dexploitation de type UNIX-like qui stocke toutes les informations concernant un chier, lexception de nom et des donnes contenues dans ce chier. Les mtadonnes les plus courantes sous UNIX sont : Les droits daccs en lecture, criture et excution selon lutilisateur, le groupe, ou les autres ; Les dates de dernier accs, de modication des mtadonnes (inode), de modication des donnes (block) ; Les propritaire et groupe propritaire du chier ; La taille du chier ; Le nombre de blocs utiliss par le chier ; Le type de chier : chier simple, lien symbolique, rpertoire, priphrique, etc ; La taille des blocs physiques ; La taille des blocs logiques (unit dallocation) ; Le nom du support physique /dev/hda1 pour le premier disque dur IDE ; Le commutateur dcrivant ltat de la structure ; Le nom de la structure / pour la racine root) ; Le nombre possible di-nodes ; Le nombre rel dautres inodes (liens) pointant vers le chier ; Le pointeur vers le premier i-node libre ; Le pointeur vers le premier bloc de donne libre. Sur la plupart des systmes UNIX, la commande stat permet dacher lintgralit du contenu de linode. 1.2.5.6 Les types de chiers

Selon leur catgorie chiers normaux : texte : courrier, sources des programmes, scripts, conguration ... excutables : programmes en code binaire ; 14

chiers rpertoires : ce sont des chiers conteneurs qui contiennent des rfrences dautres chiers. Ils constituent la vritable charpente de larborescence, et permettent dorganiser les chiers par catgories ; chiers spciaux : situs dans /dev, ce sont les points daccs prpars par le systme aux priphriques. Le montage va raliser une correspondance de ces chiers spciaux vers leur rpertoire "point de montage". Par exemple, le chier /dev/hda permet laccs et le chargement du 1er disque IDE ; chiers liens symboliques : ce sont des chiers qui ne contiennent quune rfrence (un pointeur) un autre chier. Cela permet dutiliser un mme chier sous plusieurs noms sans avoir le dupliquer sur le disque. Selon leur type Les chiers Les rpertoires d Les priphriques (Major device Number, Minor device number) Les priphriques bloc b. Les priphriques blocs (comme les disques durs, les lecteurs de CDROM) gre une certaine quantit doctet la fois, par groupe de bloc ; Les priphriques caractre c. Les priphriques caractres (comme la souris, le clavier, le port srie, le port parallle) gre un caractre transmis la fois ; Les canaux de communication FIFO des pipes p Les sockets s Les liens l 1.2.5.7 Les droits daccs

Les droits daccs ou permissions permettent de restreindre certains utilisateurs ou certains groupes dutilisateurs laccs certains chiers ou certains rpertoires. Il y a trois types de droits daccs : Read r pour laccs en lecture au chier (permet limpression, lachage et la copie dun chier, et permet la traverse du rpertoire ou lachage des chiers dun rpertoire) ; Write w pour laccs en criture au chier (permet la modication dun chier, et permet leacement dun chier ou lenregistrement dun chier dans un rpertoire) ; Execute x pour la possibilit dexcuter le chier (permet lexecution dun programme, dun executable, et permet daccder aux informations de gestions des chiers du rpertoire, comme linode, la table des droits,...). Pour chaque chier, les droits daccs sont xs pour trois catgories dutilisateurs : user u : le propritaire du chier ; group g : le groupe propritaire du chier ; other o : les autres utilisateurs ; all a : tous les utilisateurs. Pour acher les droits de tous les chiers du rpertoire courant : ls la

15

Les droits daccs peuvent galement sexprimer sous leur forme octale , cest dire laide de chire de 0 7 (il y a donc huit possibilits, lesquelles peuvent tre xes avec seulement 3 bits). A chacun des droits (r, w, x) correspond une valeur octale (4, 2, 1), les valeurs octales sont cumules pour chaque type dutilisateur (u, g, o). Pour chaque type dutilisateur (u, g, o), la valeur en octale peut prendre les valeurs 0, 1, 2, 3, 4, 5, 6 et 7. Par exemple, la combinaison de tous les droits cumuls pour les trois types dutilisateurs (rwx rwx rwx) est quivalente la valeur octale 777. 0 signie aucun droit 1 correspond au droit executable (x) 2 correspond au droit dcriture (-w-) 3 correspond aux droits cumuls dexecution et dcriture (-wx) 4 correspond au droit de lecture (r) 5 correspond aux droits cumuls de lecture et dexecution (r-x) 6 correspond aux droits cumuls de lecture et dcriture (rw-) 7 correspond aux droits cumuls de lecture, dcriture et dexecution (rwx) Exemple : 666 donne le droit tous en lecture et en criture 777 donne tous les droits tous 700 donne tous les droits au propritaire de chier Le nombre doctale peut tre de quatre chires quand le super utilisateur xe les droits spciaux ("s" et "t"). Les droits spciaux SUID et SGID remplacent le droit dexecuter (x) pour un utilisateur ou un groupe, et permettent lutilisateur ou au groupe de devenir le propritaire dun chier executable le temps de son execution. Ainsi, le chier /usr/bin/passwd est un chier executable qui appartient root, mais le droit (s) permet tous les utilisateurs de lancer ce programme avec le droit root le temps de son execution, et ainsi de pouvoir changer eux mme leur propre mot de passe. Le droit (t) ou sticky bit remplace le droit dexecution (x) dun chier executable, et force celui-ci a rester en mmoire une fois quil a t charg. Seuls le super-utilisateur (root) et le propritaire dun chier peuvent en changer les droits. Un utilisateur devient propritaire dun chier en le crant ou en le copiant (sil a les droits pour le faire). Les droits dun chier peuvent tre modier avec la commande "chmod". 1.2.5.8 Larborescence de LINUX

/ Le rpertoire racine contient tous les sous rpertoire. /boot Au dmarrage du systme, le programme damorage examinera, entre autres, le rpertoire /boot. Parmi les objets recherchs gure le chier map, par lequel GRUB (le gestionnaire damorage de Linux) dterminera lemplacement du noyau sur le disque dur. Sans cette information, GRUB ne peut pas le charger en mmoire vive.

16

/bin Le rpertoire binaries contient les commandes les plus importantes. /dev Le rpertoire device ne contient pas de chiers dans le sens classique du mot. Il contient des chiers de priphriques par lesquels vous communiquez avec les appareils raccords lordinateur. Aucun utilisateur, pas mme le root, ne peut sadresser directement au matriel. Les chiers de priphriques constituent des interfaces avec les pilotes de priphriques et nont donc pas de contenu. /etc Seuls les chiers de conguration doivent se trouver l : passwd, group, hosts, etc. Notez le rpertoire /etc/X11 qui est le rpertoire de linterface graphique. Xfree y dpose ses informations de conguration. Les administrateurs ont intrt noter le rpertoire /etc/skel dont les chiers se copieront dans le rpertoire personnel des nouveaux utilisateurs. /home Le rpertoire personnel des utilisateurs gurera souvent sous le rpertoire /home/VotreNom. Lavantage est que lutilisateur pourra bncier de son propre systme de chiers. Le deuxime avantage est qu partir du rpertoire personnel, peu de droits en criture seront distribus. On pourra mme dnir des quotas de mmoire. /lib Rpertoire des bibliothques partages. /opt Rpertoire des programmes complmentaires qui ne font pas partie intgrante de Linux. /proc Le rpertoire des pseudo-systmes de chiers. Les chiers noccupent aucune place sur le disque dur. Ces chiers ne sont que des constructions logiques, ils pointent vers des programmes en mmoire vive qui lisent directement des informations systme central, sans les dposer sur le disque dur. /root Le rpertoire de ladministrateur. Il ne faut pas confondre le root, le rpertoire /, et le rpertoire /root. /sbin Cest le rpertoire des commandes dadministration. Au dmarrage de Linux, de nombreux programmes et chiers dadministrations sont cherchs, lu et exploits, ce qui aboutit lachage nal de la bannire login. En plus du noyau du systme /vmlinuz, les chiers les plus importants pour dmarrer Linux gurent dans les rpertoires /etc et /sbin. Nous pouvons distinguer trois domaines cls : Les commandes systmes gnrales Tels que : init, swapon, swapo, mkswap, getty. Les commandes de dmarrage et darrt du systme Tel que : shutdown, fastboot, fasthalt, reboot. Les commande grant lespace du disque dur Tel que : fsck, e2fsck, mkfs, mkefs et fdisk. 17

/tmp Le rpertoire des chiers temporaires peut aussi tre cr en RAM. Il est accessible par tous en modes lecture et criture. /var Cest le rpertoire des donnes variables dans lequel Linux dpose des donnes variables, se modiant rapidement ou frquemment. Lutilisateur peut y crire. Les chiers temporaires dimpressions peuvent sy retrouver. /usr Le rpertoire des donnes sensible est un rpertoire qui contient une srie de rpertoire dans lesquels Linux conserve des donnes trs importantes. Notez la prsence de : /usr/doc qui contient la documentation de Linux et /usr/games contient des jeux... Le montage dun systme de chier Tous les supports de donnes (les disques durs locaux ou rseaux, les lecteurs de disquette, de CDROM) doivent tre "monts" an que les donnes quelles stockent soient accessibles pour les utilisateurs dun systme Linux. Pour lire les donnes dun CDROM ou dune disquette, il faut monter le priphrique correspondant. De mme pour retirer un CDROM ou une disquette de son lecteur, il faut au pralable dmonter le priphrique correspondant. Tous les systmes de chiers monts font parties dune arborescence unique (/ ). Monter un priphrique revient rajouter dans larborescence une branche. Une fois le support mont, les donnes de celui-ci sont accssibles partir du point de montage choisi pour le support. Le point de montage ("mount point") est le rpertoire de la structure de chier (nimporte lequels des rpertoires de larborescence) partir duquel sera mont le support. Pour monter un systme de chier, il faut prciser : Le type de systme de chier (ext2, VFAT, iso9660, nfs, ...) ; Le support physique (/dev/hda1, /dev/fd0, /dev/sdb1, adresse rseau, ...) ; Le point de montage ; Les paramtres de montage dun systme de chier senregistrent dans les chiers /etc/fstab (le system table) et /etc/mtab (mount table). Le montage dun systme de chier est ralis par le super-utilisateur (root), mais loption "users" du chier /etc/fstab permet aux utilisateur de monter eux mme un systme de chier. Loption "supermount" permet de monter automatiquement un systme de chier ds quune demande lui est envoye. Loption defaults est quivalent la somme des options auto, rw, exec et nouser. Par dfaut, les systmes de chiers sont monts en mode asynchrone, cest dire que les donnes sont mises en tampon temporairement. Les donnes ne sont pas crites immdiatement sur le support, il y a toujours une dirence entre ltat du support et ltat suppos par le systme. Cest pourquoi, il ne faut jamais teindre brutalement un systme LINUX, sous peine de perdre les donnes qui sont encore dans le tampon mais pas encore sur le support. Ainsi, sortir une disquette brutalement de son lecteur peut entrainer la perte de donnes. Il est prfrable de "dmonter" avec la commande "umount" un lecteur de CDROM ou un lecteur de disquette avant den sortir le CDROM ou la disquette. Une option permet de monter un support en mode synchrone. 18

Pour monter un volume Windows (vfat) sur la premire partition (hda1) : mkdir /mnt/windows mount -t vfat /dev/hda1 /mnt/windows Pour monter une disquette : mkfs -t ext2 /dev/fd0 1440 mount /dev/fd0 cd /mnt/oppy 1.2.5.9 Le chier de conguration "/etc/fstab"

Le chier fstab (le systems table) est la table des dirents systmes de chiers sur un ordinateur sous Unix/linux : il contient la liste de tous les disques utiliss et des partitions de ces disques. Pour chaque partition, il indique comment elle sera utilise et intgre larborescence du systme de chiers global (cest--dire le point de montage). 1.2.5.10 Les chiers spciaux du rpertoire "/proc"

Sur les systmes du type Unix, procfs (process le system, systme de chiers processus en anglais) est un pseudo-systme de chiers (pseudo car dynamiquement gnr au dmarrage) utilis pour accder aux informations du noyau sur les processus. Le systme de chiers est souvent mont sur le rpertoire /proc.

1.2.6

Les variables denvironnement par dfaut

Exemple : [tonguim@guinkotf]$ env ORBIT_SOCKETDIR=/tmp/orbit-tonguim SSH_AGENT_PID=3787 GPG_AGENT_INFO=/tmp/seahorse-XVFWTX/S.gpg-agent :3811 :1 TERM=xterm SHELL=/bin/bash XDG_SESSION_COOKIE=9ea4ba623bf49848bfd71c094a9fe5c3-1258307868.7230861481105114 GTK_RC_FILES=/etc/gtk/gtkrc :/home/tonguim/.gtkrc-1.2-gnome2 WINDOWID=58720309 GTK_MODULES=canberra-gtk-module USER=tonguim LS_COLORS=no=00 :=00 :di=01 ;34 :ln=01 ;36 :pi=40 ;33 :so=01 ;35 :do=01 ; 35 :bd=40 ;33 ;01 :cd=40 ;33 ;01 :or=40 ;31 ;01 :su=37 ;41 :sg=30 ;43 :tw=30 ;42 :ow=34 ; 42 :st=37 ;44 :ex=01 ;32 :*.tar=01 ;31 :*.tgz=01 ;31 :*.svgz=01 ;31 :*.arj=01 ; 31 :*.taz=01 ;31 :*.lzh=01 ;31 :*.lzma=01 ;31 :*.zip=01 ;31 :*.z=01 ;31 :*.Z=01 ; 31 :*.dz=01 ;31 :*.gz=01 ;31 :*.bz2=01 ;31 :*.bz=01 ;31 :*.tbz2=01 ;31 :*.tz=01 ; 31 :*.deb=01 ;31 :*.rpm=01 ;31 :*.jar=01 ;31 :*.rar=01 ;31 :*.ace=01 ;31 :*.zoo=01 ; 31 :*.cpio=01 ;31 :*.7z=01 ;31 :*.rz=01 ;31 :*.jpg=01 ;35 :*.jpeg=01 ;35 :*.gif=01 ; 19

35 :*.bmp=01 ;35 :*.pbm=01 ;35 :*.pgm=01 ;35 :*.ppm=01 ;35 :*.tga=01 ;35 :*.xbm=01 ; 35 :*.xpm=01 ;35 :*.tif=01 ;35 :*.ti=01 ;35 :*.png=01 ;35 :*.svg=01 ;35 :*.mng=01 ; 35 :*.pcx=01 ;35 :*.mov=01 ;35 :*.mpg=01 ;35 :*.mpeg=01 ;35 :*.m2v=01 ;35 :*.mkv=01 ; 35 :*.ogm=01 ;35 :*.mp4=01 ;35 :*.m4v=01 ;35 :*.mp4v=01 ;35 :*.vob=01 ;35 :*.qt=01 ; 35 :*.nuv=01 ;35 :*.wmv=01 ;35 :*.asf=01 ;35 :*.rm=01 ;35 :*.rmvb=01 ;35 :*.c=01 ; 35 :*.avi=01 ;35 :*.i=01 ;35 :*.gl=01 ;35 :*.dl=01 ;35 :*.xcf=01 ;35 :*.xwd=01 ; 35 :*.yuv=01 ;35 :*.aac=00 ;36 :*.au=00 ;36 :*.ac=00 ;36 :*.mid=00 ;36 :*.midi=00 ; 36 :*.mka=00 ;36 :*.mp3=00 ;36 :*.mpc=00 ;36 :*.ogg=00 ;36 :*.ra=00 ;36 :*.wav=00 ;36 : GNOME_KEYRING_SOCKET=/tmp/keyring-njKOGJ/socket SSH_AUTH_SOCK=/tmp/keyring-njKOGJ/socket.ssh SESSION_MANAGER=local/guinkotf :/tmp/.ICE-unix/3654 USERNAME=tonguim DESKTOP_SESSION=default PATH=/usr/local/sbin :/usr/local/bin :/usr/sbin :/usr/bin :/sbin :/bin :/usr/games GDM_XSERVER_LOCATION=local PWD=/home/tonguim/Desktop/cours/cours_ibam/se LANG=en_US.UTF-8 GNOME_KEYRING_PID=3641 GDM_LANG=en_US.UTF-8 GDMSESSION=default HISTCONTROL=ignoreboth SHLVL=1 HOME=/home/tonguim GNOME_DESKTOP_SESSION_ID=this-is-deprecated LOGNAME=tonguim XDG_DATA_DIRS=/usr/local/share/ :/usr/share/ :/usr/share/gdm/ DBUS_SESSION_BUS_ADDRESS=unix :abstract=/tmp/dbus-CJOSkKwfFr, guid=5221b1947803e5a5197c3b9f4b00411d LESSOPEN=| /usr/bin/lesspipe %s WINDOWPATH=7 DISPLAY= :0.0 LESSCLOSE=/usr/bin/lesspipe %s %s XAUTHORITY=/home/tonguim/.Xauthority COLORTERM=gnome-terminal _=/usr/bin/env OLDPWD=/home/tonguim [tonguim@guinkotf]$ Les variables essentielles connatre sont : 1.2.6.1 PWD

Elle contient le nom du rpertoire courant. Donc si lon change de rpertoire, la variable sera mise jour automatiquement.

20

1.2.6.2

HOSTNAME

Elle contient le nom de la machine Linux, soit celui qui a t dni lors de linstallation du systme. 1.2.6.3 USER et LOGNAME

Elles contiennent le nom dusager du compte dans lequel vous travaillez. 1.2.6.4 DISPLAY

Cette variable permet de dnir vers quelle destination on veut acher des fentres X11. Par dfaut, on aura :0, soit la console. Par contre, si lon est branch distance sur une machine Unix et que lon veut faire acher une fentre sur une machine locale, on xera cette variable comme suit : [tonguim@guinkotf]$ DISPLAY=univ-ouaga.bf :0 [tonguim@guinkotf]$ export DISPLAY [tonguim@guinkotf]$ Donc, on xe la variable DISPLAY et la commande export force la coquille la rendre active immdiatement pour tous les autres scripts qui sexcuteront et aux coquilles enfants. 1.2.6.5 SHELL

Elle contient le nom avec chemin daccs de la coquille ("shell") courante. Dans le cas ci-dessus, on utilise /bin/bash. 1.2.6.6 HOME

Elle contient le nom du rpertoire de travail par dfaut lorsque vous entrez dans votre compte Linux. 1.2.6.7 TERM

Elle contient le type de terminal dni. Vous navez pas xer cette variable sauf si vous travaillez distance et que vous utilisez telnet ou ssh. Il faut alors xer la variable TERM pour "muler" un terminal VT100. On le fait comme suit (cas dune coquille bash) : [tonguim@guinkotf]$ TERM=vt100 [tonguim@guinkotf]$ export TERM [tonguim@guinkotf]$ Donc on xe la variable TERM et la commande export force la coquille la rendre active immdiatement pour tous les autres scripts qui sexcuteront et aux coquilles enfants. 21

1.2.6.8

PATH

Elle contient les chemins daccs dnis. Donc lorsque vous excutez une commande, cette variable est consulte comme suit : On vrie si la commande existe dans le rpertoire /bin. Ici le est remplac par le contenu de la variable HOME. Si la commande ne se trouve pas dans le rpertoire /bin, la coquille va vrier dans /bin, sinon, dans /usr/bin, ..., jusque dans /usr/local/bin. Si la commande ne peut tre localise, on aura le message derreur suivant : command not found Ceci arrive souvent si vous avez fait un script Perl, par exemple, dans le rpertoire courant dans lequel vous vous retrouvez. Il faut alors spcier avant la commande ./. Exemple : [tonguim@guinkotf ]$ info_chier bash : info_chier : command not found [tonguim@guinkotf ]$ ./infof ichier ktravail.no1.txt Inf ormationsurlef ichier : N omduf ichier : travail.no1.txt T aille : 2Ko. P roprietaire : berube(249) Groupe : hacker(249) Datededernieremodif ication : 2001 07 23a07 : 48 [tonguim@guinkotf ]$ Donc on voit que si lon ne spcie pas ./inf of ichier, on a le message derreur commandnotf ound. Si lon veut viter ce genre de problme, on peut modier le chier .bashrc en ajoutant la n de ce chier, moins que vous layez dj fait, ceci : PATH=$PATH :. export PATH On peut videmment modier cette variable dans la coquille bash courante, mais il faut le faire chaque fois quune nouvelle coquille est appele. Enn, avec la coquille bash, on peut dnir ses propres variables. Par exemple, pour dnir la variable tarte dont le contenu sera pommes, on fait ceci : [tonguim@guinkotf ]$ fruit="Mangues" [tonguim@guinkotf ]$ export fruit [tonguim@guinkotf ]$

22

Il est trs important de ne pas laisser despace entre fruit, = et le double apostrophe . En eet, si par exemple, on fait ceci : [tonguim@guinkotf]$ fruit = "Mangues" La coquille va croire que lon veut excuter la commande fruit et lon aura ceci : bash : f ruit : commandnotf ound La commande export permet de spcier la coquille que lon veut que la variable tarte soit visible dans tous les scripts bash qui seront excuts dans la coquille courante. Pour illustrer ceci, voici un exemple simple. Supposons que lon a le script bash suivant : [tonguim@guinkotf ]$ cat /tmp/script.bash ! /bin/bash echo "La variable planche contient ceci : $planche." [tonguim@guinkotf ]$ Donc on xe la variable planche Bt, mais on ne fera pas la commande export juste aprs lavoir dnie. On va plutt excuter le script script.bash sans le faire. On aura ceci : [tonguim@guinkotf ]$ planche="Bt" [tonguim@guinkotf ]$ /tmp/script.bash La variable planche contient ceci : . [tonguim@guinkotf ]$ Maintenant, faisons un export de la variable et rexcutons le script. On aura alors ceci : [tonguim@guinkotf ]$ export planche [tonguim@guinkotf ]$ /tmp/script.bash La variable planche contient ceci : Bt. [tonguim@guinkotf ]$ On voit donc que le script bash a hrit du contenu de la variable planche. Ceci complte donc un petit survol de la coquille bash.

23

1.2.7
1.2.7.1

Les commandes de base


CD : se dplacer dans larborescence de rpertoires

$ cd chier 1.2.7.2 $ pwd 1.2.7.3 $ ls $ ls -l 1.2.7.4 MORE, CAT : voir un chier LS : lister les chiers dun rpertoire PWD : dans quel rpertoire suis-je actuellement ?

$ more chier $ cat chier 1.2.7.5 CP : copier un chier

$ cp chiers ourcef ichierd estination 1.2.7.6 RM : supprimer un chier

$ rm chier 1.2.7.7 MKDIR : crer un rpertoire

$ mkdir rpertoire 1.2.7.8 MV : dplacer ou renommer un chier

$ mv -i /chemin/chier /chemin 1.2.7.9 FIND : retrouver un chier

$ nd /chemin -name ab* -print 1.2.7.10 TOP, PS : la gestion des processus

$ activit du systme : top

1.2.8
$ ps -ef

tat des processus

1.2.9

Systme dexploitation

$ uname -o

24

1.2.10

Processeur

Type de processeur : $ uname -p Informations dtailles : $ cat /proc/cpuinfo Charge moyenne du processeur : $ cat /proc/loadavg

1.2.11

Mmoire

Informations dtailles : $ cat /proc/meminfo Acher ltat : $ free -m

1.2.12

Liste matrielle

lshw lshw -html > chier.html lshal

1.2.13
$ lsusb 1.2.13.1

Liste des priphriques USB

Noyau

$ uname -r 1.2.13.2 MAN : acher la page dinformation dune commande

$ man commande 1.2.13.3 Acher un calendrier du mois en cours

Du mois en cours : $ cal Annuel : $ cal 2008

25