Вы находитесь на странице: 1из 191

Squence 3

tude du systme dexploitation


Windows XP Pro
Dans cette squence, nous allons aborder les principes de base de fonctionnement de Windows XP version Pro. Attention, nous nallons pas tout dtailler, car il
nous faudrait beaucoup de pages, mais nous allons voir les composants essentiels
qui constituent un systme dexploitation graphique.

u Contenu
1.
2.
3.
4.

Introduction Windows .................................................................. 120


Installation de Windows XP Pro ................................................... 122
Dmarrage de Windows XP Pro ................................................... 131
tude de linterface graphique de Windows XP Pro............ 134

4A.
4B.
4C.
4D.
4E.
4F.

Le bureau .................................................................................................. 135


La barre des tches .................................................................................. 138
Les constituants dune fentre Windows .............................................. 142
Gestion des fentres Windows ............................................................... 144
Dmarrer un programme sous Windows XP Pro ................................... 145
Arrter un programme ou le gestionnaire des tches .......................... 146

5.

Gestion des fichiers et dossiers .................................................... 147

5A.
5B.
5C.
5D.
5E.
5F.
5G.

Des gnralits ......................................................................................... 147


Crer un dossier ....................................................................................... 150
Renommer un dossier .............................................................................. 151
Supprimer un dossier et son contenu .................................................... 151
Slectionner des fichiers .......................................................................... 152
Dplacer ou copier un dossier ou des fichiers ....................................... 153
Rechercher des fichiers ou des dossiers ................................................. 153

6.
7.
8.
9.
10.
11.
12.

Le panneau de configuration ........................................................ 154


Quelques utilitaires ........................................................................... 159
Grer les comptes des utilisateurs avec Windows XP pro . 162
La base des registres ......................................................................... 172
Windows XP Pro et le rseau ........................................................ 177
Partager des ressources ................................................................... 191
Quelques commandes rseaux ..................................................... 195

12A. La commande "net" ................................................................................. 195


12B. Autres commandes................................................................................... 196
13. Des scripts encore des scripts ........................................................ 197
13A. Les variables d'environnement ............................................................... 197
13B. Les variables de position ou les paramtres de la ligne de commande ....198
13C. Les instructions ......................................................................................... 198

119
8 3999 TG PA 01

Squence 3

1.

Introduction Windows
Prcdemment, nous avons tudi le fonctionnement dun systme dexploitation monotche et mono-utilisateur travers MS-DOS. Nous avons eu galement loccasion dutiliser les commandes systmes de ce dernier en mode texte , ce qui nous a permis de
contrler, au plus prs, les actions sur lordinateur. Bien entendu, le mode texte na
pas toujours t du got de tous les utilisateurs de lpoque dautant plus que la notion
dinterface graphique tait dj trs en vogue chez Apple. Cette constatation a amen
Microsoft se pencher sur la convivialit de son OS de lpoque qui tait MS-DOS. Ainsi
est n le concept de Windows. Depuis 1985 jusqu aujourdhui, les versions de Windows
se sont succdes et ce nest pas fini. Dabord simple programme utilitaire ajout au
dessus de MS-DOS, partir de Windows 95, il a intgr dans son code de plus en plus de
concepts de fonctionnement des systmes dexploitation afin de prendre de lautonomie
par rapport MS-DOS et ses contraintes. Cependant bien que lintention dautonomie
tait louable, Windows 9x a conserv une partie de MS-DOS pour faire fonctionner lexistant, ce qui a t lorigine des problmes de plantage du systme que lon connat
bien, le fameux cran bleu. Microsoft a tout de mme fini par se dtacher de MS-DOS
avec les versions Windows branche NT qui apportent une nouvelle architecture de fonctionnement et surtout la notion de machine DOS virtuelle, ce qui rend le systme plus
stable mais qui empche parfois un utilisateur de continuer faire fonctionner ses vieilles
versions de programmes mais tant pis, ce fut un choix dlibr de Microsoft. Pendant
un certain temps, Windows sest dclin en deux branches : la branche Windows 9x (95,
98, ME) destine plus lutilisateur lambda et la branche Windows NT qui se tourne vers
lentreprise et les professionnels. Aujourdhui, il ne reste plus que la branche NT avec
2000, XP et dernirement Vista et dans chaque cas des versions plus ou moins dulcores
en fonction du public concern par le produit allant de la famille au professionnel et
donc avec plus ou moins dutilitaires et de puissance de fonctionnement.
Comme nous lavons dit prcdemment, au dpart Windows ntant quune simple couche graphique au dessus de MS-DOS, il tait donc mono-tche et mono-utilisateur, puis
avec quelques difficults, il a t intgr, dans la version Windows 3.x, le multitche. Il
permet donc plusieurs programmes de pouvoir fonctionner en parallle . En fait
Windows 3.x est un systme non premptif. Il est dit multi-tches coopratifs . Cela
signifie que cest lapplication en cours qui dcide seule de passer la main une autre
application, cest--dire quelle dcide seule dabdiquer le processeur au profit dune
autre application. Le scheduleur (lordonnanceur) de Windows 3.x, en charge de grer
les applications en cours dutilisation, doit attendre que lapplication en cours laisse la
main avant de pouvoir donner laccs au processeur une autre application. Donc cela
signifie que lapplication en cours doit restituer intervalles plus ou moins rguliers le
processeur. Sans entrer dans le dtail, il faut savoir que Windows fonctionne avec de
lvnementiel, cest--dire que lorsque quun vnement arrive (un click souris, dplacement souris, frappe clavier, un accs disque, un appel systme.), le programme
concern excute le code prvu en rponse lvnement. Ainsi chaque fois quun
programme a fini de traiter le code prvu en rponse un vnement, il rend la main au
scheduleur. Le revers de la mdaille est que si le programme qui utilise le processeur est
plant ou quil effectue un travail trs long, le scheduleur est impuissant et le systme est
bloqu. Ainsi, cela explique pourquoi, lpoque, des clics rpts sur une application,
alors que le sablier est affich, ne produisent aucun effet ou que dans les cas de plantage
dune application, il est difficile voire impossible de rcuprer la main. Dans ce cas, la
squence de touches magique Ctrl + Alt + Suppr peut devenir une solution avant la
coupure brutale de lordinateur en cas dchec.

120
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

La squence de touches Ctrl + Alt + Suppr permet darrter un programme voir


de rebooter la machine.
loppos, Windows 95 et Windows NT sont multi-tches premptif . Le scheduleur
dcide seul de laisser la main une autre application. En fait, il accorde chaque application un quantum de temps durant lequel elle peut occuper le processeur. Une fois le
quantum de temps atteint, le scheduleur suspend de manire autoritaire le travail du programme qui occupe le processeur afin de donner accs ce dernier un autre programme.
Ce mcanisme est possible pour les applications qui fonctionnent en mode 32 bits donc
prvues cet effet. Cependant, lorsquune application 16 bits, donc une ancienne application mise en place pour les versions davant Windows 95, sexcute, Windows reprend
le principe du coopratif et le scheduleur attend que celui-ci lui donne la main, ce qui
peut expliquer que parfois, mme sous Windows 9x, un programme bloque le systme.
Dans la branche NT, ce nest plus comme cela car Windows utilise des machines virtuelles
dans laquelle il excute le programme. Le scheduleur a donc toujours les pleins pouvoirs
sur la machine virtuelle et peut donc arrter le programme de la machine virtuelle, et donc
fortiori le programme qui fonctionne lintrieur de celle-ci, quand il le souhaite.
Windows, comme nous venons de le dire, permet plusieurs programmes de sexcuter
en mme temps. Il est donc possible de lancer plusieurs fois le mme programme. Par
exemple, il est possible de lancer plusieurs instances de Word. Dans ce cas, Windows
applique le principe de r-entrance des programmes. Cela signifie que le code excutable nest charg quune seule fois en mmoire RAM lors du premier lancement puis les
autres instances du mme programme utilisent ce mme code mais avec un autre compteur ordinal. Allez une petite dfinition, le compteur ordinal est un registre du processeur, une zone mmoire du processeur, qui contient ladresse de la prochaine instruction
excuter. Ainsi, lorsquun programme est invit rendre la main, le noyau de lOS sauvegarde le contexte de celui-ci, cest dire toutes les informations ncessaires son fonctionnement qui se trouvent dans les registres du processeur, dont notamment le compteur
ordinal, afin de pouvoir restaurer le contexte du programme suivant devant sexcuter et
ainsi de suite. Donc chaque fois quun programme retrouve le processeur, on restaure
la valeur de son compteur ordinal et le programme peut reprendre lendroit o il en
tait rest. Nous avons dit au dbut de ce paragraphe, que lorsque lon excute, en mme
temps, plusieurs fois le mme programme, le code de celui-ci est charg en mmoire RAM
lors du premier lancement et nous pouvons ajouter que le code sera retir de la mmoire
RAM lorsque la dernire instance du programme aura termin son travail.
Le principe de partage de code, de r-entrance, existe aussi sous UNIX et Linux (voir squence
4 de ce support) mais est galement appliqu aux DLL de Windows. Mais quest-ce donc
que cela ? Une DLL (Dynamic Link Library) est une bibliothque de fonctions compiles, donc
en code machine. Ces DLL contiennent des fonctions systmes de base pour Windows ou
des fonctions cres par un dveloppeur pour une application donne ou pour communiquer
avec un priphrique donn. Dans les excutables DOS, le code des fonctions utilises doit
tre inclus dans chacun des programmes. Dans les excutables Windows, galement appels
New Excutable , le compilateur place, dans le code excutable gnr, lorsque cela est
ncessaire, des instructions permettant deffectuer un appel une fonction se trouvant dans
une bibliothque DLL. Lors de lexcution du programme Windows, le systme mettra en
place des liens dynamiques entre le programme excutable et les bibliothques DLL appeles.
Ce mcanisme de lien est dit dynamique car il se fait lors de lexcution du programme. Bien
entendu, les bibliothques dynamiques utilises sont charges auparavant en mmoire sauf
si elles sy trouvent dj. Cest le noyau du systme WINDOWS qui se charge de cela.
121
8 3999 TG PA 01

Squence 3

Un compilateur est un programme qui permet de traduire des instructions crites


dans un langage de programmation (langage C, Visual Basic, Delphi, ) en code
machine comprhensible par lordinateur.
Le mcanisme des DLL permet :
d'avoir un "excutable" de plus petite taille car le code des fonctions appeles n'est
pas inclus dans l'excutable ;
une meilleure modularit des programmes car les DLL peuvent tre compiles et
testes sparment ;
de modifier une fonction contenue dans une DLL sans devoir recompiler le programme excutable qui l'utilise. Il suffit simplement de recompiler la bibliothque.
Les fonctions d'une DLL peuvent donc tre facilement enrichies ;
d'conomiser de la mmoire et de la place sur le disque, car plusieurs applications
peuvent partager une mme librairie. Attention, le revers de la mdaille est que si on
supprime une DLL, plusieurs programmes peuvent ne plus fonctionner. Bien souvent,
dans ce cas, il suffit de remettre la DLL en place pour que tout rendre dans l'ordre ;
d'optimiser l'occupation de la mmoire car les DLL sont charges et dcharges au
moment o cela est ncessaire.
Remarques

Les DLL prennent gnralement la forme de fichiers avec l'extension. .DLL . Faites nanmoins attention, car ces fichiers peuvent aussi avoir une extension .EXE voire autre.
Les DLL peuvent tre situes dans le rpertoire d'installation de Windows, mais galement
dans les sous-rpertoires System et System32 de celui-ci ou encore dans le rpertoire
d'un programme les utilisant. Si un programme est dmarr et que l'un de ses fichiers DLL
est absent, endommag ou n'est pas de la version attendue, un message d'erreur s'affiche. Il
faut donc l'ajouter ou le remplacer.
Voil aprs cette explication des termes que lon peut entendre dans le monde Windows , passons quelques explications sur linstallation de Windows XP Pro.

2.

Installation de Windows XP Pro


Linstallation de Windows XP Pro tant suffisamment explicite tout au long de la procdure, nous ne dtaillerons pas tout. Cependant, avant de vous lancer dans lopration, il
faut que vous analysiez dans quel contexte vous allez vous retrouver.
Vous allez upgrader une version de Windows existante en crasant l'ancienne.
Vous allez upgrader une version de Windows existante en conservant l'ancienne.
Attention, il faut donc, dans ce cas, prvoir au moins deux partitions primaires
(principales). Une contenant les fichiers systmes de l'ancienne version et l'autre, les
fichiers systmes de la nouvelle version.
Vous installez Windows XP Pro sur un disque dur vierge et ce sera le seul OS que
vous allez installer.
Vous installez Windows XP Pro sur un disque dur vierge et vous allez le faire
cohabiter avec un ou plusieurs autres systmes d'exploitation.
Dans chacun des cas, il peut tre intressant de crer des partitions afin de mettre le systme Windows sur une partition principale et les donnes sur des partitions logiques ou

122
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

encore crer deux partitions principales pour y mettre sur lune Windows et sur lautre
Linux par exemple. En conclusion, une bonne installation doit se rflchir avant.
partir de cette ligne, nous considrons que vous avez fait votre choix et que vous avez
plac le CD-ROM dinstallation dans le lecteur de CD-ROM. Dans notre cas, nous optons
pour la solution : Installation de Windows XP Pro sur un disque vierge ou un disque
contenant des fichiers qui peuvent tre supprims. Quelle que soit la solution choisie,
nous retrouverons le mme principe dinstallation.
Pour dmarrer linstallation de Windows XP Pro, nous plaons le CDROM dinstallation
de Windows XP Pro dans le lecteur de CD-ROM et nous lanons le dmarrage de lordinateur aprs avoir vrifi que, dans le setup de celui-ci, le lecteur de CD-ROM est dclar
comme premire unit bootable.
Remarque

Si nous sommes dans une version antrieur de Windows, il est possible daccder au
contenu du CD-ROM et lancer soit le programme Setup situ la racine du CD-ROM,
soit lancer lexcution du programme winnt32 se trouvant dans le rpertoire i386
du CD-ROM.
Une fois que le processus dinstallation dmarre, il ralise un ensemble dtapes qui se
succdent. Voyons cela de plus prs.
a. Dans un premier temps, le programme inspecte la configuration matrielle de votre
ordinateur puis il charge en mmoire tout ce dont il a besoin pour cette premire
tape de linstallation.

123
8 3999 TG PA 01

Squence 3

b. Le processus dinstallation de Windows XP fait apparatre un cran vous demandant


de choisir une action.

c. Tapez sur la touche Entre pour lancer linstallation puis validez le contrat de
licence avec F8 .
d. Indiquez ou crez la partition sur laquelle vous souhaitez effectuer linstallation puis
ventuellement formatez la en NTFS qui est le systme de fichiers de Windows XP Pro.
Attention, ne vous trompez pas de partition cette tape, si vous en avez plusieurs,
car le contenu de la partition choisie sera perdu.

e. Une fois ltape prcdente termine, le programme dinstallation copie sur la partition formate, tous les fichiers dont il a besoin pour poursuivre linstallation.

124
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

f. Lordinateur redmarre ensuite en mode graphique. Pendant cette phase, le programme dinstallation dtecte et installe les priphriques dont il va avoir besoin.

g. Ensuite, travers diffrentes botes de dialogue, Windows vous demande de personnaliser ventuellement les paramtres rgionaux et linguistiques comme le format
des nombres, des heures et des dates. Il vous demande ensuite de saisir lidentit du
propritaire du logiciel et enfin la cl du produit.

125
8 3999 TG PA 01

Squence 3

h. Nous arrivons ensuite dans la bote de dialogue Nom de lordinateur et mot de passe
Administrateur dans laquelle vous devez saisir le nom que vous souhaitez attribuer
votre ordinateur. Si votre ordinateur sintgre dans un rseau, vous devez veiller
ce que ce nom soit unique car, dans le cas contraire, dans un rseau Windows, vous
risquez un conflit de nom qui empchera cette machine dutiliser les ressources du
rseau. Dans cette mme bote de dialogue, Windows vous demande de saisir puis de
confirmer le mot de passe que vous souhaitez attribuer un utilisateur particulier qui
sappelle administrateur . Ce dernier est en fait le super-utilisateur, celui qui aura
tous les droits sur lordinateur considr. Il est donc conseill de saisir un mot de passe
et de ne pas laisser les deux zones de saisie vides. Bien entendu, ce mot de passe, il ne
faut pas loublier sinon vous aurez des problmes pour paramtrer votre installation
ensuite. Une fois lopration termine, cliquez sur le bouton Suivant .

i. La bote de dialogue suivante attend que vous rgliez lheure et la date puis linstallation se poursuit.

j. Au cours de cette phase dinstallation, Windows installe tout ce qui est ncessaire pour
une intgration de votre ordinateur dans un rseau savoir un applicatif client de nom
Client pour rseaux Microsoft , des services rseau que votre ordinateur sera capable
de fournir aux autres ordinateurs du rseau comme par exemple Partage de fichiers et
dimprimantes pour les rseaux Microsoft et enfin des protocoles comme le protocole
TCP/IP .
126
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Quelques explications sur les diffrents termes employs prcdemment. Un applicatif


client , appel parfois simplement client , est un programme en charge de la communication avec dautres ordinateurs du rseau qui eux proposent des services. Pour mieux
comprendre, prenons un exemple. Si un ordinateur est dit serveur FTP , il propose alors le
service FTP qui consiste mettre disposition, des autres utilisateurs du rseau, des fichiers
que ceci peuvent alors tlcharger. Maintenant si un utilisateur souhaite tlcharger un
fichier se trouvant sur le serveur FTP, il doit utiliser un ordinateur du rseau sur lequel est
install un client FTP. Ce client entre alors en communication avec lapplicatif Serveur FTP
(service FTP) de manire lui demander de ramener le fichier souhait sur le poste o se
trouve lutilisateur. Pour dialoguer le client FTP et le serveur FTP utilisent un protocole qui est
le protocole FTP inclus dans le package TPC/IP . Autre exemple, un navigateur Internet est
un client qui entre en communication avec un serveur WEB pour rcuprer des pages WEB
quil affiche ensuite sur votre cran. En gnral, un OS inclus un ou plusieurs clients mais rien
ne vous empche dinstaller sur votre ordinateur des clients autres par la suite. En rsum, il
y a des ordinateurs qui, par lintermdiaire de lOS install, proposent par dfaut des services,
dautres des applicatifs clients adapts aux services associs, et pour que lensemble communique, possdent des protocoles. Bien entendu, pour communiquer, lordinateur client et
les ordinateurs proposant des services, doivent utiliser le mme protocole de communication.
Rappel: le protocole de communication dfinit les rgles de communication utiliser pour
transmettre des donnes dun ordinateur un autre.
Cest pourquoi, dans le cadre de Windows XP, lors de linstallation de lOS, tout est mis
en place pour que lordinateur, sur lequel nous ralisons linstallation, puisse facilement
communiquer avec dautres ordinateurs se trouvant dans un rseau Microsoft, notamment dans le cadre du partage de fichiers ou dimprimantes, do linstallation de clients.
De mme si cet ordinateur peut aller chercher des fichiers ou des imprimantes partags,
il doit lui aussi proposer ce service aux autres ordinateurs, do linstallation de services.
Enfin pour que lensemble communique, il faut des protocoles installs de base, do
linstallation de protocoles.
k. Revenons notre installation de Windows XP. Une fois que les lments rseau par
dfaut sont installs, Windows vous propose den ajouter ou de paramtrer certains
dentre eux. Mieux vaut laisser le paramtrage par dfaut car cela peut se faire par
la suite.

127
8 3999 TG PA 01

Squence 3

l. La bote de dialogue qui apparat alors vous demande de saisir un nom de groupe
ou un nom de domaine. Pour le moment, donnez un nom de groupe ou laissez le
nom par dfaut car il est facilement modifiable ensuite.

Un domaine regroupe un ensemble d'ordinateurs qui partagent une base de donnes commune contenant toutes les informations de scurit sur les comptes "utilisateurs" (nom de connexion, mot de passe, les autorisations et les interdictions d'accs aux ressources partages sur le rseau, etc.). Cette base de donnes est situe
sur un ordinateur central appel le contrleur de domaine. Les autres ordinateurs
du domaine sont appels des membres.
Un groupe de travail est un regroupement logique d'ordinateurs mis ensemble
pour faciliter la navigation de l'un l'autre. Ainsi, lorsque l'on passe par favoris
rseau (voir plus loin dans cette squence), on visualise directement tous les ordinateurs faisant partie d'un groupe donn ou ceux faisant partie du mme groupe
que l'ordinateur sur lequel vous travaillez.
m. Aprs avoir cliqu sur le bouton Suivant de la fentre dont nous venons de parler,
Windows lance la phase finale de linstallation. Il installe les composants logiciel
dont il a besoin, les lments du menu Dmarrer , enregistre les paramtres et
supprime les fichiers temporaires.

128
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

n. A la fin de cette phase, lordinateur redmarre. Windows teste alors les qualits de
laffichage

o. Windows dmarre ensuite un nouvel assistant permettant de savoir comment nous


allons nous connecter Internet (En direct ou via un rseau). Ne vous inquitez
pas, le choix nest pas dfinitif et pourra tre modifi par la suite. Nous allons donc
passer toutes ces premires tapes jusqu arriver sur lcran permettant de crer le ou
les premiers comptes utilisateurs en local sur lordinateur. En fait, ce ou ces comptes
seront ajouts au compte Administrateur qui a t cr doffice lors de la premire
phase dinstallation.

les comptes ajouts cette tape le seront avec les mmes droits que ladmiO Tous
nistrateur. Il faudra donc ensuite modifier cela et surtout ajouter des mots de passe
(voir plus loin dans cette squence).

129
8 3999 TG PA 01

Squence 3

Remarque

Windows demande la cration dau moins un compte autre que celui de ladministrateur
car il ne faut jamais se connecter explicitement en administrateur, sauf ncessit, pour des
raisons de scurit et surtout ne jamais sabsenter en laissant la session administrateur
ouverte. Je vous rappelle que le compte Administrateur a tous les droits sur le poste et
que la premire personne malveillante qui voit un compte administrateur aura peut tre
envie de faire une farce et changer le mot de passe administrateur . Cest pourquoi,
Windows demande de crer dautres comptes.
p. Il ne reste plus qu terminer lassistant.
q. cette tape, si vous navez ajout quun seul compte utilisateur supplmentaire,
Windows ouvre alors une session utilisateur pour lutilisateur qui vient dtre cre et
affiche le bureau. Si par contre, nous avons cr plusieurs comptes supplmentaires
comme dans notre exemple, Windows affiche une fentre permettant de slection
lutilisateur partir duquel on souhaite ouvrir une session.

Windows XP Pro est un systme multi-utilisateurs , cela signifie que lordinateur peut
tre utilis par plusieurs personnes. Par consquent, il est primordial que pour utiliser les
ressources de celui-ci, un utilisateur soit oblig de sidentifier avec un nom de login et un
mot de passe. Cela permettra que chacun des utilisateurs puisse mettre en place son environnement personnel de travail (son profil). Nous verrons dans la suite comment ajouter
un mot de passe un compte utilisateur, comment modifier le groupe auquel appartient
lutilisateur et comment ajouter dautres comptes utilisateurs lorsque cela est ncessaire.

Les comptes utilisateurs sont crs par ladministrateur

130
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

r. Voil linstallation de Windows XP Pro est termin. Maintenant si nous slectionnons


un des comptes crs prcdemment, nous arrivons sur le bureau de lutilisateur.

3.

Dmarrage de Windows XP Pro


Intressons-nous maintenant au processus de dmarrage de Windows XP Pro. Voici les
grandes lignes de ce mcanisme. Une fois que lordinateur est mis sous tension, comme
nous en avons parl lors de la premire squence, le BIOS vrifie le bon fonctionnement
de son environnement matriel puis si tout va bien, il passe la main un bootloader
qui se trouve dans le secteur MBR de la partition active. Dans le cas de Windows, il sagit
de NTLDR (NT LoaDeR). Ce programme NTLDR commence par mettre en place un
mini systme de fichiers, une mini-arborescence de fichiers et de rpertoires, qui lui permet daccder au fichier boot.ini se trouvant la racine de larborescence des fichiers
de la partition active. Ce fichier peut contenir ventuellement un menu de dmarrage
offrant alors la possibilit lutilisateur de choisir de dmarrer sur un autre OS ou
partir dune autre partition contenant une autre installation de Windows. Attention si
NTLDR dtecte quil ny a quun seul choix, le contenu de boot.ini ne saffichera
pas. Si un autre systme dexploitation est slectionn, dans le menu qui apparat, ou
une autre version de Windows, NTLDR lui passe la main en lanant lexcution du
programme de boot de la partition contenant celui-ci.
Remarque

Si la ligne de boot.ini slectionne se rapporte une installation DOS, NTLDR lit


le contenu du fichier bootsect.dos .
Dans le cas o lutilisateur choisit de continuer sur le lancement de Windows XP,
NTLDR poursuit le dmarrage de Windows XP en lanant lexcution de ntdetect.
com . Ce dernier utilise le BIOS afin de rcuprer des informations basiques sur la configuration actuelle de lordinateur. Ce programme inscrit les informations trouves dans
la base des registres et redonne la main NTLDR .
Remarque

Nous reviendrons plus loin dans cette squence sur la notion de base des registres mais nous
pouvons dire pour linstant que les donnes de la base des registres sont places dans des
fichiers spcifiques.

131
8 3999 TG PA 01

Squence 3

Durant cette phase, Windows affiche trs rapidement voire subrepticement une barre
de progression et lutilisateur peut appuyer sur la touche F8 pour arriver sur un autre
menu de boot permettant par exemple de dmarre en mode sans chec ou de dmarrer sur la dernire bonne configuration connue.

NTLDR efface lcran puis poursuit son travail en chargeant en mmoire, mais sans
lexcuter, le fichier NToskrnl.exe qui se trouve dans le sous-rpertoire system32
contenu dans le rpertoire dinstallation de Windows XP puis en chargeant la DLL HAL.
DLL qui permet de masquer lOS, et aux dveloppeurs, les diffrences matriels dun
ordinateur lautre. On fait appel des fonctions se trouvant dans ce fichier sans avoir
se proccuper de la nature du matriel qui compose lordinateur (HAL
Hardware
Abstraction Layer) Ces deux fichiers constituent le noyau NT du systme.
Pour finir, NTLDR lit les donnes concernant le matriel se trouvant dans la base des
registres, poursuit lanalyse du matriel install et charge les divers drivers ncessaires.
Pendant ce temps l, un cran nous fait patienter.

la fin de la phase de chargement des diffrents lments prcits, NTLDR passe la


main NToskrnl.exe qui termine la phase de dmarrage en lanant les diffrents
programmes et services dont le systme a besoin pour son fonctionnement puis en initialisant diffrents paramtres systmes. Une fois le dmarrage termin, dautres programmes se mettent en place notamment pour afficher la fentre didentification permettant
un utilisateur dentrer son login et son mot de passe.

132
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Cet cran de dmarrage peut se prsenter de manires diffrentes si le paramtrage de


Windows a t modifi en ce sens. Ainsi nous pouvons obtenir lcran douverture de
session classique que voici :

Nous verrons plus loin comment choisir lun ou lautre des crans douverture de session dans
le paragraphe consacr au panneau de configuration. Voil, nous nirons pas plus loin dans
le descriptif de ce dmarrage. Si le cur vous en dit, vous pouvez avoir des complments
dinformation en tapant dmarrage de Windows XP dans un moteur de recherche.
Remarque

Le fichier boot.ini , dont nous avons parl prcdemment, est un fichier texte en mode
cach se trouvant la racine de larborescence des fichiers. Il peut tre ouvert laide de
Notepad (le bloc-note) et il contient diffrentes lignes de paramtres. Il est utile en cas de
multiboot ou si lon souhaite avoir accs diffrents modes de dmarrage de Windows.
Voici un exemple de code et une capture dcran montrant le rsultat :
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINNT=Microsoft Windows 2000 Professionnel /fastdetect
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS=Microsoft Windows XP Professionnel /fastdetect

133
8 3999 TG PA 01

Squence 3

Nous avons deux sections :


La section Boot loader dfinit l'lment lancer par dfaut avec un TimeOut
pour automatiser le lancement.
La section operating systems dfinit les lments du menu.
Rdisk(0) : dsigne le premier disque physique. On compte partir de 0.
Partition(1) : dsigne le numro de partition sur laquelle est install le systme
dexploitation. On compte partir de 1.
On dsigne ensuite le rpertoire o se trouve les lments ncessaires au boot et
enfin le texte du menu qui doit apparatre.

Bien entendu, boot.ini est un fichier systme cach. Pour le voir apparatre, il faut
modifier les options daffichage du poste de travail galement appel explorateur de
fichiers (voir plus loin dans cette squence).
Une dernire prcision. Si vous avez une partition Linux et que vous voulez faire du multiboot, il faut mieux passer par lun des bootloader de Linux et leur menu (exemple: LILO
et GRUB) que par le fichier boot.ini . Windows nest pas trs copain avec Linux mais
linverse ne pose pas de problme.

4.

tude de linterface graphique de Windows XP Pro


Dans ce paragraphe, nous allons prsenter linterface de Windows XP Pro. Aprs la mise
sous tension de lordinateur et les tests dusage sur le matriel (voir dmarrage de
Windows XP Pro prcdemment), Windows XP Pro est charg en mmoire. Lorsque ce
dernier a fini de sinitialiser, il affiche une fentre vous permettant de vous identifier.
Pour ouvrir une session Windows XP , il est ncessaire que ladministrateur ait
cr auparavant le compte. dfaut, vous pouvez utiliser le compte administrateur mais il faut mieux viter cela car il est possible de faire tout et nimporte
quoi sur ce compte.

134
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

4A.

Le bureau
Aprs avoir saisi votre login et votre mot de passe, le bureau de Windows saffiche. Il peut
prendre deux prsentations. La premire est plus lgre et ne prsente que les lments
que vous avez dcider dy placer. La deuxime est une prsentation classique la Windows
2000 qui permet dafficher au minimum les lments essentiels de Windows comme
Poste de travail , Favoris rseau et un accs direct au dossier Mes documents .

Image 1

Image 2

Remarque

Pour simplifier la lisibilit des captures dcran, jai enlev limage de fond dcran. Nous
verrons comment faire plus loin dans ce support.
Nous avons introduit prcdemment le terme de bureau . Mais quest-ce donc que
le bureau de Windows ? Le bureau est un espace de travail sur lequel lutilisateur peut
placer des outils, des documents (des fichiers) ou des rpertoires (appels des dossiers
sous Windows) auxquels il souhaite accder rapidement car il en a souvent besoin. De
manire gnrale, le bureau de Windows a pour vocation de :
pouvoir afficher les icnes ou les raccourcis des applications (des programmes) les
plus courants ;
afficher les icnes des dossiers ou des fichiers souvent ouverts ;
afficher la barre de tches qui est le tableau de bord de Windows. Elle permet d'accder au menu de base de Windows, d'accder des raccourcis de programmes ou
d'utilitaires de paramtrage mais galement de visualiser les programmes utilisateurs en cours d'excution.
Avant de poursuivre, revenons un instant sur la notion de raccourci. Un raccourci est un
petit fichier qui contient le chemin permettant d'atteindre le fichier document , le
fichier excutable ou le dossier (rpertoire) auquel il renvoie. Cela permet de pouvoir
mettre en place plusieurs points d'accs un fichier, un programme ou un dossier
sans avoir besoin de dupliquer ces derniers.

135
8 3999 TG PA 01

Squence 3

Remarques

Supprimer un raccourci n'entrane pas la suppression du fichier ou du dossier correspondant.


Un raccourci est reconnaissable par la flche visible en bas gauche de son icne.
Exemple :

Tous les lments du menu Dmarrer sont en thorie des raccourcis.


En faisant un clic droit sur un raccourci, on accde un menu contextuel qui permet
d'accder aux proprits du raccourci.
Pour crer un raccourci, il existe plusieurs mthodes dont une en particulier qui
consiste effectuer un clic droit pour faire apparatre un menu contextuel dans
lequel on slectionne [Nouveau] [Raccourci].
Maintenant, dtaillons visuellement les lments possibles d'un bureau.
Les icnes
raccourcis
Les icnes
de base
Icne
Dossier

La barre
des tches

Les lments affichs sur la capture dcran ne sont que des exemples. Sur votre bureau,

O il peut y avoir moins ou plus dlments.

Voyons plus en dtail les icnes de base de notre exemple. Attention, ces icnes
apparaissent soit parce que vous tes dans le mode classique daffichage du bureau
soit parce que vous les avez ajouts. Nous verrons plus loin comment ajouter ces
icnes le cas chant. Ces icnes cachent des fonctionnalits dont nous allons parler
maintenant.
Nous ne dtaillerons pas toutes les possibilits.

136
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Icne

Description
Le Poste de travail permet dafficher dans une fentre toutes les icnes lecteur
qui reprsentent les lecteurs accessibles depuis votre ordinateur (lecteur de disquette,
de disque dur, de CD-ROM, lecteur rseau, Cl USB), Il permet galement datteindre des
dossiers partags ou le contenu du dossier personnel de lutilisateur. partir du poste de
travail, on peut donc atteindre un fichier ou un rpertoire (dossier) sur lun des lecteurs
ou lun des rpertoires spcifis mais galement les grer. On peut crer un dossier (un
rpertoire, renommer un fichier ou un dossier, dplacer ou copier des fichiers ou encore
faire des recherches.

Dans notre exemple, nous avons un lecteur de disquette, deux disques et un lecteur de
CD-ROM. En double-cliquant sur lune des icnes Lecteur , Windows affiche le contenu
du lecteur cliqu.
partir de cette fentre, on peut accder rapidement dautres parties de Windows
comme le panneau de configuration ou encore les informations systmes mais galement
les favoris rseau ou encore le dossier Mes documents .
La manire dont les informations sont affiches sont paramtrables par lintermdiaire
des diffrents menus notamment [Affichage] et [Outils] [Options des dossiers]
Cette icne permet douvrir une fentre permettant de raliser des actions rseau de
premier niveau. Les actions accessibles sont listes sur la partie gauche de la fentre
Favoris rseau . Ainsi, partir de cette fentre, il est possible de :
mettre en place un lien vers un espace de stockage (un dossier partag) se trouvant
sur un autre poste du rseau voire sur le Web. Ce lien se met en place via un
assistant qui se dclenche en cliquant sur Ajouter un favori rseau ;
placer votre ordinateur dans un rseau local. Cela se fait laide dun assistant qui
se dclenche en cliquant sur Crer un rseau domestique ou un rseau de petite
entreprise ;
configurer votre ordinateur pour prendre place dans un rseau WIFI. Cela se fait
laide dun assistant qui se dclenche en cliquant sur Configurer un rseau sans fil
pour la maison ou une petite entreprise ;
paramtrer le protocole TCP/IP afin que votre ordinateur puisse accder
dautres rseaux ou Internet. Il ny a pas dassistant. Il faut passer par Afficher
les connexions rseau ;
obtenir la liste des ordinateurs se trouvant sur le rseau pour ventuellement
atteindre des dossiers ou des imprimantes partags se trouvant sur ces ordinateurs.
Il faut passer par Voir les ordinateurs du groupe de travail .

137
8 3999 TG PA 01

Squence 3

Exemple

Nous reviendrons sur tout cela plus loin dans cette squence. Pour linstant nous
observons linterface de Windows XP.
La corbeille contient les fichiers supprims, ce qui permet ventuellement de
rcuprer des fichiers supprims par erreur. En cliquant avec le bouton droit de la souris
sur la corbeille, il est possible de slectionner la commande [Vider la corbeille] dans le
menu contextuel qui apparat. Attention, une fois que la corbeille a t vide, les fichiers
sont supprims dfinitivement. Pour rcuprer un fichier se trouvant dans la corbeille,
il suffit douvrir la corbeille en double-cliquant dessus, slectionner le ou les fichiers
restaurer puis [Fichier] [Restaurer].
Le dossier Mes documents est un raccourci vers un dossier du mme nom cr par
dfaut dans lequel lutilisateur est sens stocker ses documents personnels.

4B.

La barre des tches


La barre des tches prsente le bouton
qui donne accs au menu
Dmarrer de Windows XP. Ce menu peut avoir deux prsentations possibles en fonction du choix de lutilisateur de rester ou non en prsentation classique type Windows
2000 (voir Image 2).

Image 1

Image 2

138
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Pour passer de lun lautre des modes daffichage du menu Dmarrer , il suffit de faire un clic-droit sur le bouton Dmarrer afin de faire apparatre un menu contextuel.
Dans ce dernier, on slectionne [Proprits], onglet Menu Dmarrer et enfin faire le
choix entre Menu Dmarrer ou Menu Dmarrer classique .
Dans lun ou lautre des modes, le menu Dmarrer permet de raliser un certain nombre dactions. En voici quelques unes.
Le menu Arrter lordinateur
Ce menu propose un ensemble de commandes permettant darrter lordinateur proprement, de le rebooter (le redmarrer) ou de le mettre en vieille.

Le menu Fermer la session


Ce menu propose un ensemble de commandes permettant de fermer le session en cours
ou de basculer sur une autre session. Le fait de basculer de session (appel bascule
rapide de session ) permet de ne pas fermer les applications de la session en cours. Ainsi
lorsque lutilisateur reviendra s ur sa session, il retrouvera ses applications telles quil les
a laisses. Attention, il ne faut pas que votre ordinateur soit dans un domaine pour avoir
la possibilit de Bascule rapide de session .

Le menu Excuter
Ce menu permet de lancer un programme pour lequel il ny a pas dicne installe. En
gnral, on passe par cette option pour lancer un programme dinstallation qui se trouve sur une disquette ou un CD-ROM ou linterprteur de commande DOS ( cmd.exe).
Le menu Rechercher
Permet de rechercher des fichiers ou des dossiers qui rpondent un critre de recherche. Ce critre de recherche peut tre un nom, une extension, une date de cration ou
de modification ou encore une taille. Cette option de Recherche permet galement
de rechercher un nom dordinateur particulier qui se trouve connect sur le rseau et sur
lequel on souhaite atteindre des dossiers (rpertoires) partags.
Le menu tous les programmes
Appel programmes dans la version classique du menu Dmarrer , permet de
visualiser la liste des programmes installs sur votre disque dur pour dclencher celui qui
vous intresse. La liste des programmes proposs est modifie de manire automatique

139
8 3999 TG PA 01

Squence 3

lorsquon ajoute un nouveau logiciel, mais elle peut tre aussi modifie manuellement
en y plaant des raccourcis de programmes ou de dossiers par la mthode souris Glisser
/ Dposer (Drag And Drop). Si le programme que vous voulez lancer ne se trouve pas
dans la liste, vous pouvez le lancer partir de lexplorateur (poste de travail) ou partir
du menu Excuter du bouton Dmarrer .
La mthode Glisser / Dposer (Drag And Drop) consiste cliquer et maintenir
le clic sur llment concern, dplacer la souris vers la destination puis lcher
le bouton de la souris lendroit souhait afin dy dposer llment considr.
Le menu Panneau de configuration
inclus dans le menu Paramtres en version classique du menu Dmarrer , permet
de paramtrer Windows XP (voir plus loin dans cette squence).
Loption Mes documents rcents
Appel Documents dans la version classique du menu Dmarrer , permet de visualiser la liste des derniers documents ouverts. Si le document sur lequel vous voulez travailler
se trouve dans la liste, il suffit de cliquer dessus et Windows XP dclenchera lapplication
concerne et ouvrira le document cliqu. Cette liste peut tre efface en passant par le
menu contextuel [Proprits] du bouton Dmarrer , onglet Menu Dmarrer , bouton Personnaliser , onglet Avanc et enfin bouton Effacer la liste .

Pour atteindre le menu contextuel du bouton Dmarrer, il suffit de faire un


clic-droit sur le bouton Dmarrer
ct du bouton Dmarrer , la barre des tches affiche la liste des programmes utilisateur en cours dexcution sous forme de boutons de commande. Il y a un bouton par
programme en cours dexcution. Bien entendu, un seul de ces programmes est actif la
fois, cest dire quil se trouve au premier plan et peut ragir aux actions clavier et
souris . Celui-ci est reprsent par un bouton enfonc. Pour activer un programme qui
se trouve dans la barre des tches et donc le placer au premier plan, il suffit de cliquer sur le
bouton souhait ou encore dutiliser la squence de touches clavier : Alt + Tabulation.
Remarque

Sil ny a plus assez de place sur la barre des tches pour afficher lensemble des programmes en cours dexcution, Windows va alors regrouper les programmes de mme type sous
forme de listes de choix de manire les positionner la verticale. Il suffira ensuite douvrir
la liste de choix et faire la slection du programme rendre actif.

Continuons lexploration de la barre des tches. droite, on trouve une horloge qui, en
double-cliquant dessus, permet de mettre jour la date et lheure systme de lordinateur sauf restriction de la part de ladministrateur.
ct de lhorloge, on peut y voir la prsence dicnes spciales comme le son, licne
dun antivirus ventuellement, licne permettant djecter des connexions USB, etc.
Ces icnes sont l pour notifier la prsence ou non dun lment particulier ou accder
rapidement au paramtrage dun logiciel spcifique votre ordinateur. Il est possible
140
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

dagir sur ces icnes, et donc llment ou le logiciel associ, avec un double-clic ou un
clic-droit suivant les cas.
La barre des tches possde galement des barres doutils que lon peut faire apparatre
ou disparatre, laide du menu contextuel de la barre des tches, voire complter avec
des raccourcis sur des applications que lon fait glisser lintrieur laide de la souris.
Remarque

Si on ralise lopration glisser en maintenant la touche Ctrl, Windows duplique le


raccourci.

Pour faire apparatre le menu contextuel de la barre des tches, il faut :


amener la souris sur la barre des tches mais attention, en dehors des boutons de
la barre de tches ;
cliquer avec le bouton droit de la souris.

partir de ce menu contextuel, on peut donc faire apparatre ou disparatre des barres
doutils, par exemple la barre Lancement rapide qui permet dy placer, par la mthode glisser, nos propres raccourcis dapplications auxquelles on veut accder rapidement.
Cela peut savrer trs intressant. Ce menu contextuel permet galement dafficher le
gestionnaire des tches pour arrter une application qui ne rpond plus. Nous nirons
pas plus loin dans lutilisation de la barre des tches car aprs, il faut pratiquer pour voir
les effets des diffrentes options.
Remarque

Pour paramtrer la barre des tches, il faut utiliser [Proprits] du menu contextuel.

141
8 3999 TG PA 01

Squence 3

4C.

Les constituants dune fentre Windows


Windows prsente une interface utilisateur graphique (ou GUI pour Graphic User
Interface ) proposant un systme de fentrage, un menu fixe ou flottant, diffrents
objets graphiques (Icne, zone de saisie, boutons, barres de dfilement.... ) manipulables
directement lcran avec le clavier ou la souris. Dune manire gnrale, une fentre
se compose de :

Barre de titre

Boutons de rduction ,
Agrandissement et
Fermeture

Menu
systme
Barre de
Menu
Barres
d'outils

Barre
d'tat

lment
Menu systme
Barre de titre
Boutons de rduction, agrandis-sement et
fermeture

Description
Propose un menu pour fermer, dplacer ou agrandir la
fentre en cours. Un double-clic sur cette icne ferme la
fentre concerne.
Contient le nom du programme avec en plus parfois dautres
informations comme le nom du document en cours.
Permet de rduire la fentre afin de faire apparatre les
lments masqus par cette dernire.

Barre de menu

Contient le menu des commandes possibles. Ce menu est


variable en fonction de lapplication excute dans la fentre.

Barres doutils

Propose, sous forme dicnes, les commandes du menu les


plus courantes.

Barre dtat

Affiche des informations utiles sur ltat dans lequel se trouve


lapplication concerne par la fentre.

142
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Les applications Windows proposent des botes de dialogue contenant dune manire
gnrale un ensemble dobjets dont voici quelques exemples :
Objet

Description
Il sagit dune zone de texte permettant
lutilisateur de fournir une information.
Groupe doptions. Lutilisateur peut
slectionner une seule des options. Un
groupe doptions regroupent un ensemble
de boutons radio dont chacun est
associ une option possible.
Ensemble de cases cocher. Lutilisateur doit
cliquer lintrieur du carr pour activer ou
dsactiver loption associe.

Bouton de commande. Cet objet permet de


dclencher une action. Par exemple dans
notre cas, le bouton OK peut permettre
de valider des choix effectus dans une
bote de dialogue associe ou encore
confirmer le fait que lon est bien lu un
message affich par Windows.
Liste droulante de choix. Cet objet permet
de slectionner une valeur, partir dune
liste qui apparat lorsque lon clique sur le
bouton flche vers le bas se trouvant
lextrmit droite.
Liste de choix. la diffrence de lobjet
prcdent, la liste est dj droule et elle
permet parfois de slectionner plusieurs
lments en mme temps. Lorsque le
nombre dlments affichs dans la liste
dpasse la taille de lobjet, Windows fait
apparatre une barre de dfilement verticale
permettant de faire dfiler les autres valeurs
de la liste.
Il sagit dun champ dfilant qui permet
dincrmenter ou de dcrmenter une
valeur laide dune molette de rglage
flche.

143
8 3999 TG PA 01

Squence 3

Chaque application propose un menu dont


les entres principales sont dfinies dans
la barre de menu (voir prcdemment).
Chaque entre regroupe un ensemble de
commande par thme. Chaque commande
est lie une action ou parfois un
sous-menu. Pour lancer lexcution dune
commande, il suffit de cliquer dessus ou
taper Alt + lettre souligne de lentre
du menu puis taper la lettre souligne
de la commande souhaite. Il existe pour
certaines commandes des squences de
touches de raccourcis, spcifies ct de
la commande liste. Dans ce cas, il suffit
dexcuter le raccourci pour lancer la
commande associe.
Les infos bulles apparaissent lorsque
lutilisateur laisse la souris quelques instants
sur un lment de la fentre afin de
rappeler brivement sa fonctionnalit.
Menu contextuel. Il sagit dun menu qui
apparat lorsque lutilisateur clique avec le
bouton droit de la souris sur un lment de
la fentre Windows. Un menu contextuel
affiche un ensemble de commandes
possibles dont la liste dpend de la nature
de lobjet sur lequel on clique.

Les onglets. Une boite de dialogue peut


contenir de nombreuses informations qui
se rpartissent en plusieurs pages . Pour
passer de lune lautre, il suffit demployer
les onglets.

Windows a la possibilit dvoluer et donc de voir ces diffrents objets cits prcdemment voluer. De plus, certains dveloppeurs ont ajout des objets qui leur sont propres
travers bien souvent des DLL. Aussi, nous allons en rester l.

4D.

Gestion des fentres Windows


Prcdemment, nous avons indiqu qu droite de la barre de titre, il y avait des icnes
particuliers. Voici une explication rapide de leur utilit. Dans lordre dapparition, nous
avons :
Icne reduction permet de rduire la taille de la fentre concerne le temps
d'excuter une autre application windows. La fentre rduite est place dans la
barre des tches. (Pour l'agrandir de nouveau, il suffit de cliquer sur le bouton correspondant dans la barre des tches).
Icne agrandissement permet d'agrandir la fentre laquelle il appartient
au maximum de l'cran (mode Plein cran ) ou de lui redonner sa taille initiale
(Mode Fentre ). Lorsque l'cran est au maximum, l'icne se transforme en une
double fentre.

144
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Mode Fentre

Mode Plein cran


Icne fermeture permet de fermer la fentre laquelle il appartient
Lorsque plusieurs fentres occupent lcran, il peut tre parfois intressant de dplacer
les fentres pour viter quelles ne se masquent mutuellement. Pour cela, il suffit :
damener la souris dans la barre de Titre de la fentre dplacer ;
de cliquer avec le bouton gauche de la souris et maintenir le clic ;
de faire glisser la souris dans le sens dsir ;
de lcher le bouton gauche de la souris.
De mme, il est possible dagrandir ou de rtrcir la taille dune fentre laide de la
souris. Pour cela :
amener la souris sur lun des bords de la fentre modifier ou sur lun des quatre
coins de cette mme fentre (La souris se transforme en une Double-Flche) ;
cliquer avec le bouton gauche de la souris et maintenir le clic ;
faire glisser la souris dans le sens dsir. Un cadre suit le mouvement de la souris ;
lcher le bouton gauche de la souris.
La barre des tches peut tre galement utilise pour rorganiser les fentres dans le cas
o toutes les fentres ouvertes se superposent. Pour cela, il suffit de faire apparatre le
menu contextuel de la barre des tches qui proposent :
[mosaque horizontale] : place les fentres les unes en dessous des autres.
[mosaque verticale] : place les fentres les unes ct des autres.
[Cascade] : place les fentres l'une derrire l'autre.
[Afficher le bureau] : rduit toutes les fentres ouvertes de manire afficher le
bureau.

4E.

Dmarrer un programme sous Windows XP Pro


Pour lancer un programme sous Windows XP, il existe au moins quatre possibilits:
Premire possibilit : par le menu Dmarrer . Cette solution consiste cliquer sur
le bouton Dmarrer puis [Tous les programmes]. Il ne reste plus qu cliquer le programme souhait. Rappel : dans le cas o le menu Dmarrer est affich en mode
classique, il faut cliquer sur le bouton Dmarrer puis [Programmes].
Remarque

Les lments qui se terminent par un symbolle indiquent que lon accde une autre
liste de choix.
Deuxime possibilit : par le bouton Dmarrer puis [Excuter]. Il suffit ensuite de
taper le nom du programme ainsi quventuellement le chemin pour latteindre. Si vous
ne connaissez pas le chemin, cliquez sur le bouton Parcourir pour indiquer le chemin
jusquau programme en cliquant sur les diffrents dossiers concerns ainsi que sur le
nom du programme. Validez la fin.
145
8 3999 TG PA 01

Squence 3

Troisime possibilit : utiliser le poste de travail (voir prcdemment dans cette


squence). Il ne reste plus qu chercher lemplacement du fichier excutable associ
au programme et lancer son excution.
Quatrime possibilit : utiliser un raccourci se trouvant sur le bureau associ au fichier
excutable souhait. Pour mettre en place un tel raccourci, il suffit de cliquer avec le
bouton droit de la souris sur le bureau, prendre [Nouveau] dans le menu contextuel qui
apparat, puis [Raccourci]. laide de la bote de dialogue qui apparat, slectionnez le
nom du programme que vous souhaitez associer au raccourci.

4F.

Arrter un programme ou le gestionnaire des tches


Pour arrter un programme sous Windows XP Pro avant son terme normal, il faut
employer la squence de touches Ctrl + Alt + Suppr . Windows fait alors apparatre la
fentre suivante :

En cliquant sur longlet Application , nous pouvons voir la liste des applications en
cours dexcution. il ne reste plus qu slectionner le programme arrter et cliquer
sur le bouton Fin de tche . Au bout de quelques instants le programme slectionn
sarrte.
Remarques

Dans la fentre prcdente, nous visualisons uniquement les programmes dont l'excution a t ordonne par l'utilisateur courant. Cependant, partir de cette mme boite de
dialogue Gestionnaire des tches et de l'onglet Processus , nous pouvons lister tous
les programmes en cours d'excution (appels processus) mme s'ils sont dvolus l'OS et
obtenir des informations sur ceux-ci.
L'onglet Performances donne des informations sur l'tat du systme par rapport
l'occupation de la mmoire et du processeur.

146
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

L'onglet Mise en rseau offre une reprsentation graphique des performances du


rseau. Il montre le niveau de fonctionnement de la ou des cartes rseau contenue(s)
dans votre ordinateur. Bien entendu, cet onglet s'affiche uniquement si votre ordinateur
est quip d'une carte rseau.
L'onglet Utilisateurs ne s'affiche que si vous avez activ la bascule de session rapide sur
votre ordinateur (voir le paragraphe sur le panneau de configuration dans cette squence). Il
affiche la liste des utilisateurs ayant actuellement une session ouverte sur l'ordinateur.

La boite de dialogue Gestionnaire des tches de Windows peut galement apparatre


avec un click-droit dans la barre des tches, en dehors de toute icne, afin de faire apparatre un menu contextuel dans lequel on slectionne [Gestionnaire des tches].

5.

Gestion des fichiers et dossiers

5A.

Des gnralits
Avant de commencer, nous allons apporter une prcision. La notion de dossier sous
Windows correspond la notion de rpertoire sous MS-DOS (voir la squence sur MSDOS dans ce support). Ne vous inquitez donc pas si lun ou lautre des termes est
employ dans les explications qui vont suivre.
Sous Windows, la gestion des fichiers et des rpertoires (dossiers) se fait de manire graphique, vous vous en doutiez. Il existe en fait, deux fentres graphiques, permettant de
grer les fichiers et les rpertoires, qui se ressemblent trangement.
La premire fentre apparat lorsque lon active le Poste de travail . Une fois que la
fentre Poste de travail est ouverte, en cliquant dans le menu [Affichage] [Volet dexploration] [Dossiers], lutilisateur peut faire apparatre larborescence des dossiers (des
rpertoires) de lun ou lautre des disques dans la partie gauche de la fentre et circuler
ensuite lintrieur. Cela permet de laisser la partie droite de la fentre libre afin de faire
apparatre les fichiers du dossier slectionn dans la partie gauche.

147
8 3999 TG PA 01

Squence 3

Cette fentre peut apparatre galement en appuyant sur la squence de touches :

La deuxime fentre apparat lorsque lon fait appel lexplorateur Windows. Cette
dernire est accessible par le bouton Dmarrer puis [Programmes] [Accessoires]
[Explorateur Windows].
Remarque

Il peut exister sur votre ordinateur dautres icnes de raccourcis associes lexplorateur ou
au poste de travail.

Voici un exemple de la fentre Poste de travail avec le volet Dossiers ouvert.

Dune manire gnrale, dans la partie gauche de la fentre, on y trouve larborescence


des dossiers, cest dire lenchanement des dossiers et des sous-dossiers. Dans la partie
droite de la fentre, on trouve la liste des fichiers et des sous-dossiers contenus dans le
dossier slectionn dans la fentre de gauche.

Si la partie gauche nest pas visible, il faut passer par le menu [Affichage] [Volet
dexploration] [Dossiers].

148
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Remarques

Les lecteurs sont considrs comme des dossiers particuliers, c'est pourquoi ils apparaissent dans la liste des dossiers (fentre de gauche).
L'arborescence commence partir du Bureau . En effet, il faut vous reprsenter assis
votre bureau de travail. partir de celui-ci, vous pouvez ouvrir des tiroirs que l'on peut voir
comme les lecteurs de disque ou encore ouvrir des dossiers que vous auriez pos dessus afin
d'y avoir rapidement accs. Attention, toutefois, dans une commande systme ou dans une
bote de dialogue, si vous devez prcisez le chemin absolu pour atteindre un fichier ou un
dossier, ce chemin se dcrit partir du dossier principal ( \ ) du lecteur considre. Si le
lecteur considr n'est pas le lecteur courant, il faut prciser son nom au dbut du chemin
(Ex: C:\MonRep\Budget07.xls). En rgle gnrale, l aussi Windows fournit un bouton
Parcourir qui permet de slectionner le fichier ou le dossier concern de manire graphique.
Les documents, les dossiers, les fichiers excutables et les raccourcis placs dans le
dossier bureau apparaissent automatiquement sur le bureau de Windows.
Le dossier Documents and Settings du lecteur principal est le dossier dans lequel sont

Remarque

Tous les dossiers ou toutes les icnes placs dans le dossier Bureau du All User
apparatront automatiquement sur le bureau de chacun des utilisateurs.

Revenons notre fentre Poste de travail avec son volet Dossiers ouvert. Dans la
partie gauche de la fentre, on peut remarquer quil y a des + . En fait, larborescence
pouvant tre importante en taille, Windows ne prsente pas toujours doffice la totalit
des dossiers et des sous-dossiers. Ainsi, certaines branches de larborescence peuvent tre
dveloppes alors que dautres non. Il existe une certaine codification pour traduire cela.

149
8 3999 TG PA 01

Squence 3

Voici un exemple :
Tous les sous-dossiers sont affichs

Il n'y a pas de sous-dossier

Il y a des sous dossiers non affichs

En conclusion :
avec le signe + : le dossier contient des sous-dossiers non affichs. On peut donc
en voir Plus ;
avec le signe - : Tous les sous-dossiers immdiatement en dessous, du dossier
concern, sont affichs. On peut en voir Moins ;
pour dvelopper un dossier ou pour rduire un dossier, il suffit de cliquer sur le signe
+ ou - .
Comme nous en avons dj parl dans le cadre de MS-DOS, les fichiers et les dossiers
(rpertoires) peuvent avoir des attributs comme lecture seule, cach ou fichier systme .
Pour modifier les proprits dun fichier ou dun dossier, il faut faire un click-droit dessus
puis slectionner le menu [Proprits] dans le menu contextuel qui apparat. De plus, il
est possible de demander Windows dafficher les extensions des fichiers ou encore afficher les fichiers/dossiers cachs ou les fichiers systmes en passant par le menu [Outils]
[Options des dossiers] puis en slectionnant lune ou lautre des options proposes.
Windows est trs riche en possibilits permettant de crer, supprimer ou renommer des
dossiers. De mme, il existe quantit de possibilits pour copier, dplacer, supprimer ou
renommer des fichiers. Les diffrentes solutions peuvent se faire partir du clavier ou
laide de la souris. En voici quelques-unes car nous nallons pas toutes les dtailler.

5B.

Crer un dossier
a) Dans la partie gauche de la fentre que nous appellerons le volet des dossiers, cliquez
sur le dossier Pre , cest dire le dossier qui va contenir le nouveau dossier cr.
b) Dans le menu de lexplorateur, slectionnez [Fichier] [Nouveau] [Dossier] ou avec
la souris, cliquez avec le bouton droit de la souris dans la partie droite de la fentre
puis dans le menu contextuel, prenez [Nouveau] [Dossier].
c) Donnez un nom ayant au maximum 255 caractres (espaces autoriss).
d) Validez.

150
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Remarque

En appuyant sur la touche F5 ou [Affichage] [Rafrachir], Windows place le nouveau


dossier sa place, bien que cela sera fait automatiquement lorsque vous reviendrez ultrieurement sur le dossier Pre .

5C.

Renommer un dossier
a) Slectionnez le dossier concern indiffremment dans la partie gauche (volet des dossiers) ou droite de la fentre de lexplorateur ou du poste de travail.
b) Trois possibilits soffrent nous pour indiquer Windows que nous voulons renommer ce dossier.
1 [Fichier] [Renommer]
2 Click-droit sur le nom du fichier puis [Renommer]
3 Un seul click Gauche sur le nom du Dossier
c) Donnez le nouveau nom (Max 255 caractres, espaces autoriss).
d) Validez.
Remarque

Cette procdure est galement valable pour renommer des fichiers mise part le fait quil
faut le faire partir de la partie droite de la fentre, cest--dire partir de la liste des
fichiers et des sous-dossiers.

5D.

Supprimer un dossier et son contenu


a) Slectionnez le dossier supprimer.
b) [Fichier] [Supprimer] ou click-droit sur le dossier puis [Supprimer].
c) WINDOWS demande une confirmation.
Remarques

1. Les dossiers et les sous-dossiers sont envoys dans la corbeille, ce qui nous permet de
rcuprer les documents en cas derreur.
2. Immdiatement aprs la suppression, si vous vous rendez compte que vous vous tes
tromp, Windows offre la possibilit dannuler lopration en slectionnant dans le menu
[Edition] [Annuler Supprimer].
3. Cette procdure est galement valable pour supprimer des fichiers mise par le fait quil
faut le faire partir de la partie droite de la fentre, cest--dire partir de la liste des
fichiers et des sous-dossiers.
4. Pour supprimer les fichiers ou le dossier slectionn, il est possible de faire glisser la slection vers le dossier Corbeille qui se trouve dans la partie gauche de la fentre (volet
des dossiers) ou vers licne Corbeille qui se trouve sur le Bureau .

151
8 3999 TG PA 01

Squence 3

5. Pour rcuprer un fichier ou un dossier supprim, il faut se placer dans le dossier


Corbeille (Partie gauche de la fentre Explorateur ) puis faire glisser le fichier dans
un autre dossier. On peut aussi aller directement dans la corbeille et restaurer llment
supprimer par erreur.
6. Pour vider la corbeille et donc liminer les fichiers et les dossiers de manire dfinitive,
il suffit de cliquer bouton droit sur la corbeille puis de prendre [Vider la Corbeille] dans le
menu contextuel.
7. Si vous appuyez sur les touches Shift + Suppr, aprs avoir slectionn un dossier ou plusieurs fichiers. Windows supprime les fichiers dfinitivement sans les envoyer dans la corbeille.

5E.

Slectionner des fichiers


Pour Supprimer, Dplacer ou Recopier plusieurs fichiers en mme temps, il faut dabord
commencer par les slectionner. Pour cela, il existe plusieurs solutions.
Slectionner plusieurs fichiers contigus
a) Cliquez sur le premier fichier de la slection dans la fentre de droite.
b) Appuyez sur la touche majuscule (Shift) en la maintenant enfonce.
c) Cliquez sur le dernier fichier de la slection. Les fichiers slectionns apparaissent en
inverse vido.
d) Lchez la touche majuscule (Shift) la fin de lopration.
Slectionner plusieurs fichiers non contigus
a) Slectionnez le premier fichier en cliquant dessus.
b) Appuyez sur la touche CTRL en la maintenant enfonce.
c) Cliquez sur tous les fichiers slectionner (ou dslectionner) sans lcher la touche
CTRL. Les fichiers slectionns apparaissent en inverse vido.
d) Lcher la touche CTRL la fin de lopration.
Slectionner tous les fichiers
a) Slectionnez le dossier concern dans la partie gauche de la fentre (volet des dossiers).
b) [Edition] [Slectionner tout].
Dslectionner un fichier
a) Appuyez sur la touche CTRL en la maintenant enfonce.
b) Cliquez sur tous les fichiers dslectionner sans lcher la touche CTRL.
c) Lchez la touche CTRL la fin de lopration.
Remarque

Pour dslectionner tous les fichiers en une fois, cliquez de nouveau sur nimporte quel fichier.

152
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

5F.

Dplacer ou copier un dossier ou des fichiers


1re mthode : faire glisser la slection vers le dossier destination . Ce dossier destination est visible dans la partie gauche de la fentre de lexplorateur.
Remarque

Durant lopration glisser


En amenant la souris en haut du volet des dossiers (fentre gauche), Windows fait dfiler
automatiquement la liste des dossiers vers le haut. Il en va de mme si on amne la souris
en bas du volet des dossiers.
En amenant la souris l'intrieur du volet des dossiers sur un dossier accompagn d'un signe
+ , Windows affiche automatiquement ses sous-dossiers au bout d'un certain dlai.

Dans le cas o le dossier de dpart et le dossier d'arrive sont sur la mme unit

O de disque, Windows ralise automatiquement une opration Dplacer . Dans ce

contexte, si vous souhaitez faire une opration Copier , il suffit de maintenir la


touche Ctrl enfonce durant l'opration.
Dans le cas o le dossier de dpart et le dossier d'arrive sont sur deux units de
disque diffrentes, Windows ralise automatiquement une opration Copier .
Dans ce contexte, si vous souhaitez faire une opration Dplacer , il suffit de
maintenir la touche Shift (Majuscule) enfonce durant l'opration.
2e mthode : utiliser la mthode Copier / Coller ou Couper / Coller soit laide
du menu [Edition] de lexplorateur, soit partir du menu contextuel obtenu laide dun
click droit, soit partir des touches de raccourcis Ctrl+C , Ctrl+X , Ctrl+V .
Une opration Dplacer ou Copier peut tre immdiatement annule en passant
par le menu [Edition] [Annuler] de lexplorateur ou du poste de travail.

5G.

Rechercher des fichiers ou des dossiers


Pour rechercher un fichier ou un dossier, il suffit de faire appel la bote de dialogue de
recherche que lon peut ouvrir en passant par le bouton Dmarrer puis [Rechercher]
ou en utilisant les touches de raccourcis :

Windows fait alors apparatre un assistant dans lequel vous pouvez prciser la nature
de llment cherch comme une image, un fichier ou encore un ordinateur dont vous
connaissez le nom dans le rseau ou ladresse IP (voir plus loin dans cette squence).
Remarques

Les caractres jokers (mta-caractres) que nous avons vu dans la partie MS-DOS peuvent
tre utiliss dans la fentre de recherche.
les fichiers trouvs peuvent tre ensuite slectionns dans la fentre Rsultats de la
recherche pour tre Recopier ou Dplacer .

153
8 3999 TG PA 01

Squence 3

6.

Le panneau de configuration
Le panneau de configuration contient un ensemble dicnes permettant de paramtrer
Windows. Pour afficher le panneau de configuration, il existe plusieurs moyens dont
notamment :
a. Cliquer sur le bouton Dmarrer puis [Panneau de Configuration]. Dans le cas o
le menu Dmarrer est affich en mode classique, il faut cliquer sur le bouton
Dmarrer puis [Paramtres] [Panneau de Configuration].
b. Ouvrir la fentre Poste de Travail puis slectionner Panneau de configuration dans la rubrique Autre emplacement de la colonne de gauche.
Que ce soit lune ou lautre des mthodes, le panneau de configuration se prsente sous
la forme :

Attention toutefois, cette prsentation peut tre diffrente sur votre cran. En effet,
Windows peut afficher les diffrentes icnes par catgorie.

154
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

chaque catgorie est associe un ensemble dassistants et un ensemble dicnes permettant daccder des botes de dialogue pour paramtrer WINDOWS. Ces diffrentes
icnes se retrouvent dans celles prsentes dans la fentre de la premire capture dcran
qui correspond un affichage classique de Windows. Pour passer de laffichage par catgorie laffichage classique, il suffit de cliquer sur Basculer vers laffichage classique .
En fait, laffichage classique permet de mieux visualiser lensemble des icnes que nous
avons notre disposition. De mme, il est possible que loption daffichage des icnes
ait t modifie. Dans ce cas, il suffit daller dans le menu [Affichage] de la fentre
Panneau de configuration et choisir une autre prsentation de la liste des icnes.
Enfin, il peut y avoir des icnes supplmentaires ajoutes par linstallation de certains
priphriques sur votre ordinateur ou des icnes en moins car certains priphriques
peuvent ne pas tre prsent sur votre ordinateur ou que le service pack utilis ne soit pas
le mme que celui utilis sur lordinateur utilis pour raliser la capture dcran.

Le service pack (SP1, SP2, SP3) correspond une mise jour de Windows XP permettant de corriger des erreurs ou dajouter des complments.
Voici un descriptif rapide de quelques-unes des icnes affiches
Icne

Description
Cette icne ouvre une bote de dialogue permettant de paramtrer laffichage. On y
trouve les onglets :
Thmes : permet de choisir un modle de prsentation gnrale pour le bureau
comprenant un ensemble prdfini dicnes; de polices de caractres, de pointeurs
de souris, de sons, dimages darrire-plan, etc.
Bureau : permet de choisir une image darrire plan pour le bureau. Si
limage que vous dsirez napparat pas dans la liste, vous pouvez localiser
le fichier souhait en cliquant sur le bouton Parcourir . En cliquant sur le
bouton Personnalisation du Bureau , vous pouvez choisir de faire apparatre
ou disparatre du bureau, lune des icnes de base dont nous avons parler
prcdemment dans le paragraphe concernant le bureau.
Ecran de veille : permet de faire apparatre un conomiseur dcran qui se
dclenchera au bout dun certain temps de non utilisation de lordinateur.
Apparence : permet de changer les couleurs de Windows. Vous pouvez choisir
parmi les options proposes ou cliquer sur le bouton Avanc pour spcifier une
couleur pour chaque lment Windows.
Paramtres : permet de modifier la rsolution de lcran et la qualit de la
couleur des lments affichs. Attention, plus vous augmentez le nombre de pixels
pour la rsolution, plus les donnes, qui safficheront sur lcran, seront petites.
Remarque : en faisant un click-droit sur le bureau, Windows affiche un menu
contextuel partir duquel, en slectionnant [Proprits], on arrive sur la mme bote
de dialogue.
Permet dajouter de nouveaux priphriques sur votre ordinateur. Windows fait appel
un assistant pour vous aider dans la tche. Attention, si vous ajoutez un nouveau
priphrique, cela ncessite que vous ayez disposition le pilote du priphrique adquat
si celui-ci nest pas connu par Windows XP en standard. Le pilote est soit fourni sur un CDROM par le constructeur soit il vous faudra aller le chercher sur Internet .
Permet de faire appel un assistant pour ajouter ou enlever une application (Word,
Excel ...). En gnral, les logiciels sont fournis avec leur propre procdure dinstallation
quil suffit de suivre. Il est galement possible de passer par cette icne pour ajouter des
composants Windows supplmentaires ou dsinstaller par erreur.

155
8 3999 TG PA 01

Squence 3

Permet de faire appel un assistant permettant de placer votre ordinateur dans un


rseau personnel ou dans un rseau local dentreprise. Cet assistant configure galement
indirectement le FireWall de Windows de manire ce que les autres postes du rseau
puissent communiquer avec votre ordinateur et accder des dossiers partags ou des
imprimantes partags installes sur votre ordinateur.
Permet de crer un rseau sans fil condition que votre ordinateur et les autres
ordinateurs voulant se connecter au rseau sans fil soit quips de cartes rseau WIFI ou
de cl USB WIFI. Cet assistant permet de donner un nom au rseau sans fil et gnrer
un cl de cryptage (WEP ou WPA) quil faudra fournir tous les ordinateurs voulant se
connecter au rseau sans fil. En rgle gnral, on ne passe pas par cette icne car bien
souvent on se sert de la connexion WIFI pour partager un accs Internet via un routeur
ADSL fourni ou non par le fournisseur daccs, quil est alors ncessaire de configurer avec
un nom de rseau et une cl WEP ou WPA.
Permet daccder la boite de dialogue permettant de configurer certains lments
de la barre des tches voire deffacer la liste des derniers fichiers ouverts. Cette bote
de dialogue peut galement tre ouverte en effectuant un click-droit dans la barre
des tches en dehors de toute icne puis en slectionnant [Proprits] dans le menu
contextuel qui apparat.
Permet daccder la configuration du Firewall intgr Windows soit pour le dsactiver
soit pour le configurer autrement quavec les rgles de filtrage par dfaut. Attention,
toute modification du Firewall est risque. Le risque est dans le fait que votre ordinateur
ne pourra plus communiquer avec les autres. Par cette option, on peut galement prciser
si on accepte ou non les mises jour automatiques de Windows, condition dtre
connect Internet.
Permet de paramtrer la vitesse de rptition des touches du clavier et la vitesse de
clignotement du curseur dinsertion.

Permet de faire appel un assistant permettant de crer des comptes utilisateur ,


modifier des comptes, supprimer des comptes si lutilisateur qui fait appel lassistant est
ladministrateur. Dans le cas contraire, lutilisateur ne pourra modifier les caractristiques
que de son propre compte utilisateur comme par exemple son mot de passe.
Permet daccder aux connexions rseaux existantes sur lordinateur pour les configurer.
Par exemple, si lordinateur possde une carte rseau, cela constitue une connexion
rseau quil faut configurer. Sil possde une carte rseau WIFI ou une cl USB WIFI , cela
constitue galement une connexion rseau configurer. Nous reviendrons sur tout cela
dans la suite de cette squence.
Permet de modifier la date et lheure systme. La bote de dialogue qui apparat peut tre
galement ouverte en double-cliquant sur lhorloge qui apparat en bas droite de la
barre des tches.
lintrieur de la fentre qui souvre, vous trouverez lensemble des imprimantes installes
en local ou via une connexion rseau. Chacune des imprimantes existantes est matrialise
par une icne. Ce dossier contient galement une option de nom Ajout dimprimante qui
permet dinstaller une nouvelle imprimante locale ou rseau.
En double-cliquant sur lune des icnes associes une imprimante, Windows affiche une
fentre avec la liste ventuelle des documents en cours dimpression. travers cette fentre,
il est possible dannuler limpression dun document ou de tous les documents. En faisant
un click-droit sur une icne associe une imprimante, Windows fait apparatre un menu
contextuel permettant entre autre de partager une imprimante locale avec les autres
ordinateurs du rseau mais aussi de modifier certaines proprits de limprimante concerne.

156
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Permet de configurer la manire dont on souhaite que Windows aille chercher les mises
jour sur Internet et comment il doit procder pour effectuer ces mises jour sur votre
ordinateur. Bien entendu, il faut une connexion Internet pour cela.

Permet dadapter le fonctionnement de certains lments comme le clavier, lcran, la


souris pour les personnes ayant un handicap.

Permet de paramtrer votre ordinateur afin de dterminer comment doivent se


comporter votre ordinateur, votre disque dur et votre cran aprs une priode donne
dinactivit de lordinateur.

Permet de paramtrer laffichage des dossiers et des fichiers. Ce paramtrage est trs utile
lorsque lon souhaite afficher des fichiers cachs ou systmes par exemple. Il permet
galement dassocier des applications des extensions.

Permet de paramtrer son accs Internet .

Permet de spcifier entre autre le format des dates et des heures, de prciser le symbole
montaire ainsi que le sparateur de milliers et le sparateur dcimal. Ces options sont
utilises dans la plupart des logiciels de Windows.

Ce dossier contient un ensemble doutils trs utiles concernant ladministration de


lordinateur (cration de compte, arrter ou dmarrer des services, dfinir des rgles
de scurit sur le poste cest--dire dfinir ce quil est possible ou non de faire sur
lordinateur) et lanalyse de son fonctionnement.

Attention, certaines actions ne peuvent tre faites qu partir dune session


administrateur .

157
8 3999 TG PA 01

Squence 3

Permet datteindre la bote de dialogue permettant dactiver ou de dsactiver le Firewall


(le pare-feu) mais aussi de le configurer. Attention, il ne faut pas y faire nimporte quoi
sous peine de ne plus pouvoir communiquer avec les autres ordinateurs ou que les autres
ordinateurs ne puissent plus vous voir sur le rseau.

Permet dajouter ou de supprimer des polices de caractres.

Permet de paramtrer les priphriques multimdia et, pour ceux qui le souhaite, associer
des sons des vnements Windows (Agrandir une fentre, Fermer une fentre, Arrt ou
dmarrage de Windows, etc).

Permet de configurer les actions de la souris et de la molette, de modifier la rapidit du


double-click ou la rapidit de dplacement du curseur souris sur lcran, de changer la
forme du curseur souris.

Cette icne donne accs une fentre compose de plusieurs onglets. Voici les plus utiles.
Onglet Gnral : permet de connatre la version de Windows installe ainsi que le
numro du service pack install (SP1, SP2, SP3).
Onglet Nom de lordinateur : permet de connatre ou modifier le nom de
lordinateur (Cf installation de Windows XP) mais galement connatre ou modifier le
nom du groupe de travail ou de domaine dans lequel lordinateur prend place (Cf plus
loin dans cette squence).
Onglet Matriel : permet de connatre les priphriques installs et dans modifier
les proprits en cliquant sur le bouton Gestionnaire de priphriques .
Onglet Utilisation distance : permet dautoriser ou non un autre ordinateur
du rseau prendre la main sur votre ordinateur pour des raisons de maintenance.
Cest ce que lon appelle le bureau distance qui permet un utilisateur se trouvant
sur un autre ordinateur de travailler sur votre bureau comme si ctait le sien. Nous
reviendrons sur cela dans la suite de cette squence.
Remarque

Dune manire gnrale, certains lments du panneau de configuration peuvent tre


atteints par dautres raccourcis dfinis dans diffrentes botes de dialogue ou dans diffrents
menus contextuels.

158
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

7.

Quelques utilitaires
partir du bouton Dmarrer puis [Programmes] [Accessoires], Windows nous donne
accs un certain nombre dutilitaires comme le bloc-notes (NotePad), un logiciel de dessin bitmap (Paint), une calculatrice, un texteur simplifi (Wordpad), un contrleur de
volume, des jeux, une fentre de commandes permettant de saisir des commandes DOS
en mode texte et des outils systmes . Dans la catgorie des outils systmes ,
nous trouvons principalement :
Centre de scurit : de base, Windows XP propose un applicatif permettant de filtrer le
flux de donnes qui circulent entre votre ordinateur et un autre ordinateur, situ sur le
rseau local ou sur Internet, afin de contrler quil ny a rien de malveillant. Le but premier est de lutter contre les virus informatiques, les logiciels espions et les attaques possibles de la part de hackers pour prendre le contrle de votre ordinateur. Cet applicatif
sappelle un Firewall (pare-feu). Ce dernier, pour tre efficace, doit tre paramtr avec
des rgles de filtrage. En passant par loutil Centre de scurit , nous pouvons donc
accder au FireWall de Windows afin de le paramtrer. Attention, le risque de modifier
le paramtrage du FireWall est que votre ordinateur ne soit plus visible sur le rseau mais
galement que vous ne puissiez plus accder aux autres ordinateurs du rseau.
Dfragmenteur de disque : lorsque lon enregistre un fichier sur un disque, Windows le
dcoupe en clusters. Un cluster est constitu dun nombre fixe de secteurs contigus dont
le nombre dpend en partie de la taille de la partition. Il constitue la plus petite unit
de stockage (voir squence 5 dans ce support). Donc un fichier, en fonction du nombre
doctets dont il est constitu, peut tre rparti sur un ou plusieurs clusters. Cependant,
les clusters peuvent ne pas tre conscutifs. En effet, sur un disque dur, des donnes
apparaissent, des donnes disparaissent (voir prcdemment suppression de fichiers et
de dossiers) donc des espaces peuvent se crer sur la partition. Ces espaces peuvent tre
rcuprs afin dy placer les clusters de nos nouveaux fichiers. Le problme est que plus
les clusters dun mme fichier sont loigns les uns des autres, plus le systme mettra du
temps pour lire le contenu dun fichier ou crire dedans. Plus le temps passe et plus les
fichiers peuvent tre fragments . Pour amliorer le fonctionne de Windows et donc
acclrer les accs disque, il peut tre intressant de dfragmenter les fichiers en rapprochant les clusters dun mme fichier. Cest lopration que ralise cet utilitaire.
Informations systme : permet dobtenir des informations sur votre configuration systme et matrielle ainsi que sur les composants systme installs comme par exemple
les pilotes de priphriques.
Nettoyage de disque : permet de supprimer un certain nombre de fichiers considrs
comme inutiles (fichiers temporaires, fichiers placs dans la corbeille, etc) afin de gagner
de la place sur le disque.
Restauration du systme : permet de remettre le systme en place partir dun point
de restauration. Un point de restauration correspond une photo du systme un instant donn. En fait, par photo, on entend le fait que Windows XP ralise une sauvegarde
des fichiers sensibles chaque fois quune modification, juge critique, est apporte au
systme. Cette sauvegarde est effectue dans un espace cach rserv cet effet. Il est
donc possible grce ces diffrentes sauvegardes (diffrents points de restauration) de
remettre le systme en place comme il tait au moment o le systme a effectu lune
de ces sauvegardes. Cest lutilisateur de choisir quel point de restauration il souhaite
prendre en compte laide de cet outil.

159
8 3999 TG PA 01

Squence 3

Remarque

Un point de restauration peut tre effectu la demande de lutilisateur laide de ce


mme outil. Il suffit dindiquer que lon souhaite crer un point de restauration dans le
premier cran de lassistant.
Table des caractres : permet dinsrer dans un document utilisateur un caractre
particulier.
Tches planifies : Permet de planifier lexcution automatique de programmes ou de
scripts des intervalles de temps prcis
Sous Windows XP, il existe encore dautres outils qui sont dissmins dans diffrentes
fentres. Par exemple :
a. partir de la fentre Poste de travail ou de lexplorateur de fichiers, il est possible de cliquer avec le bouton droit de la souris sur les diffrents lecteurs puis slectionner [Proprits] dans le menu contextuel qui apparat afin douvrir une fentre
Proprits dans laquelle, longlet Gnral , permet davoir accs des informations, comme la quantit despace libre, despace occup ou encore le type de
systme de gestion de fichiers install (FAT32, NTFS). Longlet Outils de cette
mme fentre permet daccder dautres utilitaires spcifiques aux disques.
b. En cliquant avec le bouton droit de la souris sur licne Poste de travail puis en
slectionnant [Grer] dans le menu contextuel qui apparat, Windows ouvre une
fentre de nom Gestion de lordinateur .

Cette fentre permet, entre autre, daccder des journaux mmorisant les vnements
qui ont eu lieu sur lordinateur mais galement des informations sur les priphriques.
travers cette fentre, il est possible de grer les utilisateurs et les groupes ainsi que les
partitions du ou des disques durs.
Remarque

Sous Windows XP, il est possible de masquer une partition. Cela peut tre utile pour placer
par exemple des images disques ralises partir de logiciels spcifiques comme Drive
Image ou Norton Ghost ou y placer des donnes systmes permettant une restauration
facile de lOS. Une fois que les donnes sensibles sont sur la partition masquer, partir de
loption Gestion des disques de la fentre Gestion de lordinateur , on effectue un clickdroit sur la reprsentation de la partition masquer en bas droite de la fentre puis

160
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

on slectionne [Modifier la lettre de lecteur et les chemins daccs] dans le menu contextuel
qui apparat. Une boite de dialogue souvre. Il ne reste plus qu supprimer la lettre de lecteur
de la partition masquer en cliquant le bouton Supprimer . Pour faire refaire apparatre la
partition, il faut redonner une lettre de lecteur la partition en passant par le mme menu.
Sous Windows XP, en passant par la commande Excuter du bouton Dmarrer , il
possible de faire appel trois autres utilitaires que voici ;
c. gpedit.msc : permet de configurer des stratgies de fonctionnement lies lordinateur ou lies aux utilisateurs comme par exemple louverture de session ou encore
les lments qui apparaissent dans le menu Dmarrer ou sur le bureau, ce que lon
autorise ou pas faire sur le bureau, ce qui se passe lorsquun utilisateur ferme une
session, masquer des lments dans le panneau de configuration, etc. Cet utilitaire est
trs intressant pour protger lordinateur de mauvaises manipulations.

d. mscong.exe : utilitaire de conguration systme . Permet de congurer boot.


ini mais galement des services (voir prcdemment les notions de services et de
clients).

e. cmd.exe : utilitaire qui ouvre une fentre de commandes permettant de taper des
commandes en mode texte. Cela peut tre utile pour taper les commandes systmes que nous avons tudi dans la squence MD-DOS mais galement pour taper
les commandes rseau que nous verrons en n de squence.

161
8 3999 TG PA 01

Squence 3

8.

Grer les comptes des utilisateurs avec Windows XP pro


Windows XP tant un OS multi-utilisateurs, il est primordial de mettre en place un
systme permettant un utilisateur de sidentifier avant davoir accs aux ressources
de lordinateur considr. Lorsque nous avons abord prcdemment linstallation de
Windows, nous avons indiqu quun ordinateur pouvait tre plac dans un groupe de
travail (Workgroup) ou dans un domaine. La diffrence essentielle est que dans le premier cas, une fois que lutilisateur a donn son login et son mot de passe, lidentification
se fait en local sur la machine alors que dans le deuxime cas, elle se fait via le rseau sur
un ordinateur appel le contrleur de domaine . En fait, nous pouvons ajouter, que
dans le premier cas, les lments didentification dun utilisateur sont mmoriss en local
dans le gestionnaire de comptes de scurit (appel la SAM pour Security Account
Manager ) de lordinateur considr. Dans le deuxime cas, ces lments sont stocks
dans la SAM du contrleur de domaine et pas en local sur tous les postes du domaine
ou dans un annuaire type Active directory ou LDAP . Dans ce paragraphe, nous
allons nous intresser la cration de comptes utilisateurs dans le cadre dun groupe de
travail donc en local sur un ordinateur install avec Windows XP Pro.
Ds linstallation de Windows XP Pro, le compte administrateur est cr et au moins
un autre compte utilisateur qui par dfaut les mmes droits que ladministrateur donc
danger. Le compte administrateur est le compte partir duquel il est possible de
grer lordinateur sans restriction. Lune de ses tches est donc de crer les autres comptes utilisateurs. Attention, jinsiste, mais les autres comptes ayant le mme droit que
ladministrateur peuvent tout faire sur lordinateur. Cest pourquoi, il faut mieux mettre
en place les comptes utilisateurs aprs linstallation de Windows ou alors il ne faut pas
oublier de rectifier les droits de ces utilisateurs par la suite (voir ci-aprs).
Pour crer un nouveau compte utilisateur, il faut :
a. Ouvrir le panneau de configuration, prendre Outils dadministration puis
Gestion de lordinateur . Il est galement possible de faire un click droit sur licne
Poste de travail puis dans le menu contextuel qui apparat, prendre [Grer].

Il faut tre administrateur ou sur un compte du groupe administrateurs .


b. Dans la fentre Gestion de lordinateur qui apparat ensuite, slectionnez
Utilisateurs et groupes locaux .

162
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

c. partir de la partie droite de la fentre Gestion de lordinateur , cliquez, avec


le bouton droit de la souris, sur Utilisateurs puis dans le menu contextuel qui
apparat, slectionnez [Nouvel utilisateur].

d. Une nouvelle bote de dialogue apparat.

f. Compltez les diffrents lments de la bote de dialogue, savoir :


Nom d'utilisateur : il sagit du nom de login quil faudra saisir lors dune ouverture de session (20 caractres maximum).
Nom complet : permet de saisir le nom complet de lutilisateur car bien souvent
le nom de login nest pas toujours explicite sur lidentit de lutilisateur mais
plutt fonctionnel.
Description : offre un espace permettant de saisir un texte dcrivant lutilisateur
comme par exemple: son service, lemplacement de son bureau, son titre.
Mot de passe : saisir le mot de passe de lutilisateur puis le confirmer dans la
ligne suivante. Celui-ci pourra le changer par la suite.
Il faut ensuite slectionner dans les diffrentes cases cocher comment sera gr
le mot de passe saisi. Ainsi, l'administrateur peut forcer l'utilisateur changer son
mot de passe lors de la prochaine ouverture de session de ce dernier sur l'ordinateur. Dans le cas contraire, il peut empcher toute tentative de modification du
mot de passe par l'utilisateur lui-mme mais galement prciser que le mot de
passe fourni n'expirera jamais.
163
8 3999 TG PA 01

Squence 3

Remarques

Il est possible de dsactiver temporairement le compte laide de la case cocher "Le compte est dsactiv" si la personne n'est pas encore arrive dans l'entreprise pour l'instant.
Le nombre de jours avant qu'un mot de passe expire est dfini dans les outils d'administration du panneau de configuration et plus particulirement l'aide de l'outil Stratgie de
scurit locale . l'intrieur de la fentre qui s'ouvre, il faut ensuite aller sur Stratgies
de compte puis Stratgie de mot de passe et enfin Dure de vie maximale du mot
de passe .
Revenons notre fentre de cration de compte utilisateur.

g. Validez en cliquant sur le bouton [Crer]. Le compte est cre. Maintenant lordinateur utilisera son gestionnaire SAM local pour authentifier lutilisateur et lautoriser accder aux ressources locales de celui-ci.
h. Crer dautres comptes en procdant de la mme manire ou cliquer sur Fermer
pour mettre fin au processus de cration de compte.
Une fois quun compte est cr, il est possible dy apporter des modifications. Voyons
comment.
partir de la fentre Gestion de lordinateur vue prcdemment, slectionnez la
branche Utilisateurs et groupes locaux puis double-cliquez sur Utilisateurs afin de

164
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

faire apparatre la liste des comptes utilisateurs existants.

lintrieur de la liste, effectuez un click-droit sur le nom de lutilisateur modifier.


Un menu contextuel apparat permettant de modifier le mot de passe, de supprimer le
compte utilisateur ou encore de le renommer. Par ce menu contextuel, il est galement
possible de modifier les proprits du compte utilisateur en cliquant sur [Proprits]. Une
bote de dialogue souvre :

Cette bote de dialogue propose plusieurs onglets :


a. Onglet Gnral : permet de redfinir le nom complet et la description de lutilisateur mais galement la prennit du mot de passe. Par cette fentre, on peut dsactiver
le compte (ou le ractiver) lorsque lutilisateur concern sabsente pendant un certain
temps afin dempcher que quelquun de malintentionn puisse utiliser le compte.
Remarque

Lorsque plusieurs tentatives infructueuses douverture de session ont lieu, le compte peut tre
verrouill. Cela dpend des stratgies de groupe appliques. Il faut donc que ladministrateur
aille dans les proprits de lutilisateur concern pour dverrouiller son compte si ncessaire.

165
8 3999 TG PA 01

Squence 3

Prcision : le nombre de tentatives de connexion possibles avant que le compte ne


soit verrouill est dfini dans les outils dadministration du panneau de configuration.
Il faut prendre loutil Stratgie de scurit locale puis, lintrieur de la fentre
qui souvre, aller sur Stratgies de compte puis Stratgie de verrouillage de
compte et enfin seuil de verrouillage de compte .
b. Onglet Membre de permet daffecter lutilisateur considr un ou plusieurs
groupes. Attention, les groupes slectionns donnent des droits, lis aux groupes,
lutilisateur. Il faut donc faire attention. Remarque: ce mme onglet permet de retirer
lutilisateur dun groupe donn.
c. Onglet Profil permet de spcifier lemplacement dun profil obligatoire pour lutilisateur, le nom dun batch (script) qui se dclenchera la connexion de lutilisateur
sur son compte et enfin le nom dun dossier de base. Un dossier de base est un dossier
qui bien souvent est un dossier partag se trouvant sur une autre machine du rseau
et auquel lutilisateur a automatiquement accs lors de louverture de sa session afin
dy placer ses documents. Rappel : un profil dcrit lenvironnement de travail dans
lequel lutilisateur, qui se connecte, arrive comme laspect de son bureau ou encore
les couleurs de Windows.
Prcdemment, nous avons introduit la notion de groupes dutilisateurs auxquels
lutilisateur peut appartenir. Ah voici un terme dvelopper.
Un groupe dutilisateurs est un ensemble dutilisateurs ayant les mmes droits sur les
ressources partages dun ordinateur ainsi que les mmes autorisations sur les tches
systmes ralisables sur celui-ci. Donc placer un utilisateur dans un groupe accorde
dofce lutilisateur les droits prvus pour celui-ci. Cela a lavantage de simplier
ladministration de lordinateur. Il est possible de se crer ses propres groupes mais il
existe un certain nombre de groupes prdnis parmi lesquels :
Groupe Administrateurs : les membres du groupe Administrateurs possdent le contrle total de lordinateur. Ce groupe prdni est le seul auquel sont
accords automatiquement tous les droits et possibilits prdnis par Windows.
Groupe Oprateurs de sauvegarde : les membres du groupe Oprateurs de
sauvegarde peuvent sauvegarder et restaurer des chiers sur lordinateur, indpendamment des autorisations protgeant ces chiers. Ils peuvent galement ouvrir
une session sur lordinateur et arrter celui-ci, mais ils nont pas la possibilit de
modier les paramtres de scurit.
Groupe Utilisateurs avec pouvoirs : les membres du groupe Utilisateurs
avec pouvoirs peuvent crer des comptes dutilisateurs, mais ne peuvent modier
et supprimer que les comptes quils ont cr. Ils peuvent crer des groupes locaux et
supprimer les utilisateurs des groupes locaux quils ont cr. Ils peuvent galement
supprimer les utilisateurs des groupes Utilisateurs avec pouvoir , Utilisateurs
et Invits . Ils ne peuvent pas modier les groupes Administrateurs et Oprateurs de sauvegarde , ni prendre possession de chiers, ni sauvegarder ou restaurer des dossiers, ni charger ou dcharger des pilotes de priphriques.
Groupe Utilisateurs : les membres du groupe Utilisateurs peuvent effectuer
les tches les plus courantes mais ils ne peuvent pas partager des dossiers ni crer
des groupes.
Groupe Invits : le groupe Invits permet des utilisateurs occasionnels
douvrir une session sur le compte prdni Invit de la station de travail. Ils ne
disposent que de possibilits limites.
Pour placer un utilisateur dans un groupe, il faut que ladministrateur, ou un utilisateur
faisant partie du group Administrateurs , aille dans la fentre Gestion de lordinateur (voir prcdemment au dbut de ce paragraphe), puis clique sur Utilisateurs et
groupes locaux et enn double-clique sur Utilisateurs an de faire apparatre la liste
166
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

des comptes utilisateurs existants. Une fois la liste afche, il faut encore effectuer un click
droit sur le nom de lutilisateur concern par la modication, prendre [Proprits] dans le
menu contextuel qui apparat et enn cliquer longlet Membre de .

Lopration nest pas encore termine. Une fois que cette fentre apparat, il faut encore
cliquer sur le bouton Ajouter . Une nouvelle fentre apparat.

Deux solutions sont alors possibles. Taper le nom du groupe auquel on veut ajouter
lutilisateur considr ou cliquer sur le bouton Avanc . Dans ce dernier cas, il faut
encore poursuivre laction en cliquant sur le bouton Rechercher pour chercher le
nom du groupe dans la liste qui apparat et valider son choix. Windows revient alors la
fentre prcdente. Par exemple, voici la fentre une fois que jai plac mon utilisateur
dans le groupe Administrateurs .

167
8 3999 TG PA 01

Squence 3

Il faut valider le choix en cliquant sur le bouton OK ,

Pour terminer lopration, il ne me reste plus qu appliquer le choix en cliquant le bouton Appliquer .

Remarques

Pour supprimer un utilisateur dun groupe, il suffit daller sur longlet Membre de
pour lutilisateur considr et supprimer le groupe de la liste.
Les comptes cres au moment de linstallation de Windows XP sont placs dans le
groupe Administrateurs par dfaut, il peut donc tre parfois ncessaire de retirer
ce groupe un utilisateur.
Prcdemment, nous sommes passs par les proprits de lutilisateur pour placer un
utilisateur dans un groupe, mais il est galement possible de placer lutilisateur dans
le groupe en allant dans la fentre Gestion de lordinateur puis sur Utilisateurs et
groupes locaux mais cette fois-ci, on effectue un double-clique sur Groupes afin
de faire apparatre la liste des groupes existants. lintrieur de la liste des groupes, on
effectue un click droit sur le nom de groupe concern par la modification puis on prend
[Ajouter au groupe] dans le menu contextuel qui apparat. La suite se rapproche de ce
que nous avons fait prcdemment.
Pour supprimer un utilisateur dun groupe, on peut aller dans la fentre Gestion de lordinateur puis sur Utilisateurs et groupes locaux . Double-cliquer ensuite sur Groupes
afin de faire apparatre la liste des groupes existants, effectuer un click droit sur le nom
de groupe concern par la modification, prendre [Proprits] dans le menu contextuel qui
apparat. puis supprimer les utilisateurs qui ne doivent pas se trouver dans le groupe.

Si vous ne trouvez pas votre bonheur au niveau des groupes proposs de base par
Windows, il est possible de crer un groupe. Cela se passe encore une fois au niveau de
la fentre Gestion de lordinateur vue prcdemment. lintrieur de cette dernire,
slectionnez la branche Utilisateurs et groupes locaux puis faites un click-droit sur
groupes . Dans le menu contextuel qui apparat, slectionnez [Nouveau groupe] puis
donnez un nom ce nouveau groupe.
168
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Une fois cr, un groupe peut ensuite tre associ des droits sur un dossier, sur un chier
ou encore sur une imprimante partage. Il peut galement se voir attribuer certaines
autorisations sur les tches systmes ralisables sur la machine considre. Dans ce dernier
cas, il faut cliquer, dans les outils dadministration, sur Stratgie de scurit locale puis
sur la branche stratgies locales puis Attribution des droits utilisateur .
Remarque

Pour crer ou modifier un compte utilisateur, il existe une autre solution qui consiste
passer par le panneau de configuration puis Comptes dutilisateur . Une fentre souvre
proposant des actions trs lmentaires.

Bien entendu, cette fentre est diffrente dans la cas o elle ouverte par un utilisateur qui
na pas les permissions Administrateur . Il en va de mme pour la fentre Gestion de
lordinateur dans laquelle certaines actions ne seront pas possibles dans ce cas.
Une fois quun utilisateur possde un compte sur un ordinateur donn, il peut ouvrir une
session sur ce dernier puis personnaliser son environnement de travail. On parlera de son prol
utilisateur . Pour grer les diffrents prols utilisateurs , Windows met en place, sur le
disque de dmarrage, un dossier de nom Documents and Settings lintrieur duquel il
cre un dossier pour chacun des utilisateurs existants ayant pour nom le nom de lutilisateur.
Ces dossiers se dcomposent encore en sous-dossiers comme par exemple bureau qui
contient les icnes places sur le bureau de lutilisateur. Chaque dossier contient galement
un chier cach de nom ntuser.dat contenant les personnalisations de Windows pour
lutilisateur considr (couleurs cran, cran de vieille, bouton dmarrer , etc.).
169
8 3999 TG PA 01

Squence 3

Dernier point concernant les comptes utilisateurs. Pour ouvrir une session, il peut y avoir
deux types dcran daccueil. Un cran graphique ou un cran classique :

cran graphique

cran classique

Par dfaut, cest lcran graphique qui apparat. Cependant pour des raisons de scurit, il
peut tre intressant que lensemble des noms des personnes, ayant un compte sur lordinateur, napparaissent pas. Cest le cas avec lcran classique Pour mettre en place lcran
classique ou pour revenir lcran graphique, il faut se connecter en tant quadministrateur, passer par le Panneau de configuration puis Comptes dutilisateurs . lintrieur de la fentre qui souvre, il ne reste plus qu prendre loption Modifier la manire
dont les utilisateurs ouvrent et ferment une session . Une autre fentre souvre.

Pour choisir lcran graphique, cochez la case Utiliser lcran daccueil et pour choisir
la fentre classique, dcochez cette mme case.
Le fait de choisir lcran classique a une autre consquence lorsque lutilisateur appuie
sur la squence Ctrl + Alt + Suppr . La fentre suivante souvre au lieu de la
fentre Gestionnaire des tches .

170
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Cette fentre permet de verrouiller lordinateur pendant que lon sabsente, arrter le
systme, fermer la session, modifier le mot de passe de lutilisateur qui ralise laction ou
encore faire appel au gestionnaire des tches.
Remarque

Il est possible temporairement en tant sur la fentre douverture de session en mode graphique de
basculer sur la fentre en mode classique pour par exemple ouvrir une session Administrateur
qui ne fait pas partie doffice de la liste des noms dutilisateurs affichs. Pour cela, il faut appuyer
deux fois en suivant sur la squence de touches Ctrl + Alt + Suppr .
Juste avant den terminer avec ce paragraphe, et pour vous montrer les possibilits de
lutilitaire gpedit.msc dont nous avons parl prcdemment, voici trois actions possibles par son intermdiaire.
a. En passant successivement par Configuration ordinateur , Modles dadministration , Systme , Ouverture de session , nous avons accs au paramtre Utiliser
toujours louverture de session classique qui nous permet de forcer laffichage de la
fentre douverture de session classique. Pour cela double-cliquez loption et faites votre
choix dans la fentre qui souvre. Attention, ce choix sera toujours prioritaire par rapport au choix effectu par lintermdiaire du Panneau de configuration , Comptes
dutilisateurs .

b. En passant successivement par Configuration ordinateur , Paramtres Windows ,


Paramtres de scurit , Stratgies de comptes , Stratgie de mot de passe ,
nous avons accs des paramtres concernant la gestion des mots de passe.
171
8 3999 TG PA 01

Squence 3

c. En passant successivement par Configuration ordinateur , Paramtres Windows ,


Paramtres de scurit , Stratgies locales , Options de scurit , Ouverture
de session interactive: ne pas afficher le dernier nom dutilisateur , on peut empcher
que le nom, de la dernire personne ayant ouvert une connexion, napparaisse dans
le fentre douverture de session en mode classique. Cela peut encore augmenter la
scurit car on ne peut plus voir aucun nom dutilisateur.
Prenez le temps de dcortiquer les possibilits de paramtrage offertes par cet utilitaire.
Elles sont nombreuses. Dans le paragraphe qui suit, nous allons tudier le fonctionnement dun autre mcanisme permettant de paramtrer Windows. Vous voyez, on peut
paramtrer Windows de diffrentes manires. Le tout est de ne pas sy perdre.

9.

La base des registres


La base des registres est une base de donnes contenant lensemble des informations dont
Windows XP a besoin pour fonctionner. On y trouve des informations sur les priphriques
installs, le paramtrage des composants matriels et logiciels de lordinateur considr, le
paramtrage de la phase de dmarrage de Windows, les prfrences des utilisateurs que
lon appelle les profils utilisateur , etc. Le principe de base des registres est apparu
avec Windows 95. Auparavant, Windows utilisait un ensemble de fichiers de configuration
ayant pour extension .ini qui dissminait lensemble des paramtres dont avait besoin
Windows et ses diffrentes applications pour fonctionner. La base des registres a t la
solution pour centraliser tous les paramtres ncessaires et est donc llment vital
de Windows manipuler avec prcaution. Lorsque lon installe ou modifie un composant
matriel ou un logiciel, Windows met jour automatiquement les donnes de la base des
registres. Il en va de mme lorsque lon modifie les paramtres de Windows par lun des
composants du panneau de configuration ou par lintermdiaire de certains utilitaires.
Nanmoins, avec lexprience, il est possible daller directement modifier les valeurs des
paramtres contenus dans la base des registres ce qui permet de rester matre du fonctionnement de Windows sans tre tributaire des diffrents assistants. Pour cela, nous avons
notre disposition un utilitaire diteur de registre de nom regedit.exe . Pour y accder, il suffit de passer par le bouton Dmarrer puis [Excuter] et enfin dans la bote de
dialogue qui apparat, taper regedit . Une fentre apparat.

172
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Voyons comment se structure la base des registres. Elle sapparente une arborescence de
dossiers. En effet, la base de registres est organise en cinq branches principales que lon
appellera cl principale ou ruche (voir copie dcran prcdente). Chaque cl principale est elle-mme divise en cls qui peuvent tre leur tour divises en sous-cl et ainsi
de suite. Nous avons donc bien une arborescence. En fait, chaque cl / sous-cl regroupe les
paramtres traitant du mme sujet. Voyons comment sorganisent les cls principales.
Ainsi :
Cl principale / Ruche

Description

HKEY_CLASSES_ROOT (HKCR)

Regroupe les paramtres ncessaires lexcution de


vos applications comme par exemple lassociation entre
une extension et le logiciel associ ce qui permet, en
double cliquant sur un document, douvrir lapplication
concerne ou encore comment Windows peut intgrer
dans un document des informations provenant dautres
programmes (technologie OLE).

HKEY_CURRENT_USER (HKCU)

Regroupe les paramtres de lutilisateur qui a ouvert la


session en cours (couleurs des composants de Windows,
paramtres des dossiers, configuration clavier, configuration souris, imprimantes connectes, etc.). En dautres
termes, il sagit du profil utilisateur de lutilisateur
courant. Chaque utilisateur possde un profil utilisateur
dont une partie des informations est stocke dans le
fichier ntuser.dat qui lui est associ et quil peut ainsi
retrouver chaque ouverture de session.

HKEY_LOCAL_MACHINE (HKLM)

Regroupe les informations sur les composants matriel


installs et les ressources quils utilisent (exemple : IRQ,
pilotes) mais galement sur les applications installes. Ces
informations sont applicables tous les utilisateurs de la
machine considre.

HKEY_USERS (HKU)

Contient tous les profils utilisateur des utilisateurs


autoriss ouvrir une session sur lordinateur considr
ainsi que la dfinition du profil par dfaut.

HKEY_CURRENT_CONFIG (HKCC)

Contient les paramtres de configuration du profil


matriel actuel. Seules les modifications apportes, par
rapport la configuration de base qui est dtaille dans
HKEY_LOCAL_MACHINE, apparaissent.

Ces diffrentes cls principales sont accessibles dans la partie gauche de lditeur de
registre. Comme nous lavons dj dit prcdemment, chaque cl principale se dcompose en cl qui peut son tour se dcomposer en sous-cl qui son tour peut se dcomposer et ainsi de suite. chaque niveau, il est possible de dfinir un certain nombre de
paramtres que lon appelle des entres .
Pour voir les entres existantes, il suffit de cliquer sur une cl ou une sous-cl dans la partie
gauche et les entres existantes pour cette dernire apparaissent dans la partie droite.
Remarque

Comme dans le cas de lexplorateur de Windows, dans la partie gauche de lditeur de


registre, il y a des signes + et - qui permettent de faire apparatre ou disparatre
laffichage des sous-cls de la cl considre.

173
8 3999 TG PA 01

Squence 3

Les cls, les sous-cls et les entres ne peuvent pas porter des noms quelconques ni se
trouver nimporte o dans larborescence. En effet, le nom dune entre ou dune cl /
sous-cl est connu par Windows ou par lapplication qui lutilise. Il faut donc respecter
les caractres sous peine de ne pas voir le paramtre utilis.
Si une cl / sous-cl ou une entre nexiste pas, il est possible de lajouter en utilisant
le menu [Edition] [Nouveau] de lditeur de registre ou la commande [Nouveau] du
menu contextuel qui apparat suite un click droit. Lorsque lon ajoute une entre (un
paramtre), Windows vous demande de prciser la nature de linformation ajoute en
slectionnant un type dans la liste propose.
De mme, il est possible de supprimer ou de renommer une sous-cl ou une entre
partir du menu [Edition] ou du menu contextuel.
modification non contrle peut entraner le plantage de Windows. Il est
O Toute
conseill de faire une sauvegarde de tout ou partie de la base des registres avant
de la modifier en passant par le menu [Fichier] [Exporter] Ensuite, en cas de problme, on peut restaurer ltat de la base des registres en passant par le menu
[Fichier] [Importer]. Le fichier gnr aura pour extension .reg .
Remarque

Il est possible de tester la base des registres partir dune installation de Windows XP faite dans
une machine virtuelle. Ainsi, il ny a plus de risque pour lOS install sur la machine relle. Dans
le paragraphe 1D de la squence 4, nous reviendrons sur cet aspect de machine virtuelle.
Une entre dans la base des registres possde un certain type quil est ncessaire de
connatre avant de pouvoir lajouter dans une cl (sous-cl) ou avant de modifier sa
valeur. Il existe entre autres les types :
a. REG_SZ : Valeur de type chane de caractres ( type Valeur chaine )
b. REG_EXPAND_SZ : Valeur de type chane de caractres de taille variable
( type Valeur de chane extensible )
c. REG_DWORD : Valeur numrique que vous pouvez saisir en base 10 ou en base hexadcimale. Cette valeur est code sur 32 bits ( type Valeur DWORD )
d. REG_BINARY : Valeur entre sous la forme dune succession doctets. Les octets sont
saisis sous forme hexadcimale .et doivent tre spars les uns des autres par un
espace. ( type Valeur binaire )
Pour modifier la valeur dune entre, il faut commencer par slectionner, dans la partie
gauche de lditeur de registre, la cl ou la sous-cl contenant lentre concerne, puis
double-cliquer sur lentre dans la partie droite de lditeur de registre. Enfin, il ne reste
plus qu saisir la nouvelle valeur dans la bote de dialogue qui apparat dans le format
prvu pour cette dernire.
Voici quelques exemples dutilisation des entres de la base des registres juste pour voir
comment cela fonctionne sachant que sur Internet ou dans les magazines informatiques,
il y de trs nombreux exemples.

174
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Faire disparatre le panneau de configuration


Il peut tre parfois intressant de ne pas permettre un utilisateur daccder au panneau
de configuration pour viter quil y fasse des btises. Pour cela, il faut, partir de lditeur de registre, modifier lentre NoControlPanel dont voici le chemin suivre dans
larborescence des cls pour atteindre cette dernire.
cl : HKCU \Software \Microsoft \Windows \CurrentVersion \Policies \Explorer
Nom de lentre : NoControlPanel
Type : REG_DWORD (Valeur DWORD)
Valeurs possibles : 0 Afficher
1 Ne pas afficher
Ne plus rendre accessible la conguration de lcran (couleur, cran de vieille, etc.)
Cl : HKCU \Software \Microsoft \Windows \CurrentVersion \Policies \System
Entre : NoDispCPL
Type : REG_DWORD (Valeur DWORD)
Valeurs possibles : 0 modification possible
1 modification non autorise
Empcher la suppression dune imprimante
Cl : HKCU \Software \Microsoft \Windows \CurrentVersion \Policies \Explorer
Entre : NoDeletePrinter
Type : REG_DWORD (Valeur DWORD)
Valeurs possibles : 0 Suppression possible
1 Suppression non autorise
Modier limage de fond dcran (le papier-peint)
Cl : HKCU \Control Panel \Desktop
Entre : Wallpaper
Type : REG_SZ (Valeur Chane)
Valeur possible : Le nom du fichier image avec le chemin absolu pour latteindre
Changer le nom de la corbeille
Cl : HKLM \ SOFTWARE \ Classes \ CLSID \ {645FF040-5081-101B-9F0800AA002F954E}
Entre : LocalizedString
Type : REG_EXPAND_SZ (Valeur de chane extensible)
Valeur possible : il suffit de taper le nouveau nom que vous souhaitez voir apparatre
en dessous de licne de la corbeille.

175
8 3999 TG PA 01

Squence 3

Faire apparatre un message dans la fentre douverture de session classique


Cl : HKLM \SOFTWARE \Microsoft \Windows NT \CurrentVersion \Winlogon
Entre : LogonPrompt
Type : REG_SZ (Valeur Chane)
Valeur possible : taper le texte qui doit apparatre

Cela donne :

Faire apparatre lutilisateur Administrateur dans la fentre douverture de


session graphique
Cl : HKLM \SOFTWARE \Microsoft \Windows NT \CurrentVersion \Winlogon\
SpecialAccounts \ UserList
Entre : Administrateur
Type : REG_DWORD (Valeur DWORD)
Valeurs possibles : 0 Le compte administrateur est masqu
1 Le compte administrateur est affich
Remarque

e. Une fois les modification faites, il est ncessaire parfois de fermer la session de lutilisateur puis de la r-ouvrir ou de redmarre Windows pour quelles soient prises en compte.
f. Lorsque vous rechercher une cl ou une valeur dentre prcise, pensez passer par
[Edition] [Rechercher]. Cela permet dtre plus efficace.

176
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

10.

Windows XP Pro et le rseau


travers ce paragraphe, nous allons voir comment configurer un OS pour que le poste
informatique sur lequel est install ce dernier soit reconnu par les autres ordinateurs du
rseau. Cet exemple concerne Windows XP Pro qui est un OS pour station de travail.
Le principe pour un OS Serveur (Windows 2000 Server ou 2003 Server) tant sensiblement le mme en ce qui concerne la configuration de TCP/IP. Bien entendu, un OS serveur apporte en plus le fait de pouvoir mettre en place une centralisation des comptes
utilisateurs. Ce thme ne sera pas abord ici car il est relativement complexe pour un
support dinitiation aux systmes dexploitation. Si cela vous dit, sur Internet , il y a
de nombreux exemples mais il ne faut pas vouloir comprendre toutes les subtilits des
concepts rseaux ds le dbut.
Au dbut de cette squence, nous avons indiqu que pendant la procdure dinstallation
de Windows XP Pro sur un poste quip dune carte rseau, il y a mise en place des diffrents lments logiciels ncessaires au fonctionnement du poste en rseau savoir :
a. Installation du pilote de la carte rseau si celle-ci est reconnue automatiquement.
Dans le cas contraire, il faudra passer par licne Ajout de matriel du panneau de
configuration.
b. Installation de clients et de services spcifiques aux rseaux Microsoft donc aux
rseaux dont les machines possdent un OS Microsoft.
c. Installation du protocole TCP/IP. Rappel : un protocole est un ensemble de rgles que
doivent respecter les ordinateurs pour communiquer ensemble. Le protocole TCP/IP est
un protocole commun tous les rseaux. Il faut donc employer de prfrence celui-ci
Bien entendu, un OS comme Windows XP ne pourra rien faire pour que votre ordinateur communique avec les autres ordinateurs si un rseau local physique nest pas mis
en place. Nous ne rentrerons pas dans un cours sur la topologie des rseaux mais ce que
nous pouvons dire est que les rseaux locaux les plus rpandus sont les rseaux en toile.
Cela consiste relier les ordinateurs du rseau un lment central que lon appelle un
HUB ou un Switch.

177
8 3999 TG PA 01

Squence 3

Chaque ordinateur du rseau doit possder une carte rseau sur laquelle sera connect
un cble rseau que lon appelle cble RJ45 ou cble Ethernet.

Lautre extrmit du cble RJ45 doit tre alors connecte un HUB (ou un Switch). Ce
dernier permet de concentrer en un point les informations qui circulent sur le LAN (le
rseau local). En dautres termes, il concentre le trafic rseau en un point. Sans cela, il
faudrait que chaque ordinateur du rseau ait une connexion avec tous les autres ordinateurs du rseau, donc autant de cbles. Cela est impensable. Pour viter cela, on fait
passer tout le trafic rseau en un point central (un carrefour) partir duquel partent
toutes les liaisons vers les diffrents ordinateurs du LAN.
Remarque

Un HUB est galement appel un concentrateur et le Switch un commutateur. En simplifiant le principe, le premier reoit les informations qui circulent sur le rseau et les renvoie
sur tous les ports en direction de tous les ordinateurs du rseau local alors que le deuxime
analyse les informations qui passent par lui pour les renvoyer en direction de lordinateur
destinataire donc sur le bon port . Le deuxime est donc plus efficace.

Pour en finir avec la connectique, il existe galement la notion de routeur. En fait, un


HUB ou un Switch ne peuvent faire communiquer que des ordinateurs se trouvant dans
le mme rseau LAN. Nous y reviendrons avec les adresses IP dans la suite de ce cours. Un
routeur a donc pour fonction de pouvoir runir deux rseaux diffrents et faire passer
des informations dun rseau un autre.
Une fois que linstallation physique de notre rseau est faite ou que tout simplement nous
avons connect le cble RJ45 de notre ordinateur au switch ou au HUB du LAN, il reste
encore paramtrer notre OS donc Windows XP pour quil communique sur ce rseau.
Le principe de la communication est quil y a un metteur dinformation (de donnes) et
un rcepteur (un destinataire). Cest la mme chose lorsque lon envoie un courrier, vous
lenvoyez quelquun (le destinataire) et vous tes lmetteur. Pour que la poste sache
retrouver le bon destinataire, il faut donner son nom et son adresse de manire ce quil
ny ait pas dambigut possible pour le facteur. En reportant cette problmatique dans
notre rseau local, nous voyons immdiatement que lordinateur metteur et lordinateur destinataire doivent pouvoir sidentifier sans ambigut sur le rseau. En effet, un
178
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

ordinateur qui met une donne (une trame rseau) doit fournir le nom du destinataire
et le destinataire doit connatre le nom de lmetteur sans ambigut pour lui rpondre ventuellement. Nous comprenons immdiatement pourquoi lors de linstallation,
Windows XP nous a demand un nom pour notre ordinateur. Ce nom doit donc tre
fourni en sassurant auparavant quaucun autre ordinateur du rseau LAN ne possde
dj ce nom. Cest le mcanisme de fonctionnement des rseaux Microsoft.
Outre le nom de lordinateur, pour placer un ordinateur XP sur notre LAN, lOS
Microsoft veut que lordinateur soit plac dans un groupe de travail. Pour cela, au
moment de linstallation de Windows XP cr un groupe par dfaut qui est le groupe
WORKGROUP .
Le notion de groupe dordinateurs exprime le fait que lon souhaite runir un
ensemble dordinateurs, se trouvant dans le LAN, car ils ont besoin dchanger
des informations ou accder des dossiers partags. Le fait de les placer dans un
groupe fait quils se voient immdiatement donc cela acclre leur collaboration
(voir favoris rseau , Voir les ordinateurs du groupe de travail ).
Pour placer un ordinateur dans un groupe de travail aprs linstallation de Windows XP
ou pour modifier le nom du groupe auquel il appartient, il y a deux possibilits, soit passer par le panneau de configuration Assistant configuration rseau soit par Favoris
rseau et loption Crer un rseau domestique ou un rseau de petite entreprise .
Ensuite, quel que soit le choix, il ne reste plus qu suivre lassistant en fonction des choix
proposs jusqu lcran vous demandant de saisir le nom du groupe dordinateurs. Ce
nom doit tre le mme que celui dj mis en place dans votre rseau LAN ou un nom que
vous donnerez galement aux autres ordinateurs du LAN ou de votre groupe de travail.
En effet, a lintrieur dun mme rseau local, on peut se dfinir plusieurs groupes de
travail diffrents.
Remarque

Dans lun des crans de lassistant que nous venons de citer, Windows vous donnera le
choix entre activer le partage de fichier et dimprimante ou le dsactiver. Si vous choisissez
de lactiver, Windows va configurer le Firewall intgr XP pour autoriser les autres ordinateurs du rseau communiquer avec le votre. Si vous choisissez de le dsactiver, votre
ordinateur ne sera plus visible par les autres ordinateurs. Il est toujours possible de configurer le Firewall manuellement par la suite, mais cela nest pas forcment vident pour un
dbutant donc il peut tre intressant de raliser cette tape en cas de problme.

179
8 3999 TG PA 01

Squence 3

Cependant, sauf dans un rseau LAN, nous ne sommes jamais sr que lordinateur avec
qui nous voulons dialoguer soit un ordinateur sur lequel est install un OS Microsoft
qui plus est de mme version sur tous les ordinateurs du LAN. Cest l o intervient le
protocole TCP/IP qui est un protocole standard quelque soit lOS et le type de rseau. De
toute faon, aujourdhui le protocole TCP/IP est implment de base par un OS. De plus,
mme sur un petit rseau local la personne, qui est en charge de son administration,
paramtrera et utilisera TCP/IP car il offre beaucoup plus de possibilit de fonctionnement dautant plus si ladministrateur souhaite connecter son rseau local Internet.
TCP/IP ne fonctionne pas avec un nom dordinateur pour identifier sans ambigut un
ordinateur mais une adresse (un numro didentification) que lon appelle une adresse IP. Une adresse IP est formalise par 4 valeurs entre 0 et 255 spares les unes des
autres par un point (Exemple: 192.168.1.20). Ces valeurs entre 0 et 255 sont appeles des
octets car pour coder une valeur entre 0 et 255, il faut 8 bits, 8 valeurs binaires entre 0
ou 1 (8 bits forment un octet). Au total une adresse IP est code sur 4 fois 8 bits donc 32
bits. Ceci correspond la norme actuelle qui est IPV4, le futur est lIPV6 o une adresse
est code sur 16 octets mais ceci est une autre histoire.

180
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Qu'est ce que cela change par rapport notre rseau LAN suite l'installation de
Windows XP ? Tout simplement le fait qu'il va falloir que nous paramtrions TCP/IP pour
chacun des ordinateurs avec une adresse IP diffrente.
Pour configurer ou modifier les paramtres TCP/IP de votre ordinateur, il faut cliquer
sur "Afficher les connexions rseau" ou passer par "Connexions rseau" du panneau
de configuration ou encore faire un click-droit sur l'icne "Favoris rseau" et prendre
[Proprits] dans le menu contextuel qui apparat. Une fentre s'ouvre.

Dans cette fentre, faites un click-droit sur licne Connexion au rseau local puis
[Proprits] dans le menu contextuel qui apparat. Attention si vous avez plusieurs
cartes rseaux sur votre ordinateur ou une carte WIFI, il peut y avoir dautres icnes de
connexions rseau, une par carte. Il faut donc faire apparatre les proprits de la bonne
connexion. Windows ouvre une fentre de paramtrage permettant de configurer la
connexion rseau de votre ordinateur par rapport aux caractristiques du rseau local.

181
8 3999 TG PA 01

Squence 3

Cette fentre permet d'ajouter un nouveau type de "Client", un nouveau "Protocole"


ou encore un nouveau "service client" en cliquant sur le bouton "Installer".

Tout cela permet d'ajouter des fonctionnalits supplmentaires au poste informatique


concern par rapport aux autres ordinateurs. Ainsi, pour que le poste considr puisse
partager ses fichiers et ses imprimantes avec d'autres ordinateurs du rseau Microsoft, il
faut au minimum le service "Partage de fichiers et d'imprimantes"..
Chacun des diffrents lments installs peut ensuite tre configur. Dans notre cas,
nous allons voir quelles sont les informations donner pour configurer ou modifier le
protocole "TCP/IP". Pour cela, partir de la fentre "Proprits de connexion au rseau
local" vue prcdemment, cliquez sur "Protocole Internet (TCP/IP)" pour le slectionner
puis [Proprits]. On peut galement faire un double-clic sur le composant "Protocole
Internet (TCP/IP)".

Sans entrer dans le fonctionnement complet du protocole TCP/IP, voyons quoi correspondent les diffrentes options. Je vous rappelle qu'une adresse IP doit tre unique afin
de permettre de reprer sans ambigut un ordinateur dans le rseau.
La premire option propose dans la fentre prcdente est "Obtenir une adresse automatiquement". En informatique, il n'y a rien de magique. Le fait d'obtenir une adresse
IP automatiquement est rendu possible par le fait qu'un ordinateur, situ sur le rseau,
182
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

a pour rle de distribuer les adresses IP aux ordinateurs qui le demande. Cet ordinateur
est appel un serveur DHCP (Dynamic Host Configuration Protocol). Ainsi un ordinateur
quip de Windows 2000 Server ou Windows 2003 Server peut tre configur pour tre
serveur DHCP sur le rseau. L'avantage d'un serveur DHCP est que n'importe quelle ordinateur que l'on ajoute sur le LAN (rseau local) peut obtenir une adresse IP compatible
avec le rseau et ce sans doublon possible puisque c'est le serveur DHCP qui contrle
cela. Remarque : aujourd'hui, les routeurs ADSL fournis par les fournisseurs d'accs
Internet ont une fonction "Serveur DHCP" intgr. C'est pourquoi dans ce cas prcis, on
laisse bien souvent l'option "Obtenir une adresse IP automatiquement" active.
Si on ne possde pas de serveur DHCP, il faut configurer soi-mme l'adresse IP attribue
notre ordinateur voire aux autres ordinateurs du rseau local. C'est pourquoi, nous
allons maintenant expliciter les notions : "Adresse IP", "Masque de sous-rseau" et
"Passerelle par dfaut".
Avant de donner une dfinition, nous allons imager un peu les choses. Supposons que
nous soyons des milliers de personnes runis dans une salle de spectacle. Si toutes les personnes parlent en mme temps, cela fait un bruit pas possible et cela rend difficile une
conversation d'autant plus si les personnes sont dissmines dans la salle. Naturellement,
petit petit, les personnes qui ont besoin de discuter ensemble vont essayer de se rapprocher et s'isoler des autres afin de pouvoir communiquer plus facilement et plus rapidement ensemble.. En d'autres termes, des petites groupes vont se former voire s'isoler
dans d'autres pices du btiment pour se reprer plus facilement les uns les autres et donc
communiquer plus facilement. Nous allons maintenant assimiles ces milliers de personnes
des milliers d'ordinateurs. Sur un rseau, les ordinateurs communiquent ensemble et cela
fait beaucoup de trames (de donnes) qui circulent sur le rseau. Ce dernier peut saturer
et donc ralentir. L'ide va d'tre d'isoler physiquement, via le cblage, les ordinateurs
devant travailler ensemble et paramtrer l'OS de chacun d'eux afin de les placer galement d'une manire logique, l'aide de l'adresse IP et du masque de sous-rseau, dans le
mme rseau. Ainsi les ordinateurs situs sur le mme rseau vont discuter ensemble sans
tre pollus par les trames circulant dans les autres groupes car ils ne les voient pas.

Ce schma montre deux rseaux indpendants. Cela acclre la communication entre


les ordinateurs du mme groupe, du mme rseau. En thorie, seules les donnes intressant le groupe circulent sur le rseau. Vous allez me dire que deviennent les trames
qui ne concernent pas le rseau. En effet, on peut se poser la question car l'intrieur
des trames, il y a stock l'adresse du destinataire et il se peut que le destinataire d'une
trame ne fasse pas partie du rseau. Ces donnes (ces trames) sont alors envoyes vers
un autre lment dont le rle est de trouver quel autre rseau, auquel il est connect,
est concern par la trame ce qui ddouane les ordinateurs du rseau qui a mis la trame
de la gestion de celle-ci. Cet autre lment, dans un rseau TCP/IP, est en routeur. Son
rle est de faire passer les trames qui ne concernent par un rseau "A" vers un autre
rseau "B" auquel il est galement connect et d'empcher par la mme, les trames qui
concernent le rseau "A" de passer et d'aller polluer l'autre rseau "B".
183
8 3999 TG PA 01

Squence 3

Rseau "A"

Rseau "B"

Routeur
Ce routeur possde lui aussi une adresse IP car il utilise le protocole TCP/IP. Il reprsente une
passerelle entre les deux rseaux. Un routeur est donc lment actif permettant de faire un
lien entre au moins deux rseaux. Par exemple le routeur ADSL d'un fournisseur d'accs permet de faire le lien entre votre rseau LAN et le rseau INTERNET. Donc toutes les demandes
qui concernent Internet arrivent ce routeur qui se charge alors de faire passer l'information
sur le rseau Internet. Comme nous venons de le dire, cette passerelle possde une adresse
IP puisque c'est un lment avec lequel le rseau communique via TCP/IP. Il faudra donc placer cette adresse dans la zone rserve l'adresse de la passerelle dans la boite de dialogue
de configuration de TCP/IP. Bien souvent, le serveur DHCP, s'il y en a un, donne galement
cette information au moment o il fournit une adresse IP un ordinateur.
Et le masque de sous-rseau dans tout cela ? Un masque de sous-rseau permet de
dterminer quel rseau appartient une adresse IP. Comment fait-il ? En fait, il permet
de dcouper une adresse IP d'un ordinateur en deux parties : la partie rseau et la partie numro d'hte que l'on peut assimiler au numro de la machine dans le rseau. On
peut imager la chose en disant que lorsque l'on souhaite rendre visite une personne, il
nous faut son adresse. Dans son adresse, il y le nom de la rue ( Numro de rseau) et
le numro de sa maison dans la rue ( numro d'hte)
Par exemple, prenons le paramtrage suivant :

184
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Notre ordinateur a pour adresse IP : 192.168.0.12 et pour masque 255.255.255.0. A partir


de ces informations, nous pouvons dterminer que l'adresse du rseau est 192.168.0.0 et
le numro d'hte de l'ordinateur dans ce rseau est le 12. Notre ordinateur fait partie du
groupe (du rseau) 192.168.0.0 du point de vue TCP/IP et donc ne pourra discuter qu'avec
les ordinateurs du groupe (du rseau) 192.168.0.0.
Sans entrer dans le dtail car il y a de nombreux exemples sur Internet, voyons comment
se fait le dcoupage entre la partie "adresse du rseau" et la partie "numro d'hte". Il
nous faut commencer par traduire les diffrentes donnes en binaire. Ainsi :
192.168.0.12 11000000.10101000.00000000.00001100
255.255.255.0 11111111.11111111.11111111.00000000
Ensuite, on ralise un "Et" binaire entre chacune des valeurs binaires pour trouver
l'adresse du rseau sachant que :
0 Et 0 0
0 Et 1 0
1 Et 0 0
1 Et 1 1
Faisons le calcul :
11000000.10101000.00000000.00001100
11111111.11111111.11111111.00000000
11000000.10101000.00000000.00000000
Traduisons le rsultat en dcimale 192.168.0.0
Maintenant chaque fois que l'adresse IP du destinataire associe au masque de sousrseau ne correspondra pas l'adresse du rseau, la trame sera envoy la passerelle
qui l'enverra vers un autre rseau par exemple Internet. Attention, l'adresse IP de la
passerelle doit faire elle aussi partie du rseau 192.168.0.0. Vous pouvez faire le calcul;
vous verrez qu'elle y est. Heureusement, sinon un ordinateur du rseau ne pourrait pas
communiquer avec elle.
Voil en rsum pour les ordinateurs d'un rseau donn, il y une coupure physique ralise
avec le cblage mais galement une coupure logique partir de l'adresse IP et du masque.
Deux ordinateurs situs sur le mme rseau physiquement mais avec des adresses IP ne
faisant pas rfrence aux mmes rseaux logiques, par exemple cause d'une erreur de
masque de sous-rseau pour l'un d'eux, ne se voient pas. Attention toutefois, si ces deux
ordinateurs sont sur un rseau Microsoft, ils peuvent parfois quand mme se voir via le
service de partages de fichiers et d'imprimantes. C'est li Windows pas TCP/IP.
Nous en resterons l. C'est rapide mais c'est juste pour vous donner les bases vous permettant de continuer dtailler cela via les sites Web notamment les notions de classes
de rseau et les notions d'adresses IP prives et publiques.
Avant d'en finir avec les informations de notre boite de dialogue concernant le paramtrage TCP/IP, nous voyons que l'on peut galement fournir des adresses de DNS (Domain
Name System). Il s'agit d'un serveur situ en gnral sur Internet chez un fournisseur
d'accs et qui permet partir d'un nom de domaine (ex : www.cned.fr) de convertir ce
nom en une adresse IP qui correspond l'adresse IP du serveur Web, contenant les pages
Web souhaites, sur Internet. L'adresse IP du serveur DNS doit tre fournie par votre
fournisseur d'accs Internet ou par l'administrateur de votre rseau. Cette donne peut
tre galement fournie par le serveur DHCP, s'il y en a un et s'il est configur pour cela,
au moment o il fournit une adresse IP un ordinateur.
185
8 3999 TG PA 01

Squence 3

Nous l'avons rappel au dbut de ce paragraphe, Windows XP vous demande un nom


pour votre ordinateur lors de l'installation de l'OS. Mais, comme tout chose au niveau
d'un OS, Il est possible de modifier posteriori les valeurs fournies. Ainsi, pour modifier
le nom de l'ordinateur considr, nous pouvons passer par l'assistant "configuration
rseau", dont nous avons parl au dbut de ce paragraphe, Il existe une autre solution
qui consiste passer par le panneau de configuration puis par l'icne "systme" et enfin
l'onglet "Nom de l'ordinateur". Windows ouvre une boite de dialogue

Dans cette boite de dialogue, cliquez sur le bouton "Modifier". Une autre fentre apparat.

Cette fentre nous permet de modifier le nom de l'ordinateur mais galement placer
notre ordinateur dans un groupe de travail ou dans un domaine. Rappel : un groupe de
travail est un regroupement logique d'ordinateurs mis ensemble pour faciliter le partage
des ressources en naviguant facilement de l'un l'autre. Un domaine regroupe un ensemble d'ordinateurs qui partagent une base de donnes commune contenant toutes les informations de scurit sur les comptes "utilisateurs" (nom de connexion, mot de passe, les
autorisations et les interdictions d'accs aux ressources partages sur le rseau ). Cette
base de donnes est situe sur un ordinateur appel le contrleur de domaine.
186
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Attention, si vous choisissez de faire partie d'un domaine, il faut que sur le rseau, il y
ait un ordinateur install avec "Windows 2000 Server" ou "Windows 2003 Server" et
dfinie comme "Contrleur de domaine". Pour commencer avec les rseaux locaux, le
plus simple est de placer l'ordinateur dans un groupe de travail puis de crer les comptes
sur chacun des postes.
Une fois les modifications effectues, Windows demande de redmarrer l'ordinateur
afin de prendre en compte les modifications.
Lorsque que tout le paramtrage "rseau" est dfini, on peut "tenter" de visualiser les
ordinateurs que vous pouvez atteindre travers votre rseau local. Cela peut se faire
partir de l'icne "Favoris rseau" option "Voir les ordinateurs du groupe de travail" se
trouvant dans la partie gauche de la fentre.

Dans la fentre prcdente, nous pouvons visualiser la liste des ordinateurs faisant partie du mme groupe que l'ordinateur considr condition que ceux-ci soient allums
bien entendu. Dans cette mme fentre, l'option "Rseau Microsoft Windows" affiche
l'ensemble des groupes que vous pouvez atteindre. Remarque : il est galement possible
de cliquer l'icne "Dossier parent" de la fentre "Favoris rseau".
Une fois les groupes visualiss, il suffit de double cliquer sur l'un des groupes pour visualiser les ordinateurs de ce groupe.

187
8 3999 TG PA 01

Squence 3

Une fois la liste des ordinateurs d'un groupe affiche, lutilisateur peut accder aux
ressources partages de lun deux en cliquant sur l'une des icnes reprsentant les ordinateurs accessibles. Windows affiche les ressources partages de l'ordinateur slectionn
mais deux conditions :
Que l'ordinateur slectionn ait des ressources partages (voir prochain paragraphe).
Que le nom de connexion (le login) et le mot de passe utiliss pour ouvrir une session
sur l'ordinateur soient galement connus de l'ordinateur que l'on tente d'atteindre.
Pour cela, si l'ordinateur atteindre n'est pas dans un domaine mais dans un groupe de
travail, il est ncessaire de crer sur celui-ci un compte utilisateur avec les mmes paramtres que le compte qui tente la connexion. Dans le cas contraire, Windows offre une
deuxime chance en affichant la fentre suivante :

Une fois l'identification accepte, Windows affiche les ressources partages du poste que
l'on tente d'atteindre. Remarque : vous pouvez demander Windows de mmoriser les
informations saisies en cochant la case "Mmoriser mon mot de passe".

Remarque : il existe une autre mthode que "Favoris rseau" pour rechercher un ordinateur se trouvant sur le rseau dans le cas o on en connat son nom ou son adresse IP. Il
suffit de passer par le bouton "Dmarrer" puis [Rechercher]. Dans la fentre qui souvre,
cliquez sur "Ordinateurs ou personnes" puis sur "Un ordinateur sur le rseau" et enfin
donnez le nom de l'ordinateur cherch ou son adresse IP.

188
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Dans le cadre du rseau local, Windows offre la possibilit d'ouvrir une session de travail sur
une machine distante comme si on tait en train de travailler dessus, comme si on tait rellement devant le poste. C'est ce que l'on appelle le "Bureau distance". Ce dernier repose sur
la technologue des services "Terminal Server" de Windows. Cela offre la possibilit un administrateur de prendre la main sur un ordinateur sans avoir se dplacer pour raliser les paramtrages souhaits ou les modifications souhaites. Bien entendu, cela est conditionn par le
fait que l'ordinateur distant soit allum mais galement qu'il soit accessible via le rseau.
Pour que le principe fonctionne, il faut d'abord que l'ordinateur, sur lequel on veut ouvrir
une session distance, soit paramtr pour autoriser les demandes de connexion distance.
A partir de cet ordinateur, il faut se placer dans le panneau de configuration, cliquer "systme" et se placer sur l'onglet "Utilisation distance". Dans la boite de dialogue qui apparat,
cochez la case "Autoriser les utilisateurs se connecter distance cet ordinateur".

Seuls les utilisateurs placs dans le groupe "administrateurs", de l'ordinateur sur lequel
on veut ouvrir une session distante, ont le droit de raliser la connexion distance partir d'un autre poste. Nanmoins, partir de la fentre prcdente, on peut ajouter des
utilisateurs en cliquant sur le bouton "Choisir des utilisateurs distants". Attention, ces
comptes doivent avoir obligatoirement un mot de passe pour pouvoir tre utiliss dans
le cadre de la connexion distance.
Pour tenter une connexion distance, il faut se placer sur un ordinateur du rseau,
aller sur le bouton "Dmarrer", puis [Programmes] [Accessoires] [Communications]
[Connexion Bureau distance]. Une fentre s'ouvre

189
8 3999 TG PA 01

Squence 3

Dans cette fentre entrez le nom de l'ordinateur atteindre ou son adresse IP puis cliquez le bouton "Connexion". Remarque : il est possible de paramtrer la connexion
distance partir du bouton "Options >>" et les diffrents onglets qui apparaissent alors
dans la fentre.

Une fois la demande de connexion lance, une fentre d'ouverture de session apparat
dans laquelle, il faut entrer le login et le mot de passe d'un utilisateur autoris ouvrir
une session distance (voir prcdemment).

190
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Une fois la connexion accepte, nous nous retrouvons sur le bureau de l'utilisateur qui
a ouvert la session distante.

Il ne nous reste plus qu' travailler comme si nous tions rellement devant le poste.
Remarque : en haut de la fentre, nous pouvons observer diffrentes icnes dans la
barre de connexion.

Dans l'ordre, nous avons l'icne permettant d'autoriser ou non le fait que cette barre
puisse tre masque lorsqu'on en a pas besoin, l'icne permettant de rduire la fentre
de connexion qui apparat alors dans la barre des tches de l'ordinateur sur lequel nous
sommes physiquement, l'icne d'agrandissement et enfin l'icne de fermeture de la
fentre de connexion distance. Au milieu, nous voyons le nom ou l'adresse IP de l'ordinateur sur lequel nous sommes en train de raliser une connexion distance.

11.

Partager des ressources


Dans notre rseau Microsoft, il est possible de partager des dossiers ou des imprimantes.
Qu'est-ce que cela signifie ?
Partager un dossier a pour consquence d'autoriser les ordinateurs ayant accs votre
ordinateur d'aller consulter, voire modifier, le contenu du dossier partag partir de
leur ordinateur.
Partager une imprimante a pour consquence que les ordinateurs, ayant accs votre
ordinateur, peuvent imprimer leur document sur votre imprimante partir de leur
ordinateur. Bien entendu, il faudra que votre ordinateur soit allum pour que les utilisateurs puissent l'utiliser. Juste une parenthse sur le fait qu'aujourd'hui, on prfre
bien souvent mettre en place une imprimante rseau pourvue d'une interface rseau
(une carte rseau) que l'on configure avec une adresse IP. Cela permet de pouvoir accder l'imprimante de n'importe quel ordinateur du rseau, sur lequel on a install le
pilote de l'imprimante, sans avoir besoin qu'un ordinateur ddi l'imprimante reste
allum. Nous n'irons pas plus loin sur ce sujet car la manire dont il faut procder pour
configurer une imprimante rseau dpend du constructeur du priphrique.
191

8 3999 TG PA 01

Squence 3

Voyons comment procder pour partager des dossiers vis--vis d'autres ordinateurs du
rseau. Pour cela, il faut d'abord vrifier que le service "Partage de fichiers et d'imprimantes" soit actif. Vous pouvez vrifier cela en regardant les services actifs pour la
connexion rseau considre. Dans le cas contraire, i faut installer ce service en cliquant
sur le bouton "Installer".

Ensuite, partir du poste de travail ou de l'explorateur de Windows, pour partager un


dossier, l'utilisateur doit cliquer avec le bouton droit de la souris sur le nom de ce dernier,
puis dans le menu contextuel qui apparat, prendre [Partage et scurit]. Une fentre
apparat dans laquelle on slectionne la case cocher "Partager ce dossier sur le rseau"
de la rubrique "Partage rseau et scurit". Prenons un exemple avec un dossier de nom
"MonRep".

A cette tape, on peut encore modifier le nom de partage de ce dossier. Ce nom correspond au nom que verront les autres utilisateurs du rseau lorsqu'ils tenteront d'accder
ce dossier partag. Vous pouvez galement accorder la permission de venir modifier
les fichiers qui s'y trouvent car par dfaut les utilisateurs du rseau ne pourront que
consulter le contenu de ce dossier. Remarque : cette fentre peut avoir une autre
prsentation (cf fin du paragraphe 1E de la squence 5).
192
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Une fois le choix valid, Windows indique alors que le dossier est partag en plaant une
main en dessous du dossier.

Pour partager une imprimante installe sur un ordinateur, c'est galement trs simple.
Il faut passer par [Dmarrer] [Paramtres] [Imprimantes et tlcopieurs] sur le poste
concern. Cliquez ensuite avec le bouton droit de la souris sur l'imprimante partager
puis prenez [Partager] dans le menu contextuel qui apparat.

Pour finir, indiquer que l'imprimante doit tre partage ainsi que son nom de partage.
Il ne reste plus qu' valider. Une main apparat alors sous l'imprimante comme pour les
dossiers partags.

Voyons maintenant comment un utilisateur utilisant un ordinateur connect au rseau


peut utiliser les ressources partages d'un autre ordinateur du rseau.
Nous avons dj rpondu cette problmatique dans le paragraphe prcdent. En effet,
il suffit de faire apparatre la liste des ordinateurs du groupe de travail auquel appartient
l'ordinateur avec les ressources partages que l'on veut atteindre et double-cliquer sur
l'icne reprsentant cet ordinateur. Eventuellement, Windows vous demandera de donner le login et le mot de passe d'un utilisateur ayant le droit d'ouvrir une session sur le
poste aux ressources partages. Les ressources partages apparaissent alors.
Remarque :
Si la ressource partage est un dossier, il suffit de double-cliquer dessus pour l'ouvrir et
accder son contenu.
Si la ressource partage est une imprimante et que c'est la premire fois que vous
essayez de l'atteindre, il faudra effectuer un click-droit sur l'icne de l'imprimante
(Cf ci-dessous) puis slectionner [Connexion] dans le menu contextuel qui apparat.
Windows excutera la procdure de connexion qui aboutira ajouter cette imprimante dans la liste de vos imprimantes.

193
8 3999 TG PA 01

Squence 3

Toujours dans le cadre des dossiers partags, pour faciliter le travail d'un utilisateur qui
souhaite souvent atteindre un dossier partag situ sur un autre ordinateur du rseau,
il est possible de mettre en place un "lecteur rseau". Pour cela, partir du poste de
travail, cliquez dans le menu [Outils] [Connecter un lecteur rseau]. La fentre suivante
apparat.

Dans cette fentre, slectionnez un nom de lecteur puis indiquer le chemin pour atteindre le dossier partag travers le rseau. Exemple avec un dossier partag de nom
"MonRep" se trouvant sur un ordinateur de nom "Serveur". Il faut soit cliquer sur le
bouton "Parcourir" et indiquer le chemin pour atteindre le dossier partag, cela passe
par la slectionner du nom de l'ordinateur puis du dossier partag, soit taper explicitement le chemin : \\Serveur\MonRep

Une fois que l'utilisateur clique sur le bouton "Terminer", Windows cre le lecteur
rseau : On peut voir ce dernier dans la liste des lecteur rseau dans la fentre "Poste
de travail".

Remarque : En utilisant l'outil d'administration "Gestion de l'ordinateur" (Cf prcdemment dans le support) rubrique "Dossiers partags", il est possible de savoir si un utilisateur est en train de travailler, via le rseau, l'un des dossiers partags de l'ordinateur
considr.
Dernier point concernant les dossiers partags. Il existe ce que l'on appelle les partages
administratifs. En fait, lors de l'installation de Windows XP Pro sur une machine, il y a
cration de dossiers partags par dfaut. Il y a un partage administratif par partition
visible sur le disque dur. Le nom de partage correspond au nom du lecteur suivi de la
lettre "$" (Exemple : C$, E$). Cela permet une personne, ayant le mot de passe d'un

194
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

membre du groupe "administrateurs" sur la machine considre, d'avoir accs en lecture


et en criture sur les partages administratifs, donc les partitions, et ce mme s'il n'y a pas
de dossier partag sur cet ordinateur.
Pour atteindre l'un des partages administratifs, on peut passer par le bouton "Dmarrer"
puis "Excuter" et taper dans la fentre d'excution le chemin pour atteindre le partage
administratif, par exemple : \\Poste1\C$

Remarque :
Dans le chemin donn, le nom de l'ordinateur doit tre prcd de deux antislashs.
Si dans un nom de partage, vous ajoutez le caractre "$" la fin, ce dossier ne sera pas
visible directement dans la liste des dossiers partags mais vous pourrez nanmoins y
accder partir d'un ordinateur du rseau de la mme manire que dfinie prcdemment. Cela peut tre parfois intressant.

12.

Quelques commandes rseaux

12A. La commande "net"


Cette commande utilisable en mode commande permet d'obtenir des informations sur
le rseau mais galement d'exercer des actions comme par exemple crer des lecteurs
"rseau" ou envoyer un message un poste du rseau. Pour en savoir plus sur les options
possibles pour cette commande, tapez "net help" sur la ligne de commande.

Rappel : pour passer en mode ligne de commande avec Windows XP, Cliquez sur le bouton "Dmarrer", prendre [Executer] puis taper "cmd". Il existe une autre solution qui

195
8 3999 TG PA 01

Squence 3

consiste cliquer sur le bouton "Dmarrer" puis prendre "Invite de commandes" dans
la liste des programmes "accessoires".
Exemple d'utilisation de la commande "Net". Si nous tapons la commande
net send Poste1 Bonjour Monsieur Alain Tarlowski
Le message "Bonjour Monsieur Alain Tarlowski" sera envoy l'ordinateur "Poste1".

Remarque : pour que ce message puisse tre affich, il faut que sur le poste metteur
et le poste destinataire, le service "Affichage des messages" soit activ. Il faut aller pour
cela dans le panneau de configuration, "Outils d'administration" puis "Servives"

Voici un autre exemple permettant de crer un lecteur rseau.


net use h : \\serveur\MonRep

12B.

Autres commandes
Il existe d'autres commandes, utilisables en mode commande, attaches au protocole
TCP/IP comme :
La commande "ping" suivi d'une adresse IP d'un ordinateur permet de savoir si l'ordinateur considr est visible sur le rseau, c'est--dire correctement configur. Cette
commande existe galement sous LINUX.
La commande "netstat" affiche des statistiques et des informations sur le protocole
TCP/IP et sur les connexions rseau ouvertes sur la machine qui excute cette commande.
Pour obtenir des informations et les options de cette commande, il suffit de taper "netstat /h"
La commande "ipconfig" affiche les valeurs actuelles de la configuration TCP/IP et permet d'actualiser les paramtres DHCP. Pour obtenir des informations et les options de
cette commande, il suffit de taper "ipconfig /h". Une commande similaire existe galement sous LINUX sous le nom "ifconfig".
Rappel : d'une manire gnrale, toutes les commandes que nous avons pu tudier dans
le cadre de la squence sur MS-DOS peuvent tre utiliss au travers de la fentre "Ligne
de commande"

196
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

13.

Des scripts encore des scripts


Windows comme MS-DOS offre la possibilit d'crire des scripts (des batchs). Cela permet
d'automatiser des actions faites de manire rcurrente par un administrateur ou encore
mettre en place un programme "batch" qui se dclenchera chaque fois qu'un utilisateur se connecte sur le poste. Bref l'tendu des possibilits est grande. De manire gnrale, nous y retrouvons les mmes commandes que nous avons vues dans la squence 2
consacre MS-DOS. Voyons donc les ajouts de Windows XP par rapport MS-DOS

13A. Les variables d'environnement


Les variables d'environnement comme la variable "PATH", que nous avons vu avec MSDOS, contiennent des informations utiles pour l'OS et parfois pour certaines applications. Voici une liste non exhaustive des variables de Windows XP. Nous prsentons ici
les plus intressantes.
Nom de la variable

Description

%ALLUSERSPROFILE%

Contient le nom du dossier du profil commun tous les utilisateurs

%COMPUTERNAME%

Contient le nom attribu l'ordinateur.

%CD%

Contient le chemin du dossier (rpertoire) courant.

%DATE%

Contient la date actuelle.

%ERRORLEVEL%

Contient le code d'erreur de la dernire commande utilise. elle donne


le code retour de la dernire commande excute. C'est l'quivalent de
la variable $? De Linux (Cf fin de la squence 4 dans ce support).

%HOMEDRIVE%

Contient la lettre de lecteur sur laquelle le dossier de l'utilisateur


courant est situ.

%HOMEPATH%

Contient le chemin d'accs complet au dossier de l'utilisateur courant.

%OS%

Contient une chane de caractres dcrivant le systme d'exploitation


install.

%PATH%

Spcifie les chemins de recherche des excutables ou des batchs.

%PATHEXT%

Contient les extensions que le systme considre comme excutables.

%PROMPT%

Dfinie la forme du prompt qui apparat en mode commande donc


dans la fentre de commande.

%RANDOM%

Retourne un entier compris entre 0 et 32167 choisi alatoirement par


le systme.

%SYSTEMDRIVE%

Contient la lettre de lecteur sur laquelle les fichiers du systme sont


situs.

%SYSTEMROOT%

Contient le chemin d'accs au dossier (rpertoire) racine du systme.

197
8 3999 TG PA 01

Squence 3

%TEMP%

Contient le chemin d'accs du dossier temporaire pour les applications.

%TMP%

Contient le chemin d'accs du dossier temporaire pour les applications.

%TIME%

contient l'heure actuelle.

%USERNAME%

Contient le nom d'utilisateur correspondant au compte courant.

%USERPROFILE%

Contient l'emplacement du profil utilisateur du compte courant.

%WINDIR%

Contient le chemin d'accs au rpertoire du systme (gnralement


C :\WINDOWS ou C :\WINNT).

Vous pouvez tester la valeur de ces diffrentes variables d'environnement en vous plaant dans le fentre "ligne de commande" : rappel : cliquez sur le bouton "Dmarrer",
prendre [Executer] puis taper "cmd".
Pour voir le contenu d'une variable d'environnement, il faut utiliser la commande "echo"
dj vue dans la squence MS-DOS. Exemple : echo %USERNAME% .

13B.

Les variables de position ou les paramtres


de la ligne de commande
Ceci est juste un rappel car nous en avons dj parl avec les scripts MS-DOS. Dans un
programme "batch", il est possible, comme pour les commandes MS-DOS, de transmettre un paramtre sur la ligne de commande afin de gnraliser l'action d'un programme
"batch". Il existe des paramtres formels de nom %1 , %2 , ., %9 qui reprsentent
respectivement le premier paramtre pass sur la ligne de commande, le deuxime paramtre, etc. Voici un exemple de code :
@echo off
echo le paramtre est : %1
Nous enregistrons ce programme "batch" sous le nom "param.bat" puis nous excutons
les lignes suivantes

13C.

Les instructions
Instructions

Descriptions

:label

Dfinit un label, un repre, une tiquette. Un label dfinit un point de


branchement partir duquel le "batch" doit poursuivre son excution. (voir
galement la commande "goto"). Attention, le nom d'un label est prcd
par deux-points (":") et ne doit pas dpasser 8 caractres.

call

Permet de lancer l'excution d'un second fichier "batch". Sans cette


instruction, on ne revient pas au batch de dpart.

198
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

echo

Affiche le texte pass en paramtre.

for

Dfinit une boucle. Cette instruction permet d'excuter des commandes en


boucle (Cf ci-aprs).

goto

Permet d'indiquer, l'interprteur de commande, que la suite des


commandes excuter se trouve au niveau du repre (label ou encore
tiquette) dont on prcise le nom la suite de l'instruction "goto".

if

Permet de mettre en place l'excution conditionne d'une commande. Si la


condition teste est vraie, l'instruction ou la commande est alors excute
(Cf ci-aprs).

pause

Suspend l'excution du "batch" jusqu' ce que l'utilisateur appuie sur une


touche.

rem

Le texte qui suit l'instruction "rem" est du commentaire. Il n'est donc


pas interprt par l'interprteur de commande, il permet simplement
l'utilisateur d'apporter des prcisions pour lui-mme ou pour d'autres
utilisateurs sur tout ou partie des instructions du fichier "batch".

Des prcisons sur la commande "if"


Cette commande peut prendre diffrentes syntaxes que voici :

if "Variable" == "Valeur" Instruction


Si la valeur de la variable est gale la valeur fournie, on excute l'instruction qui suit.
Attention les guillemets sont obligatoires.
Exemple 1
@echo off
if "%1" == "/s" Echo Vous avez choisi l'option s
if "%1" == "" Echo il n'y a pas de paramtre
Exemple 2
@echo off
If "%1" == "/u" goto OPT_USER
If "%1" == "/m" goto OPT_MACH
goto ERREUR
:OPT_USER
Echo Vous avez choisi l'option USER
Echo Utilisateur : %USERNAME%
goto fin
:OPT_MACH:
Echo Vous avez choisi l'option MACHINE
Echo machine : %COMPUTERNAME%
goto fin
:ERREUR
Echo Erreur dans la commande
:Fin
Echo Fin de la commande

199
8 3999 TG PA 01

Squence 3

if "Variable" OP "Valeur" Instruction


Si la condition est vrai, on excute l'instruction qui suit. Les guillemets sont obligatoires.
OP peut prendre l'une des valeurs suivantes :
EQU
pour gal
NEQ
pou diffrent de
LSS
pour infrieur
LEQ
pour infrieur ou gal
GTR
pour suprieur
GEQ
pour suprieur ou gal
Exemple
@echo off
if /I "%USERNAME%" NEQ "administrateur" goto fin
echo voici les informations IP de la machine
echo Nom de la machine : %COMPUTERNAME
ipconfig /all
:fin
echo fin
NB : l'option "/I" permet d'indiquer de ne pas faire la diffrence entre majuscule et minuscule

If EXIST Fichier Instruction


Si le fichier existe, on excute l'instruction qui suit.

if NOT EXIST Fichier Instruction


Si le fichier n'existe pas, on excute l'instruction qui suit.

Des prcisons sur la commande "for"


Cette commande permet de boucler un certain nombre de fois sur une instruction. La
syntaxe est :
For %%Variable IN (Liste) DO Instruction
Attention, les %% sont obligatoires devant le nom de la variable
Exemple 1
@echo off
for %%A in (Alain Pierre Nicolas) do echo Bonjour %%A

Nous bouclons sur l'ensemble des valeurs dfinies dans la liste

200
8 3999 TG PA 01

tude du systme dexploitation Windows XP Pro

Exemple 2
Nous plaons une liste de noms dans un fichier de nom "Maliste". Les noms sont placs
les uns en dessous des autres dans le fichier
@echo off
for /F %%A in (Maliste) do echo Bonjour %%A
Nous bouclons sur l'ensemble des valeurs se trouvant dans le fichier. En fait l'option "/F"
indique qu'il faut aller chercher la liste des valeurs dans un fichier
Exemple 3
Nous souhaitons boucler sur un ensemble de valeurs entre 10 et 100 par "pas" de 2
@echo off
for /L %%A in (10,2,100) do echo %%A
Exemple 4
Nous souhaitons boucler et raliser un ping sur un ensemble d'adresses IP sur le rseau
192.168.20.0 et sur les htes de 10 30. Remarque : le masque de sous-rseau est
255.255.255.0
@echo off
for /L %%A in (10,1,30) do ping 192.168.20.%%A n 1
Note : L'option "-n 1", place la fin de la ligne de commande, est une option de la commande "ping" qui
indique que l'on ne souhaite raliser qu'un seul test d'cho sur l'adresse IP fournie en paramtre. Par dfaut, la
commande "ping" ralise 4 tests d'cho conscutifs.

Voil quelques lments qui vont vous permettre de vous entraner crer des scripts
partir du langage de commandes DOS. Nous allons maintenant quitter le monde DOS/
Windows pour voir comment fonctionne un autre systme d'exploitation, je veux parler
de LINUX.

201
8 3999 TG PA 01

Squence 4

tude du systme dexploitation


LINUX
Dans la liste des systmes dexploitation utiliss dans le cadre dun rseau par des
entreprises ou par des particuliers, nous pouvons remarquer la prsence grandissante du systme LINUX. En effet, outre la polmique que lon peut entendre entre le
pros et les anti Microsoft dans laquelle nous ne rentrerons pas, LINUX est devenu
une alternative Windows proposant un norme panel dutilitaires et surtout pouvant fonctionner avec des ordinateurs de moindre capacits.
Dans cette squence, nous allons dfinir les notions de base de LINUX, dcrire les
commandes systmes de base sans entrer dans tout le dtail de ladministration du
systme LINUX et enfin nous verrons comment crer nos propres commandes travers des script-shells. Je vous rappelle quInternet est une mine dor si vous voulez
dores et dj aller plus loin mais attention, il faut mieux ne pas brler toutes les
tapes et sparpiller au risque de sembrouiller lesprit. Bien entendu, comme nous
lavons fait dans le cadre de MS-DOS, nous travaillerons en mode Texte (en mode
caractre galement appel mode ligne de commande ) car le mode graphique masque certaines informations sur le fonctionnement du systme et les menus
et les boites de dialogue que lon y trouvent dpendent des distributions utilises.

u Contenu
1.

Quelques gnralits sur LINUX ? ............................................... 205

1A.
1B.
1C.
1D.

DUNIX LINUX ........................................................................................ 205


Que propose LINUX ? ............................................................................... 207
Les distributions LINUX en deux mots ................................................... 208
Installer LINUX sur son poste informatique ........................................... 208

2.

Fichiers et rpertoires sous Linux ............................................... 212

3.

Dmarrage de Linux .......................................................................... 216

4.

La notion de processus .................................................................... 217

5.

Connexion sur un systme UNIX.................................................. 223

6.

Les diffrents Shells .......................................................................... 231

7.

Quelques commandes de base ..................................................... 232

7A.
7B.
7C.
7D.

Avant de commencer ............................................................................... 232


Afficher la date et lheure ....................................................................... 235
Effacer lcran ........................................................................................... 235
Obtenir des informations sur une commande ....................................... 236
203

8 3999 TG PA 01

Squence 4

7E.
7F.
7G.
7H.
7I.
7J.

Changer un mot de passe ou verrouiller/dverrouiller un compte...... 236


Gestion des utilisateurs ........................................................................... 237
Gestion des groupes ................................................................................ 238
Avoir des informations sur lutilisateur de la session active ................ 240
Informations sur les utilisateurs actuellement connects .................... 240
Devenir root pour la session en cours sans se dconnecter .......... 241

8.

Les commandes de gestion des fichiers et des rpertoires242

8A.
8B.
8C.
8D.
8E.
8F.
8G.
8H.
8I.
8J.

Se dplacer dans larborescence des rpertoires................................... 242


Obtenir le nom du rpertoire courant (Work Directory) ...................... 242
Crer un nouveau rpertoire................................................................... 242
Supprimer un rpertoire .......................................................................... 243
Lister le contenu dun rpertoire ............................................................ 243
Copier un fichier ou un rpertoire ......................................................... 247
Dplacer des fichiers ou des rpertoires ................................................ 247
Supprimer des fichiers ou des rpertoires ............................................. 248
Afficher le contenu dun fichier .............................................................. 249
Rechercher un fichier dans larborescence ............................................. 249

9.

Les permissions sur les fichiers et les rpertoires ................. 252

10. Autres commandes de base ........................................................... 259


10A.
10B.
10C.
10D.
10E.

Mettre en place un lien ........................................................................... 259


Formater une disquette LINUX................................................................ 260
Monter/dmonter un systme de fichiers LINUX .................................. 260
Arrter ou rebooter un serveur LINUX ................................................... 261
Accder des donnes dune disquette au format MS-DOS ............... 262

11. Gestion des processus ...................................................................... 262


11A.
11B.
11C.
11D.
11E.

Lister les processus en cours ................................................................... 262


Arrter un processus ................................................................................ 263
Processus en arrire-plan ....................................................................... 263
Chaner les processus ................................................................................ 264
Les redirections......................................................................................... 267

12. Remarques sur linterprteur de commande bash ......... 269


12A. Quelques variables denvironnement .................................................... 269
12B. Les fichiers de bash .................................................................................. 271
12C. Les alias ..................................................................................................... 272
13. Mettre en place des scripts-shell.................................................. 273
13A. Avant de commencer avec les scripts-shell sous LINUX........................ 273
13B. Les paramtres de position ..................................................................... 274
13C. Les instructions de la programmation shell .................................... 275

14

Faire cohabiter plusieurs systmes dexploitation .............. 289

15. Tableau rsum des commandes vues ....................................... 290

204
8 3999 TG PA 01

tude du systme dexploitation Linux

1.

Quelques gnralits sur LINUX ?

1A.

DUNIX LINUX
Pour dfinir au mieux les principes de LINUX et donc dcrire la gense de LINUX, il nous
faut commencer par lhistoire dUNIX. En effet, les concepts de fonctionnement et la
majorit des commandes systmes que lon trouve dans LINUX prennent leur source dans
les concepts dUNIX.
Lhistoire dUnix commence en 1969. cette poque, un certain Ken Thompson travaillait
dans la socit Bell Labotories sur un projet de dveloppement dun systme dexploitation MULTICS. En mars 1969, La Bell Labotories , qui collaborait sur ce projet avec
dautres socits (AT&T, General Electric, MIT), se retire du projet. Mais Ken Thompson
ayant accumul une multitude dides pour le projet MULTICS, dcide de dvelopper son
propre systme dexploitation en essayant de crer du neuf. Ken Thompson souhaite un
systme dexploitation qui propose :
un systme de gestion de fichiers hirarchis ;
un principe identique pour envoyer des donnes dans un fichier ou sur un priphrique. En Unix, tout est vu comme un fichier. Ainsi crire des caractres lcran
revient crire dans un fichier associ lcran et lire les donnes saisies au clavier
revient lire les donnes se trouvant dans le fichier associ au clavier ;
offrir la possibilit que des processus (programme en cours d'excution) puissent
gnrer d'autres processus afin de leur faire excuter de nouvelles tches. Cela
implique que le systme soit multitches ;
un ou plusieurs interprteurs de commandes qui ragissent ses besoins ;
une palette d'outils importante ;
un systme d'exploitation portable et fiable.
Avec laide entre autre de Denis Ritchie, Rudd Kanaday et Brian Kernigham, Ken Thompson
dmarre sur un PDP-7 de Digital Equipment. En 1969 sort la premire version dUNIX.
En 1971, la Bell Labotories dcide de passer UNIX sur une machine PDP-11 plus
puissante pour le multitches . Mais cela impliqua une rcriture complte dUnix.
Ce qui nous montre immdiatement que le problme toujours en suspend par rapport
la volont de Ken Thompson, est la portabilit. En 1971, paralllement au dveloppement dUNIX, Denis Ritchie travaille avec Brian Kernigham sur un nouveau langage de
dveloppement, cest le langage C qui propose la notion de structures de contrle, de
pointeurs, de bibliothques, des oprations E/S (entre/sortie).
En 1973, Le systme Unix fut rcrit 90 % en Langage C et 10 % en Assembleur en y
ajoutant de nouvelles fonctionnalits. Les principales fonctionnalits furent regroupes
dans un noyau de petite taille. Ainsi le problme de portabilit nest plus un problme
car il suffit en effet pour adapter UNIX une nouvelle architecture machine, de crer
un compilateur C pour cette nouvelle architecture, de compiler le noyau avec le nouveau compilateur C et de rcrire la partie assembleur pour la nouvelle architecture de
machine.
Un compilateur est un programme qui permet de traduire les instructions dun programme, crit dans un langage de programmation donn, en code machine excutable
directement par le processeur de la machine.

205
8 3999 TG PA 01

Squence 4

Ainsi Unix est trs li au langage C et le compilateur est toujours livr en standard.
Attention, il ne faut pas confondre un interprteur avec un compilateur. En effet, un
interprteur va interprter les instructions au fur et mesure quon les lui donne afin de
les faire excuter immdiatement par lOS sans passer par la phase de production dun
fichier excutable. Pour sen convaincre, il suffit de penser linterprteur de commandes
que lon trouve dans les systmes dexploitation et qui interprte au fur et mesure les
commandes tapes par un utilisateur.
Dans les annes qui suivirent sont dveloppement, Unix fut dabord utilis en interne
lentreprise, puis distribu quelques universits et enfin des socits commerciales
ont fait lacquisition des droits sur le produit et ont cr leur propre version dUnix mais
toutefois en respectant une base commune. Nous avons UNIX SCO, Solaris chez SUN, AIX
chez IBM. Le problme est que ces Unix sont propritaires, cest dire quune socit en
dtient le code source et vend les excutables trs chers (tant qu faire).
Pour conclure sur UNIX, nous pouvons dire que cest un systme dexploitation qui se
veut fiable et sr, portable sur diffrentes architectures matriels, multitches premptif
et multi-utilisateurs. Bien sr cette notion multi-utilisateurs implique la notion de scurit et didentification des utilisateurs. Unix est donc trs intressant mais cependant, il
reste du domaine de lentreprise car cher et surtout pas forcment facile daccs pour un
utilisateur non initi.
Et LINUX dans tout a me direz-vous ! Jy viens justement.
Dans les annes 1980, Andrew TANENBAUM, chercheur et enseignant en informatique,
utilisait les codes sources de la version dUNIX de la socit AT&T pour illustrer ses
cours avec ses lves. La commercialisation dUNIX faisant, la socit AT&T interdit
alors Andrew TANENBAUM lutilisation des codes sources de leur produit dans un cadre
pdagogique.
En 1986-1987, A. TANENBAUM dveloppa alors pour ses lves, en partant de rien, un
systme dexploitation rduit fonctionnant comme UNIX quil nomme MINIX. MINIX fait
le minimum mais est suffisant pour montrer ce quil faut montrer dun OS des lves
dans un temps limit avec un code source libre de droit. Nous approchons de LINUX.
Au dbut des annes 1990, un tudiant finlandais de luniversit dHelsinki, Linus
TORVALDS dcide dcrire lui aussi un systme dexploitation type Unix pour le besoin de
ses tudes mais aussi pour son plaisir. Il prend comme base Minix et cible son systme
pour les PC ayant une architecture de type 80386 dIntel. Linus TORVALDS commence
r-crire certaines parties du systme Minix afin de lui ajouter des fonctionnalits et
de le rendre plus efficace et il lui donne pour nom LINUX . Il dcide ensuite de diffuser
le code source de son travail via Internet afin que chaque personne qui le souhaite puisse
le faire voluer.
Amuses par cette initiative, de nombreuses personnes ont contribu aider Linus
THORVALD raliser ce systme. En 1991 une premire version du systme a vu le jour, puis
en 1992 une autre version avec presque toutes les erreurs corriges. LINUX est sur les rails.
Remarque

Comme le code source de Linux est accessible gratuitement, cela fait de cet OS un systme ouvert.
En effet, il peut ainsi tre modifi et compil sur dautres types darchitecture que le PC.

206
8 3999 TG PA 01

tude du systme dexploitation Linux

Paralllement la gense de LINUX, la fondation FSF ( Free Software Foundation ou


Fondation pour les logiciels libres ), cre par Richard Stallman, a dvelopp un projet
nomm GNU (qui est un acronyme rcursif signifiant GNU is Not Unix ) afin de permettre la distribution de programmes libres de droit. Ce projet, qui existe depuis 1984, a pour
but dessayer de crer un systme dexploitation fonctionnant comme UNIX mais gratuit.
Leur production jusque l ntant pas au point, le rapprochement GNU et Linux sest opr
naturellement. Linux ntant quun systme dexploitation, il a fallu crer des utilitaires
complmentairement afin de rendre le produit plus intressant. Ces derniers ont t crs
sous le label du projet GNU. Ainsi sont ns les logiciels libres et le terme GNU/LINUX.

1B.

Que propose LINUX ?


LINUX est un systme dexploitation qui fonctionne sur la plupart des architectures informatiques. Il est ranger dans la catgorie des OS mutitches premptif et multi-utilisateurs. Cela signifie quil est capable de grer lexcution en simultan de plusieurs
programmes, que lon appellera des processus (voir plus loin dans cette squence), et quil
accepte que plusieurs utilisateurs utilisent les ressources de la machine sur laquelle est
install LINUX soit directement sur cette dernire, on emploiera plutt lexpression en
local , soit via un autre ordinateur se trouvant sur le mme rseau. De plus LINUX fonctionne en mode 32 bits voire en mode 64 bits ce qui en fait un systme rapide et fiable.
Pour ajouter un complment dinformation dans le domaine de la fiabilit, nous avons dit
au dbut de ce paragraphe que LINUX est multitches premptif. Allez un petit rappel
pour la route.
Comme nous venons de le rappeler, LINUX autorise le fait que plusieurs programmes
puissent fonctionner en simultan. En fait pour fonctionner, un programme a besoin
daccder au processeur. Cela signifie qu un instant donn, un seul des programmes
en cours dexcution peut drouler ses instructions. Il faut donc, pour que lillusion du
simultan ait lieu pour lutilisateur, que le systme puisse, par un moyen ou un autre,
donner accs au processeur aux diffrents programmes en cours dexcution. Dans le cas
du premptif, le systme, via un programme que lon appelle le scheduleur, va, intervalle rgulier, interrompre le programme qui occupe le processeur et le mettre en attente
afin de rendre actif un autre des programmes qui est attente. La passation de pouvoir
entre programmes se ralise intervalle rgulier, on dira au bout dun certain quantum
de temps. Par cette mthode, un programme qui se plante ne plantera pas le systme car
le scheduleur ne lui donnera plus la main et donc celui-ci noccupera pas inutilement le
processeur.
LINUX peut fonctionner aussi bien en mode caractre quen mode graphique et il
est trs riche en programmes utilitaires. Il peut galement rendre beaucoup de services
car il peut faire serveur de mail, serveur de FTP, serveur DHCP, serveur Web ou encore
firewall. Il propose un grand nombre de langages de dveloppement de base (C++, Java,
Fortran, Lisp, Basic, Python, Objective C, Smalltalk, etc). Il est difficilement plantable .
Il possde des mulateurs pour Mac et Windows mais il peut galement cohabiter avec
dautres systmes dexploitation via le principe de multiboot. Nous pouvons galement
ajouter que son gros avantage est quil volue trs rapidement avec le potentiel de
personnes qui dveloppent pour lui sans enjeu commercial. Bref, les entreprises commencent se tourner vers lui comme lon dj fait toutes les entreprises grant des
serveurs Web. Mais, comme il faut toujours une petite touche ngative aux meilleures
choses, il peut tre pour certains non initis de linformatique, assez impermable dans

207
8 3999 TG PA 01

Squence 4

son fonctionnement, dans son administration, dans la configuration des priphriques


et dans linstallation des nouveaux programmes par rapport ce que peuvent proposer
Windows ou les systmes MAC mais soyons sr que lavenir modifiera cela. On commence
le constater.
Enfin dernire chose. Avec LINUX, les sources du systme sont libres mais pas forcment
videntes lire.

1C.

Les distributions LINUX en deux mots


Comme nous venons de le dire prcdemment, avec le nombre croissant de dveloppeurs
travaillant sur LINUX, celui-ci a rapidement pu intgrer tous les outils prsents sous UNIX
mais galement un grand nombre doutils supplmentaires. Cependant, cela ne suffit
pas pour dmocratiser LINUX. En effet, un informaticien expert peut faire fonctionner
ensemble le noyau LINUX, les outils GNU et les logiciels libres mais pour les utilisateurs
lambda ce nest pas toujours vident voire rpulsif. Les distributions sont nes alors de
ce constat. Des intgrateurs ont mis ensemble noyau Linux, outils et autres logiciels
pour en faire un tout cohrent, facile dinstallation. Il existe diffrentes distributions :
Mandrake, Debian, SuSE, Redhat, Ubuntu, Fedora et biens dautres encore. Aujourdhui,
certaines deviennent payantes non pas par rapport au systme LINUX mais par rapport
aux services que peut proposer une distribution autour de LINUX.
Les diffrentes distributions de LINUX apportent une aide diffrente sur linstallation de
LINUX sur votre ordinateur et chacune apporte son lot dutilitaires mais quelque soit la
distribution, le mcanisme gnral de LINUX sera le mme, heureusement !

1D.

Installer LINUX sur son poste informatique


Pour installer LINUX, il faut dabord choisir une distribution. notre niveau, toutes les distributions se valent car nous nallons pas entrer dans les mandres du rglage et de ladministration du noyau LINUX. En effet, cela est assez complexe, surtout si vous tes dbutant,
et cela napporte rien de plus dans notre objectif de dcouverte des principes de LINUX.
Encore une fois, Internet est trs riche en sites ou en forums de discussion permettant daller
plus loin. Dans notre cas, les exemples seront fait partir de la distribution gratuite de Red
Hat qui est la Fedora. Il fallait en choisir une ! Attention, cela ne veut pas dire que les autres
distributions ne sont pas bien. Par exemple, Debian est bien galement pour dbuter.
Une fois que vous avez choisi votre distribution, il faut vous procurer les CD ou les DVD
dinstallation. Pour cela, soit vous les avez physiquement, soit vous tlchargez, partir
dInternet et du site du distributeur ou dun site tiers, les fichiers iso des CD ou des
DVD dinstallation. Un fichier iso est un fichier image du contenu dun CD-ROM ou
dun DVD. Cette image a t ralise partir dun logiciel spcifique qui crit dans un
fichier unique dextension .iso tout le contenu du CD ou du DVD concern. Une fois
les fichiers iso de la distribution rcuprs, il suffira de graver limage iso sur un
CD ou un DVD vierge laide dun logiciel de gravure et de loption adquate gnralement graver une image .
Remarque

Le logiciel de gravure permet bien souvent de crer galement un fichier image dun CD ou
dun DVD.

208
8 3999 TG PA 01

tude du systme dexploitation Linux

Certaines distributions proposent des fichiers images de CD ou de DVD. Dans le cas des CD,
il peut y avoir de nombreux fichiers images, mais en gnral il nest pas ncessaire de tous
les rcuprer car bien souvent, seul le premier contient les fichiers ncessaires linstallation, les autres tant utiliss pour les applications complmentaires de la distribution.
Une fois les CD ou DVD dinstallation de la distribution LINUX votre disposition, deux
solutions soffrent vous pour linstallation :
vous ddiez votre machine totalement LINUX. Dans ce cas, il ne reste plus qu
mettre le premier CD ou DVD dinstallation dans le lecteur, lancer le boot de la
machine sur le CD et suivre les diffrentes tapes de linstallation. Attention de bien
conserver les informations fournies notamment le mot de passe de ladministrateur
(utilisateur root ) ;
vous souhaitez conserver votre installation de Windows. Pas de problme, LINUX
peut parfaitement tre install sur un ordinateur sur lequel est dj install
Windows. Cela permet de disposer dun ordinateur qui peut dmarrer soit en mode
LINUX soit en mode Windows . Pour cela, il est ncessaire davoir crer au
pralable des partitions pour chacun des systmes dexploitation ou davoir deux
disques durs. Dans le cas o vous devez crer des partitions posteriori, cest--dire
alors que Windows est dj install, aidez-vous dun logiciel comme Partition
magic car si vous utilisez fdisk , vous risquez de perdre les installations dj
ralises. Une fois que tout est prt, il ne vous reste plus qu installer la distribution
LINUX que vous avez choisi. Attention, dans le cas o rien nest encore install sur
les diffrentes partitions, commencez par installer Windows, puis ensuite, installez
LINUX (voir les explications ci-aprs).
Comment dmarre ensuite sur WINDOWS ou LINUX ? Lors de linstallation de LINUX,
le systme installe et paramtre, dune manire fort simple voire transparente, un
bootloader LILO ou GRUB qui permet de mettre en place un menu de dmarrage
offrant la possibilit de booter sur lun ou lautre des systmes. Attention, si vous installez Windows aprs LINUX, le bootloader de Windows de nom NTLDR crasera
sans complexe le bootloader de LINUX ce qui risque de poser des problmes pour
lancer LINUX par la suite.
Remarque

Avec deux disques durs spars ayant chacun son OS, il faudra intervenir au niveau du
Setup du BIOS afin de booter sur lun ou lautre des disques.
En fait, aujourdhui, une troisime solution soffre nous : la machine virtuelle. Il sagit
en fait dun logiciel que vous installez dans lenvironnement WINDOWS ou LINUX et
qui mule le fonctionnement complet dun ordinateur avec tous les lments que lon
peut trouver lintrieur (exemple : RAM, disque dur, carte rseau). Ces logiciels sont
mme capables dmuler plusieurs machines virtuelles en mme temps avec sur chacune
delles un OS diffrent. Un logiciel de virtualisation peut donc permettre de crer, par
exemple, plusieurs machines virtuelles afin dessayer plusieurs distributions LINUX ou
plus simplement, une machine virtuelle peut faire fonctionner Windows 2000 alors que
jai install Windows XP sur ma machine relle. Bref, toutes les possibilits sont autorises. En rsum, une machine virtuelle simule le fonctionnement de la mmoire, dun
ou plusieurs processeurs, dun disque dur et mme des cartes rseaux, bref tout comme
une vraie machine avec en plus la possibilit de faire fonctionner dessus un OS. Je peux
ainsi mamuser paramtrer et tester lOS de ma machine virtuelle sans risque pour le
fonctionnement de lOS de la machine relle.

209
8 3999 TG PA 01

Squence 4

Dans les logiciels de virtualisation, nous trouvons VMware Workstation, VMware Server,
VirtualPC de Microsoft ou encore Virtual BOX de Innotek. VMware Server, VirtualPC et
VirtualBox sont libres. VMWare Workstation est payant mais peut tre utilis gratuitement
pendant 30 jours. Cette liste nest pas exhaustive. Attention, ces logiciels sont installer sur
une machine relle sur laquelle est install Windows. Ils sont tlchargeables sur Internet.
Une fois le logiciel de virtualisation install, il ne reste plus qu installer lOS souhait
sur la machine virtuelle. Cela peut se faire partir du CD ou du DVD dinstallation ou
directement partir des fichiers iso tlchargs.
Allez un premier exemple partir de limage disque (fichier iso ) de Fedora 8 et
VMware Workstation .
a. Lancer lexcution de VMware Wiorkstation
b. Dans le menu prendre [File] [New] [Virtual Machine]
c. Suivez lassistant en choisissant une configuration typique. Vous aurez tout le loisir
ventuellement de dtailler les diffrentes options plus tard mais ce nest pas le
sujet de ce support.
d. Poursuivez les crans de lassistant en choisissant une installation LINUX dans le
deuxime cran et en donnant le nom de FEDORA comme nom de machine dans
le troisime cran de lassistant.
e. Indiquez ensuite si vous voulez ou non une carte rseau virtuelle puis poursuivez
lassistant jusquau bout
f. Au final, VMware fait apparatre le nom de la machine virtuelle dans la liste des
favories (cran n1).

1
2
3

g. Pour raliser linstallation de Linux lintrieur de la machine virtuelle :


soit vous avez le CD ou le DVD dinstallation dans le lecteur et vous pouvez cliquer
sur Start this virtual machine dans lcran n2 pour dmarrer linstallation ;
soit vous navez que le fichier iso et dans ce cas, il faut alors double-cliquer
sur le device CD-ROM dans lcran n3, indiquez que vous allez utiliser une
image iso puis la slectionner en cliquant sur le bouton Browse et valider
votre choix. Pour lancer linstallation il ne reste plus qu cliquer sur Start this
virtual machine dans lcran n2.
h) Une fois que linstallation de lOS est faite sur la machine virtuelle, il ne reste plus
qu lancer lOS en cliquant sur Start this virtual machine dans lcran n2. Nous
pouvons alors assister au dmarrage de la machine virtuelle comme si ctait une
machine relle.

210
8 3999 TG PA 01

tude du systme dexploitation Linux

Pour arrter la machine virtuelle, il suffit de cliquer avec le bouton droit de la souris sur
le nom de la machine (cran n1) puis slectionner Power off .
Un deuxime exemple ? Daccord ! Cette fois-ci, partir de limage disque de Fedora
8 et Virtual Box .
a. Lancer lexcution de Virtual Box.
b. Cliquer licne Nouveau ou prendre dans le menu [Machine] [Nouveau]. Suivez
lassistant en donnant un nom la machine virtuelle (ex : Fedora).
c. Suivez les diffrents crans de lassistant en modifiant certains des paramtres si
vous le souhaitez sachant que vous pourrez toujours le faire ensuite.
d. Une fois lassistant termin, dans lcran qui apparat, slectionnez le nom de la
machine virtuelle dans la partie gauche de lcran puis double cliquez loption
CD-DVD-ROM dans la partie droite.
e. Cliquez la case cocher Installer un lecteur CD-DVD-ROM afin de slectionner
loption puis loption Fichier image iso .
f. Slectionnez le fichier iso voulu. Pour cela, cliquez licne Choisir , situ
droite de la liste de choix, cliquez Ajouter et indiquez o se trouve le fichier
iso en le slectionnant. Validez votre choix en cliquant le bouton Choisir puis
le bouton OK .
g. Double-cliquez sur le nom de la machine virtuelle et linstallation de lOS partir
du fichier iso dmarre.
Remarques

Que ce soit avec VMware ou Virtual Box , une fois la machine virtuelle dmarre et
lOS prt lemploi, il faut encore cliquer sur lcran de la machine virtuelle pour activer
cette dernire et la mettre lcoute de toute action souris ou clavier. Pour redonner la main
la machine relle, il faut appuyer sur les touches Ctrl + Alt pour VMWare et sur
la touche Ctrl de droite pour Virtual Box . Attention galement au fait que si dans
la machine virtuelle, linstallation de lOS nest pas correcte, certains lments de lOS ne
ragiront pas comme vous le souhaitez, cest comme pour une machine relle.
Pour travailler avec LINUX, une dernire solution existe. Ce sont les live-CD . Toutes les
distributions nen proposent pas. Un Live-CD est un CD ou DVD bootable sur lequel
se trouve lOS que lon souhaite utiliser. Il ny a donc aucune installation faire sur le
disque dur ni aucun partitionnement prvoir pour installer un OS. En fait, en bootant
sur le Live-CD , lOS sinstalle en mmoire RAM et ventuellement dans une mmoire
de swap sur disque dur. Une fois que lon arrte lOS mis en place en mmoire RAM par
le Live-CD , il ny a plus aucune trace sur la machine. Pour crer un Live-CD , il faut
rcuprer un fichier iso . Il suffit ensuite de graver limage du CD ou du DVD contenu
dans le fichier iso laide dun utilitaire de gravage et nous disposons alors dun
Live-CD fonctionnelle.
Prcdemment, jai dit quil existe une dernire solution. Je vous ai menti. En fait, il existe encore la possibilit dinstaller une distribution sur une cl USB et de booter dessus si
votre BIOS et le Setup autorisent cette possibilit. Pour mettre en place cette solution, je
vous renvoie sur les sites Internet qui proposent cela car nous avons dj dcrit beaucoup
de possibilit pour arriver travailler avec LINUX.

211
8 3999 TG PA 01

Squence 4

2.

Fichiers et rpertoires sous Linux


Comme nous en avons dj parl dans le cadre de MS-DOS et de Windows, LINUX met
galement notre disposition le mcanisme de fichiers (fichiers texte , fichiers excutable , fichiers document utilisateur , etc..) et de rpertoires. La notion de fichier
sous LINUX est mme encore plus primordiale car je vous rappelle que sous LINUX tout
est vu comme un fichier mme les priphriques.
Les chiers et les rpertoires sont galement grs sous forme darborescence sous LINUX.
En haut de larborescence, on trouve le rpertoire principal qui a pour nom racine .
Celui-ci se reprsente par / (caractre barre de division) galement appel caractre
slash . Attention, ce symbole est linverse de celui employ par MS-DOS et Windows.
Voici un exemple darborescence :
Racine

Fichier1

home

jacques

pierre

Fichier2

dev

etc

passwd

group

alain

ProgC

Fichier11

Fichier12

Bien entendu, nous y retrouvons de nouveau les notions de chemin absolu et de


chemin relatif . Petit rappel :
un chemin relatif est le chemin suivre, dans larborescence, pour atteindre un point
de celle-ci partir du rpertoire courant (rpertoire de travail). Sous LINUX, ce dernier
est galement appel le WORK DIRECTORY ;
un chemin absolu est le chemin suivre dans larborescence pour atteindre un point de
celle-ci partir du rpertoire principal (racine). Un chemin absolu commence toujours par
/ , ceci pour indiquer quon part du rpertoire principal et non du rpertoire de travail.
Exemples raliss partir de larborescence des rpertoires prsente prcdemment :
si le rpertoire courant est le rpertoire home , alors alain/ProgC est le chemin relatif suivre pour atteindre ProgC partir du rpertoire home et
/home/alain/ProgC est le chemin absolu ;
si le rpertoire courant est le rpertoire etc , alors ../home/alain/ProgC est
le chemin relatif suivre pour atteindre ProgC partir du rpertoire etc
(Lutilisation de .. indique que lutilisateur veut remonter dun niveau dans larborescence) et /home/alain/ProgC est le chemin absolu ;
212
8 3999 TG PA 01

tude du systme dexploitation Linux

si le rpertoire courant est le rpertoire alain , alors ../../etc/passwd est le chemin relatif suivre pour atteindre le fichier passwd contenu dans le rpertoire
etc et /etc/passwd est le chemin absolu.
linstallation de LINUX, un certain nombre de rpertoires sont crs automatiquement
avec pour chacun deux une fonction bien prcise. En voici une liste non exhaustive :
Nom du rpertoire

Description

/boot

Rpertoire contenant les fichiers de dmarrage de LINUX notamment


limage compresse du noyau LINUX. Il sagit dun fichier de nom
vmlinuz suivi du numro de la version du noyau.

/etc

Rpertoire contenant les fichiers de configuration du systme et les


principaux scripts de dmarrage du systme.

/root

Rpertoire personnel de ladministrateur. Ce dernier a pour nom


root sous LINUX.

/dev

Rpertoire contenant des fichiers spciaux permettant la


communication avec les priphriques (exemple : disque, carte
rseau, terminal de connexion, imprimante). Ces fichiers sont appels
des fichiers de priphrique.

/sbin

Rpertoire contenant les commandes ncessaires au dmarrage du


systme LINUX et les fichiers excutables destins uniquement
ladministration du systme.

/bin

Rpertoire contenant les fichiers excutables de base. Il sagit en


gnral des commandes externes de LINUX utilisables par tous les
utilisateurs.

/home

Rpertoire partir duquel seront crs les rpertoires personnels de


chaque utilisateur autoris se connecter sur la machine LINUX. (voir
plus loin dans cette squence).

/lib

Rpertoire contenant les librairies et les modules ncessaires au


noyau.

/tmp

Rpertoire destin aux fichiers temporaires.

/mnt

Rpertoire utilis dans les oprations de montage des systmes de


fichiers contenus par exemple sur un cdrom, sur une disquette. Sur
une cl USB (voir les commandes systmes mount et umount ).

/var

Rpertoire contenant des donnes variables lies la machine


(fichiers dimpression, traces de connexions) mais aussi les journaux
( logs en anglais) relatant tous les vnements du systme.

/usr

Rpertoire un peu fourre-tout. On y trouve quantit dutilitaires, de


bibliothques, de manuels destination des utilisateurs.

Dans MS-DOS ou dans Windows, les partitions et les diffrents lecteurs dans lesquels on
place un support de stockage (CD-ROM, Disquette, Cl USB, etc) sont reprs pas diffrentes lettres comme A: C: D: et possdent chacun leur propre arborescence avec, leur
sommet, un rpertoire racine. Cest pourquoi, il est ncessaire de changer de lecteur si lon
souhaite aller dans un rpertoire se trouvant dans une autre arborescence. La philosophie
de LINUX est diffrente. En effet, LINUX possde une unique arborescence avec un seul
et unique rpertoire racine . Ainsi, les arborescences se trouvant sur des partitions ou

213
8 3999 TG PA 01

Squence 4

sur des supports de stockage se trouvant dans un lecteur donn, doivent tre intgres
larborescence principale avant que lutilisateur puisse y accder. En somme, LINUX prsente une mga arborescence logique, indpendante de limplantation physique des
rpertoires, qui peut stendre sur plusieurs partitions incluses sur un ou plusieurs disques
physiques ou sur dautres supports physiques voire mme sur des disques rseaux.
Ainsi, il faut toujours raliser une opration de montage darborescence avant de pouvoir
accder aux rpertoires dune partition, dun lecteur rseau ou dun support magntique
quelconque. Cela se fait laide dune commande appele mount . Cette commande
va donc faire concider la racine de larborescence du lecteur, ou de la partition souhaite,
avec un rpertoire de larborescence de LINUX cr pour cela. Il suffira ensuite de se dplacer avec la commande adquate (cd) dans ce rpertoire, appel point de montage, pour
accder aux fichiers et aux rpertoires du lecteur ou de la partition. Attention toutefois ce
dplacement est conditionn par les permissions que possde lutilisateur sur le rpertoire
point de montage . Techniquement, lopration de montage consiste mettre en relation un fichier de priphrique se trouvant dans le rpertoire /dev (lecteur de disquette,
de DVD, ) avec un point de montage de larborescence. De mme, dans la majorit des
distributions, seul lutilisateur principal (appel root ) a les droits de raliser des montages. Lopration inverse se ralise avec la commande umount . Attention lopration de
dmontage ne peut se raliser que si nous ne sommes plus lintrieur de lun des rpertoires de larborescence dmonter.
Faisons un schma pour mieux comprendre cette opration de montage. Soit larborescence
LINUX et une arborescence se trouvant sur un CD-ROM. Nous souhaitons monter cette arborescence sur le rpertoire /mnt . Nous tapons la commande : mount /dev/cdrom /mnt
Racine

Fichier1

home

jacques

pierre

Fichier2

dev

mnt

alain

ProgC
Rep1

Fichier11

Fichier12

UnFichier

Rep2

Rep3

AutreFichier

214
8 3999 TG PA 01

tude du systme dexploitation Linux

Aprs lexcution de la commande dnie prcdemment, nous obtenons larborescence


LINUX suivante :
Racine

Fichier1

home

jacques

pierre

Fichier2

dev

alain

mnt

Rep1

Rep2

Rep3

ProgC
Fichier11

Fichier11

Fichier12

Fichier12

Il sera donc ncessaire de passer par le rpertoire mnt pour avoir accs aux diffrents
rpertoires Rep1 , Rep2 ou Rep3 situs sur le CD-ROM. En fait, un instant
donn, lutilisateur ne verra pas la diffrence entre tre sur un rpertoire du CD-ROM ou
non car il utilisera toujours la commande cd pour se dplacer sans avoir besoin de se
positionner dabord sur le CD-ROM avec la lettre de lecteur D: , en gnral, comme le
demande MS-DOS ou Windows.
Avant den terminer avec les fichiers et les rpertoires, voici quelques remarques :
le nom des fichiers et des rpertoires est limit 255 caractres. Il peut contenir, entre
autre, des points, des lettres, des chiffres, des souligns et le + . Par contre, lespace
est viter car il est considr comme un sparateur et certaines commandes Linux
demandent donc que lon place le nom du fichier ou du rpertoire entre guillemets
lorsquon y fait rfrence ;
LINUX fait la diffrence ente les majuscules et les minuscules ;
la notion dextension nexiste pas sous LINUX. Ainsi un fichier excutable ne doit
pas avoir obligatoirement lextension .exe , .com . ou .bat comme dans
MS-DOS. Sous LINUX, un fichier est excutable lorsquil possde lattribut x qui
signifie eXcutable . Nous reviendrons sur cette notion dattribut plus loin dans
cette squence ;
un nom de fichier ou de rpertoire peut, si cela est utile, contenir plusieurs points
dans son nom qui nauront aucune signification prcise pour le systme (voir juste
haut dessus) sauf si le point est plac au dbut du nom car, dans ce cas, le fichier ou
le rpertoire sera cach.

215
8 3999 TG PA 01

Squence 4

3.

Dmarrage de Linux
Lorsquun utilisateur met sous tension un ordinateur sur lequel est install LINUX, que
se passe-t-il ?
Vous vous rappelez, lors de la mise sous tension dun ordinateur, le BIOS commence par
tester les diffrents priphriques dont il a connaissance. Si tout va bien, il va ensuite
chercher dans le secteur MBR un programme, le bootloader, dont le but est de dterminer les partitions existantes ainsi que la partition active et ce au travers de la table des
partitions. Le bootloader va ensuite lancer le programme de boot se trouvant dans le
secteur de boot de la partition active. son tour, le programme de boot va charger en
mmoire RAM le noyau du systme dexploitation concidr puis lancer son excution.
Remarque

Un programme de bootloader par dfaut est mis en place dans la MBR lors du partitionnement dun disque dur mais il peut tre remplac par un autre programme bootloader plus
performant lors de la phase dinstallation dun OS sur lordinateur. Cest ce que fait LINUX.
En effet, dans le cas de LINUX, on peut trouver, entre autre, LILO (LInux LOader) ou
GRUB (GRand Unified Bootloader). Le second offre plus de possibilit de paramtrage
dun menu de dmarrage par rapport au premier surtout dans le cadre du multiboot.
Une fois que le noyau du systme dexploitation LINUX est charg en mmoire RAM, le
programme de boot dclenche son excution. Le noyau va initialiser son environnement
de travail, mettre en place un mini-systme de fichiers (arborescence minimale) avec
entre autre le montage fondamental du rpertoire racine / , charger les pilotes de
priphriques prvus et enfin lancer lexcution du premier programme, que lon appelle plutt processus sous LINUX, de nom init . Ce dernier se trouve dans le rpertoire
/sbin . Son rle est de terminer le paramtrage de LINUX en consultant un certains
nombre de fichiers de configuration se trouvant dans le rpertoire /etc notamment
/etc/inittab , en excutant un certain nombre de scripts se trouvant galement dans le
rpertoire /etc et en lanant lexcution dun certain nombre de processus systme
(programmes systme ). Grce ces diffrents scripts, init va mettre en place des
terminaux virtuels de connexion afin de permettre des utilisateurs douvrir une session
de travail en local sur la machine LINUX (voir plus loin dans cette squence), et termine
le montage des diffrents systmes de fichiers (les arborescences) mises en place,
lors de linstallation de LINUX, sur diffrentes partitions du disque dur. Les informations
concernant les lments monter et leur point de montage se trouvent dans un fichier
de nom /etc/fstab . Cest dans ce fichier que ladministrateur (lutilisateur root )
peut ventuellement indiquer que lune ou lautre des arborescences peut tre monte
par un utilisateur lorsquil en aura besoin par exemple pour accder au contenu dun CDROM. Dans le cas contraire, seul root peut raliser une opration de montage.

LINUX ne veut voir quune seule arborescence de fichiers mme si les donnes
sont rparties sur diffrentes partitions.
Le processus init a galement pour rle de mettre en place la zone de swap. Il sagit
dun espace disque spcifique qui a pour but de librer de lespace mmoire RAM, de
donnes non utilises un instant donn, et ce, au profit dautres applications.

216
8 3999 TG PA 01

tude du systme dexploitation Linux

Une fois toute linitialisation de LINUX faite, init ouvre un cran en mode Texte
ou en mode graphique permettant un utilisateur de se connecter au systme et
travailler avec.

Mode texte

Mode graphique

Remarques

Toutes ces tches ralises par le processus init sont configures et ralises par des
scripts dinitialisation , qui sont de simples scripts shell (quivalent des .fichiers .bat
de MS-DOS). Sous Linux, ces scripts sont regroups dans le rpertoire /etc . Une fois la
phase de dmarrage de LINUX termine, le processus init reste prsent en mmoire afin
de pouvoir dclencher lexcution dautres programmes systme en fonction des besoins
de lutilisateur ou de LINUX lui-mme.

4.

La notion de processus
Prcdemment, nous avons employ plusieurs fois le mot processus . Quest-ce donc
que cette bte l ?
Un processus est un programme en cours dexcution. On parle galement dimage
mmoire dun programme en cours dexcution. Chaque processus est une entit indpendante disposant de son propre espace mmoire pour stocker ses donnes.
Tout travail ralis par Linux est obligatoirement pris en charge par un processus. Cela
signifie que lun des rles dvolus au noyau consiste grer les processus afin de pouvoir
leur fournir les ressources machines ncessaires leur fonctionnement et leur permettre
dinteragir entre eux mais galement avec le monde extrieur comme par exemple le
processus getty (ou lune de ses variantes) en attente de la frappe au clavier du login
dun utilisateur.

217
8 3999 TG PA 01

Squence 4

Schmatisons lunivers des processus :

Comme nous lavons souvent dit, LINUX est un systme multitches et multi-utilisateurs .
Il est possible un instant donn que plusieurs utilisateurs lancent en parallle la mme
commande comme par exemple la commande ls permettant de lister le contenu dun
rpertoire. Cela implique alors la possibilit qu un instant donn, un mme programme
puisse avoir n images mmoires ( n processus son nom) mais ce nest pas pour
autant quil y a n fois le code du programme en mmoire. En effet, LINUX charge,
en mmoire, le code excutable du programme lors du premier lancement, puis si
dautres utilisateurs lancent le mme programme au mme moment, LINUX utilise le
code excutable dj charg en mmoire. Bien entendu, chaque processus possde son
propre espace de donnes donc il ny a pas de confusion de fonctionnement possible
de la part du systme. Le code excutable sera retir de la mmoire lorsque le dernier
processus, utilisant ce code, se terminera. Ce mcanisme sappelle le mcanisme de rentrance dun programme. Effectivement, ce mot est difficile placer dans une conversation mais le principe de la r-entrance existe bien, dailleurs nous en avons dj parl
avec Windows XP et les DLL.
En conclusion, chaque processus a son propre espace mmoire pour les donnes mais
peut partager son code.
Il existe deux types de processus :
processus systme ;
processus utilisateur .
Les processus systme : ce sont des processus qui ne sont attachs aucun terminal. Ouvrons une parenthse. Dune manire gnrale, un terminal est un ordinateur
dont les ressources peuvent tre faible mais suffisante pour ouvrir une connexion avec
un serveur et communiquer ensuite avec lui. Il existe galement des programmes installs sur un ordinateur client qui permettent dinteragir avec un serveur en simulant la
prsence dun terminal physique (exemple telnet ). Dans ce cas, on parlera de terminaux virtuels. LINUX, et plus particulirement init , met galement la disposition des
218
8 3999 TG PA 01

tude du systme dexploitation Linux

utilisateurs six terminaux virtuels ou plus partir desquels un utilisateur peut travailler
alternativement. Nous reviendrons ultrieurement sur cette dernire information. En
rsum, un terminal est un moyen physique ou virtuel permettant douvrir une session
LINUX, aprs authentification, pour ensuite communiquer et travailler avec LINUX.
Fermons la parenthse. Le rle des processus systme est de rendre des services. Ils
scrutent constamment le systme pour rpondre une demande (exemple : demande de
connexion) ou pour effectuer des tches comme les impressions, des transferts ftp ,
rpondre des demandes de pages Web ou encore le schedulling des processus. Sous
LINUX, ces processus sont appels en gnral des processus dmons (daemons en
anglais) et ils attendent en arrire-plan (en tche de fond) que lon ait besoin de leurs
services. En gnral, ils sont lancs par le boot LINUX ou par ladministrateur systme
(utilisateur de nom root ). Ils nattendent pas de saisie clavier et ne font pas de sortie
cran sauf en cas de problme. Pour arrter un processus Daemon , il faut soit arrter
le systme, soit utiliser une commande permettant darrter le service concern, soit,
dune manire plus expditive, la commande kill . Il ny a pas dautre moyen car ces
processus ntant pas attachs un terminal, le fait quun utilisateur arrte sa connexion
avec le serveur LINUX nentranera pas larrt des processus systme .
Les processus utilisateur : ce sont des processus lancs par un utilisateur (exemple ls ). Ils peuvent fonctionner en avant-plan ou en arrire-plan (en tche de fond).
Le terminal de connexion peut communiquer directement avec eux et leur envoyer des
donnes ou recevoir un rsultat de leur part. Il y a communication entre lutilisateur et
le processus. Attention, lorsque lutilisateur se dconnecte de son terminal en arrtant
sa session LINUX, tous les processus qui lui sont associs sont dtruits (sauf si lutilisateur
a lanc lexcution du processus avec la commande nohup ).
Remarques

Un processus utilisateur peut tre lanc en avant plan auquel cas, il empche lutilisateur de lancer un autre processus tant que le processus en cours nest pas termin. En effet,
dans ce cas, lutilisateur na pas la main. Par exemple, vous pouvez lancer la commande
ls , qui permet de lister le contenu dun rpertoire, mais vous ne pourrez pas taper une
autre commande tant que ls na pas termin son action.
Un processus utilisateur peut tre lanc en arrire-plan (en tche de fond) auquel cas
lutilisateur rcupre immdiatement la main pour pouvoir faire autre chose. Attention, un
processus lanc en arrire-plan ne doit pas faire de saisie clavier ni envoyer des informations
lcran, sinon il risque dintercepter des caractres qui ne lui taient pas destins mais destins au processus en cours dexcution en avant-plan ou bien encore crire des informations
lcran en mme temps que le processus en cours dexcution en avant-plan, ce qui rend la
lecture cran difficile. Un processus tournant en arrire-plan doit sil le faut prendre ses donnes en entre partir dun fichier dentre et envoyer ses rsultats dans un fichier de sortie
que lutilisateur peut consulter ensuite. Pour lancer une commande en arrire-plan, il suffit
dajouter le caractre & la fin du nom de la commande concerne. Cela donne :
NomCommande&
Pour la gestion des processus, le noyau possde une structure de donnes particulire
qui sappelle la Table des processus . Il sagit dune structure de donnes, se prsentant sous la forme dun tableau, qui contient la liste de tous les processus en cours
dexcution. Chaque entre (chaque ligne) dans la table des processus contient les
caractristiques dun processus. Le scheduleur (lordonnanceur).utilise cette table pour
la gestion des processus.
219
8 3999 TG PA 01

Squence 4

Mais quelles sont les caractristiques dun processus ?


Un processus se caractrise par :
1. Un numro didentificateur (PID ou Processus IDentifier). Ce numro est unique pour chaque processus et il lui est attribu, par le systme, lors du lancement
du processus. Cest par ce numro que le systme reconnat les processus les uns
par rapport aux autres
2. Un numro de PPID (Parent PID). Ce numro correspond au PID du processus pre . Sous LINUX, chaque processus peut lancer dautres processus, il est
alors le pre de ces derniers et les processus quil a lanc sont ses fils (voir les
primitives fork et exec plus loin dans cette squence). Prcdemment,
nous avons vu que, ds son lancement, le noyau excute un premier processus,
le processus init , qui est en fait lanctre de tous les processus qui seront
lancs par la suite. Dailleurs, cest le seul processus ne pas avoir de PPID.
Prenons un exemple, une fois que vous tes connect, LINUX lance sur votre terminal un interprteur de commande qui constitue un processus (en gnral, il sagit
de bash se trouvant dans le rpertoire /bin ). Cet interprteur de commande
est lcoute des commandes que vous allez taper. Ainsi, chaque fois que vous
taper une commande, le processus interprteur de commandes va gnrer un
nouveau processus qui aura la charge dexcuter la commande souhaite. Nous
avons donc un processus pre (linterprteur de commande) et un processus
fils , la commande demande en cours dexcution. Lorsque le processus fils
termin son action, il disparait et le processus interprteur de commande
rcupre la main et se met en attente dune nouvelle commande. Voici un schma
sur lequel les numros de PID et PPID sont fictifs.

3. Son tat : chaque processus se trouve au cours de sa vie plac, par le scheduleur,
dans un tat qui peut tre entre autre :
prt (ready) : processus activable (ligible). Il ne dispose pas du processeur de la
machine pour commencer ou continuer son excution. Il attend donc que le scheduleur lui accorde son quantum de temps. En rsum, il attend son tour ;
actif : processus lu disposant du processeur de la machine. Il en dispose tant que
son quantum de temps nest pas puis ou quil ne soit pas en attente dentre/sortie (exemple : attente dune saisie clavier) ;

220
8 3999 TG PA 01

tude du systme dexploitation Linux

endormi (sleep) : processus en attente dun signal, dune rponse. Le scheduleur


endort le processus au bout dun certain temps pour ne plus tre embt par
lui. Lorsque le signal attendu arrive, ce processus est rveill puis plac en tat
Prt ;
attente E/S : attente de pouvoir effectuer une opration dentre/sortie ;
terminated : processus termin, ayant libr toutes ses ressources, mais pas encore
enlev de la table des processus ;
intermediate : le processus est en cours de chargement en mmoire.
4. terminal dattachement : un processus est attach un terminal de lancement.
Il sagit du terminal, physique ou virtuel (voir prcdemment), partir duquel
lutilisateur, qui a lanc le processus, sest connect. Il est possible de dtacher
un processus de son terminal de lancement par lintermdiaire de la primitive
nohup . Si un processus est attach un terminal, cela signifie que lorsque
lutilisateur met fin sa session, donc se dconnecte du terminal, le processus sera
arrt sil tait encore en cours dexcution ce moment l.
5. Priorit : le scheduleur regarde les niveaux de priorit avant dactiver un processus.
Le niveau de priorit peut tre modifi par la commande nice . Mais attention,
pour viter quun processus ne se trouve bloqu trop longtemps, le scheduleur
rvise priodiquement les niveaux de priorit. En effet, un processus, qui ne prend
jamais la main, voit son niveau de priorit modifi afin quil puisse un moment
donn prendre le pas sur les autres processus.
6. Taille : taille mmoire occup.
7. UID : User IDentifier Il sagit de lUID du propritaire du processus, cest--dire
de lutilisateur qui a lanc lexcution du processus. Nous reviendrons sur cette
notion de UID plus loin dans la squence.
8. GID : Group Identifier (voir plus loin). Il sagit du GID du propritaire du processus, cest--dire de lutilisateur qui a lanc lexcution du processus. Nous reviendrons sur cette notion de GID plus loin dans la squence.
9. La table des fichiers ouverts : table contenant les descripteurs de fichiers ouverts
par le processus. Il y a dj trois entres occupes dans cette table ds le dpart.
Lentre n 0, descripteur de lentre standard (stdin), lentre n 1, descripteur
de la sortie standard (stdout) et enfin lentre n 2, descripteur de la sortie erreur
(stderr). Les autres entres de la table tant rserves pour les fichiers qui seront
ouverts par le processus en cours de son excution. LINUX et lutilisateur peuvent
modifier les caractristiques de stdin, stdout ou stderr, ce qui permet alors de rediriger lentre standard, qui par dfaut est le clavier, ou rediriger la sortie standard
et la sortie erreur qui sont par dfaut lcran (voir les caractres de redirection plus
loin dans cette squence).
Dernier point sur les processus. Prcdemment, nous avons introduit la notion de processus pre et de processus fils . Cela est rendu possible par le fait que les processus LINUX utilisent deux mcanismes systmes trs importants. Il sagit des mcanismes
fork et exec . Voyons cela.
Le mcanisme du fork : le mcanisme de fork (fourchette) permet partir dun processus, appel processus pre , de lancer un autre processus, appel processus fils .
Le processus pre transmet son fils entre autre son code, ses donnes, la table

221
8 3999 TG PA 01

Squence 4

des fichiers ouverts, son UID, son GID, et le nom du terminal dattachement. Par contre,
le processus fils possde son propre PID (heureusement sinon le scheduleur aurait quelques problmes pour les diffrencier). Le processus fils connat son pre car il possde
le PID de son pre que lon appelle le PPID. Tout processus a un processus pre sauf
init qui est le processus de dpart de LINUX. Le PID de init est 1.
Les processus pre et fils possdent tous les deux le mme code, donc il ralise
priori les mmes instructions ce qui nest pas trs utile en soi. Pour corriger cela,
LINUX met en uvre un autre mcanisme qui est exec .
Le mcanisme du exec : celui-ci permet de lancer lexcution dun processus B
quelconque partir dun processus A . Le processus A voit alors son code remplac
par le code du processus B . Il y a recouvrement (remplacement) du code du processus A par le code du processus B . Le processus de dpart excute maintenant
le code du processus B

........
.........
exec B

Code
du
Processus B

Processus "A" avec son


code qui ralise un
"exec B"
PID = 27

Le code du processus "A"


est remplac par le code
du processus B
PID = 27

Le processus B dtruit le processus A. Il faut donc faire attention. En rgle gnral, un


processus qui va lancer un exec , ralise dabord un appel fork pour gnrer
un processus pre et un processus fils. Puis cest le fils qui excute lappel exec . Le
processus pre continue sa vie.

pre

fils
Processus A
PID = 27

Processus A
PID = 27

exec B

Processus A
PID = 78

Code
du
Processus B

Processus B
PID = 78

Par ces mcanismes, init peut lancer lexcution de tous les processus ncessaires au
222
8 3999 TG PA 01

tude du systme dexploitation Linux

dmarrage de LINUX, puis au bon fonctionnement du systme. Les processus fils de


init peuvent faire de mme et ainsi de suite. Exemple de fonctionnement : init
est toujours lcoute dune demande de connexion. Lorsque celle-ci arrive, il gnre
un processus fils qui lance lexcution du processus getty en charge de la saisie du
login de lutilisateur. Pendant ce temps le processus pre se remet lcoute dune
demande de connexion.
Autre exemple avec linterprteur de commande dont nous avons parl prcdemment.
Ainsi lorsquun utilisateur tape une commande par exemple ls , le processus bash
lance lexcution du fork afin de gnrer un processus fils . Ce dernier lance un
exec ls afin de remplacer le code du processus fils par le code de ls . Le processus fils poursuit son excution en droulant le code de ls . Pendant ce temps l, le
processus pre peut se remettre lcoute de la commande suivante mais comme le
processus fils est lanc en avant plan, il faut donc attendre la fin de celui-ci pour voir
rapparaitre le curseur dinsertion (curseur clignotant) du processus pre attendant
la saisie de la prochaine commande.

5.

Connexion sur un systme UNIX


LINUX est un systme dexploitation multi-utilisateurs. Cela implique que lordinateur
sur lequel est install LINUX peut tre utilis de deux manires diffrentes. La premire
consiste partager cet ordinateur entre plusieurs utilisateurs qui pourront lutiliser
tour de rle avec pour chacun la possibilit de dfinir son propre environnement de
travail. La deuxime consiste utiliser les ressources de lordinateur LINUX, que nous
appellerons le serveur LINUX, au travers dun autre ordinateur situ sur le mme rseau
que le serveur LINUX. Cela permet plusieurs utilisateurs de se connecter simultanment sur le serveur LINUX afin dutiliser les ressources systmes de ce dernier (disque
dur, mmoire, processeur) via par exemple une connexion telnet . Sur les ordinateurs
clients , il peut tre install indiffremment soit le systme LINUX soit WINDOWS.
Cependant, quelque soit la manire dont on utilise le serveur LINUX, il est ncessaire, au
pralable, douvrir une session LINUX, en local ou partir dun poste du rseau, permettant didentifier lutilisateur afin de lautoriser ou non utiliser les ressources de celui-ci.
Pour cela, lorsque lon travaille directement sur la machine LINUX, lutilisateur doit tout
simplement entrer, linvite de lordinateur, son login et son mot de passe. Par contre, si
lutilisateur ouvre une session LINUX sur le serveur partir dun poste du rseau, il doit,
dans un premier temps, lancer lexcution dun programme mulateur de terminal ,
comme putty tlchargeable sur Internet, ou dun autre utilitaire comme par exemple telnet , afin de mettre en place dans un premier temps une communication entre
le poste client et le poste serveur . Ensuite, une fois que le programme a tabli la
communication avec le serveur LINUX, il ne reste plus lutilisateur qu sidentifier avec
son login et son mot de passe.

223
8 3999 TG PA 01

Squence 4

Remarques

Pour travailler avec LINUX, il nest pas obligatoire de travailler partir de deux postes
informatiques distincts. En effet, au dmarrage de LINUX, le systme, par lintermdiaire
du fichier de configuration /etc/inittab , cre plusieurs terminaux virtuels qui simulent la prsence de plusieurs terminaux physiques connects sur le serveur LINUX. Cela
offre la possibilit douvrir plusieurs sessions utilisateurs simultanment sur une mme
machine. Ces terminaux virtuels se partagent le clavier et lcran, mais bien entendu,
seulement un seul de ces terminaux peut accder lcran et au clavier un instant donn.
En fait, Il sagit du terminal virtuel qui est associ la session active. Pour rendre une
session active et donc changer de terminal virtuel , il suffit, si LINUX est en mode texte,
de taper simultanment sur les touches Alt + lune des touches de fonctions entre F1 et
F6, et, si LINUX est en mode graphique, de taper simultanment sur les touches Ctrl
+ Alt + lune des touches de fonctions entre F1 et F6. Bien souvent pour se placer ou se
replacer sur un terminal graphique (appel galement terminal XWindow ou X11 ou encore
tout simplement terminal X) partir dun terminal en mode texte , il suffit dappuyer
simultanment sur Alt + F7 . Pour ajouter dautres terminaux mme si de base le nombre
semble suffisant, il suffit dajouter des lignes supplmentaires dans /etc/inittab (voir les
commentaires lintrieur du fichier /etc/inittat). Attention, si vous utilisez un logiciel de
virtualisation (VMware, VirtualBox) pour faire fonctionner votre LINUX, pour passer dun
terminal virtuel un autre, il se peut que vous soyez obligs de maintenir les touches enfonces jusqu ce que le logiciel ragisse. Il y a parfois un temps de latence avant raction.

Chaque terminal quil soit physique, mul ou virtuel est associ un fichier spcial
appel fichier de priphrique qui se trouve dfini dans le rpertoire /dev . Cette
association entre un terminal et un fichier de priphrique est ralis par le processus
init ds quil y a une demande de connexion. Pour visualiser le nom du fichier de
priphrique associ une connexion, il suffit de demander LINUX de lister le nom des
personnes connectes. Pour cela, sur la ligne de commande, il faut taper la commande
who . Voici un exemple de ce que nous pouvons obtenir lcran suite lexcution
de la commande cite prcdemment :

La premire colonne donne le nom de login de lutilisateur qui a ouvert une session
et la deuxime colonne donne le nom du chier de priphrique associ la session.
Refermons notre parenthse sur la notion de terminal..
LINUX tant un systme multi-utilisateurs , il est donc ncessaire quun utilisateur
sidentie en ouvrant une session LINUX, en local ou partir dun poste du rseau, avant
de pouvoir utiliser les ressources du serveur LINUX. Pour cela, il faut que lutilisateur
possde un compte utilisateur . Comment lui en fournir un ? Cest ce que nous allons
dtailler maintenant.
En fait, linstallation de LINUX sur un ordinateur, il y a cration dun super utilisateur
qui a toujours pour nom root . Il sagit du compte de ladministrateur du serveur
LINUX. Ainsi si un utilisateur se connecte sous le login root , il aura tous les droits sur
le serveur voire sur le rseau. Il ne faut donc jamais divulguer ni oublier le mot de passe
de lutilisateur root . Vous lavez compris, lune des tches dvolues root est de
crer des comptes pour chacun des utilisateurs successibles dutiliser les ressources de la
machine LINUX. Mais au fait, quelles sont les caractristiques dun utilisateur LINUX ?

224
8 3999 TG PA 01

tude du systme dexploitation Linux

Un utilisateur LINUX se caractrise par :


1. un nom dutilisateur unique pour le systme. Il sagit du nom sous lequel il va
sidentifier lors de la procdure de connexion. En dautres termes, il sagit de son
login ;
2. un mot de passe ;
3. un numro didentificateur appel lUID pour User IDentifier. Il sagit dun
numro unique permettant didentifier lutilisateur. Ce numro est utilis par
LINUX pour connatre les droits qu lutilisateur sur les fichiers et les rpertoires
de larborescence LINUX. Remarque : root a pour UID la valeur 0. Les autres
utilisateurs ont une valeur par dfaut donne partir de 500 sur la distribution
FEDORA. Cette valeur peut changer en fonction des distributions. Par exemple, elle
est de 1000 sur DEBIAN ;
4. un numro de groupe de travail appel le GID pour Group Identifier. Un groupe
de travail contient un ensemble dutilisateurs qui ont les mmes droits sur un
fichier ou un rpertoire. Par dfaut, le nouvel utilisateur appartient un groupe
qui porte son nom de login. Remarque : root a pour GID la valeur 0. Les autres
utilisateurs ont une valeur par dfaut donne partir de 500 sur la distribution
FEDORA ;
5. un espace de travail qui se caractrise par un rpertoire de connexion appel le
HOME Directory . Une fois que lutilisateur a t identifi et quil est autoris
se connecter, LINUX le place automatiquement dans le rpertoire dsign comme
rpertoire de connexion. Cest partir de ce dernier que lutilisateur peut grer
ses fichiers et ses rpertoires. Les rpertoires de connexion des diffrents utilisateurs sont crs lintrieur du rpertoire /home . Par dfaut, le rpertoire de
connexion porte le nom de login. Ainsi si un utilisateur a pour login alain , son
rpertoire de connexion aura pour nom /home/alain . Un utilisateur a tous les
droits sur les fichiers et les rpertoires de son espace de travail ;
6. un interprteur de commande appel le shell . la diffrence de MS-DOS
qui propose uniquement command.com , LINUX propose diffrents shell
plus ou moins sophistiqus donc plus ou moins complexes. Le plus utilis est le
bash et cest celui qui est associ par dfaut lutilisateur lors de sa cration.
Remarque : lexcutable de linterprteur de commande bash se trouve dans le
rpertoire /bin . Pour la suite du support, nous considrerons que nous utilisons
le shell bash .
Toutes les informations concernant un utilisateur autoris ouvrir une session sont stockes dans le fichier texte de nom passwd se trouvant dans le rpertoire /etc . On
parlera donc du fichier /etc/passwd . Une ligne lintrieur de ce fichier correspond
un compte utilisateur cr. Chaque ligne se prsente sous la forme :
Login:Mot de passe:UID:GID:Descriptions:Rpertoire de connexion:Shell
En rsum : chaque ligne est dcrite par sept champs spars les uns des autres par
des : (double-point). Ces champs sont :
login (en clair) ;
mot de passe (crypt) nous reviendrons sur cette information un peu plus loin
dans le support car en fait, ce deuxime champ a t mis en place sous UNIX et
dans les premires versions de LINUX pour contenir le mot de passe crypt, mais
aujourdhui, pour des raisons de scurit, il na plus cette fonction voire na plus de
fonction du tout. Il contient tout simplement la lettre x ;
numro dutilisateur (UID) ;

225
8 3999 TG PA 01

Squence 4

numro de groupe (GID) ;


descriptions complmentaires sur lutilisateur ;
rpertoire de connexion ;
shell de connexion.
Remarque

Les donnes places dans la section Descriptions sont en fait des complments dinformation sur lutilisateur, comme par exemple son nom complet, son numro de tlphone,
la localisation de son bureau. Les diffrentes informations, sil y en a, sont spares les
unes des autres par une virgule. Les informations y sont places au moment de la cration
du compte avec la commande adduser ou aprs coup avec la commande chfn . La
plupart du temps, on ne place pas dinformation dans cette section. Dans ce cas, elle est
vide ou comme dans la distribution DEBIAN, elle contient par dfaut le nom de login.
Exemple de la ligne qui est ajout dans le fichier /etc/passwd aprs avoir cr le
compte alain dans la distribution FEDORA :
alain:x:500:500::/home/alain:/bin/bash
En observant la ligne prcdente, nous pouvons remarquer, comme nous lavons prcis
prcdemment, que le deuxime champ, rserv au mot de passe, contient aujourdhui
tout simplement un x ceci pour des raisons de scurit. Voyons pourquoi. En fait, le
fichier /etc/passwd est accessible en lecture seule par tous les utilisateurs ayant un
compte. Tous les utilisateurs avaient donc accs au mot de passe crypt. Certes, lalgorithme mathmatique de cryptage est irrversible mais rien nempche un utilisateur
mal intentionn, et laide dun logiciel prvu cet effet, de tester des mots de passe
utiliss en gnral par les humains comme les mots du dictionnaire, des mots de passe
frquemment utiliss ou encore des noms propres. Ce logiciel prend un mot, le crypte et
le compare au mot de passe crypt que lon voit dans le deuxime champ de /etc/passwd . Certes, cela peut prendre du temps mais cest possible dautant plus si le mot de
passe est simple. Cest pour viter ce genre de problme quune autre solution a t mise
en place pour stocker les mots de passe crypts. Cette solution consiste tout simplement
ne plus laisser tout le monde la possibilit de voir les mots de passe crypts. Les mots
de passe crypts ont donc t placs dans un autre fichier de nom /etc/shadow , qui
nest accessible en lecture quau seul compte root donc le compte administrateur.
Cest pour cela que le deuxime champ de /etc/passwd a t banalis avec la lettre
x car devenu inutile. Attention, si votre distribution LINUX ne propose pas le fichier
/etc/shadow , les mots de passe crypts seront donc dans /etc/passwd .
Exemple : voici la ligne ajoute au chier /etc/shadow aprs la cration de lutilisateur
alain :

NB : ne cherchez pas traduire le mot de passe crypt. Il sagit du cryptage du mot de


passe alain .
Dans le fichier /etc/shadow , il y a une ligne par utilisateur et cette ligne est dfinie
par neuf champs spars par des : (double-point). Ces champs sont :
login (en clair),
mot de passe (crypt),
226
8 3999 TG PA 01

tude du systme dexploitation Linux

date de dernire modification du mot de passe (en jours depuis le 1er janvier 1970) ;
dlai en nombre de jours avant la prochaine modification possible du mot de passe.
Par dfaut la valeur est = 0 ;
dlai en nombre de jours avant lobligation de changer de nouveau de mot de
passe. Par dfaut, la valeur est 99999 ;
nombre de jours durant lesquels lutilisateur est prvenu de lexpiration de son mot
de passe ;
nombre de jours entre le moment de lexpiration du mot de passe et la dsactivation
du compte ;
le nombre de jours entre le 1er janvier 1970 et la date de dsactivation du compte ;
rserv par les dveloppeurs pour un usage ultrieur.
Remarque

Dans le fichier /etc/shadow , lorsquun compte est dsactiv, le mot de passe crypt est
remplac par un astrisque (caractre * ). Lorsquun compte est verrouill, il y a des
caractres !! placs devant le mot de passe crypt. Voici notre compte prcdemment
cre verrouill.

Voyons maintenant la commande utiliser en mode texte permettant de crer un


nouvel utilisateur. Il sagit de la commande adduser ou useradd en fonction de la
distribution LINUX que vous utilisez. Bien entendu, cette commande est utilisable uniquement si vous tes connect sous le compte root , ce qui est normal.
Par exemple, nous souhaitons crer un compte pour lutilisateur alain . Nous allons
donc taper la commande suivante :
adduser alain
Remarque

La commande adduser cr le rpertoire de connexion avec un nom par dfaut qui est
le nom de login mais rien ne vous empche de changer ce nom en utilisant lune des options
de la commande adduser . Des valeurs par dfaut sont galement gnres pour lUID, le
GID et le programme shell utiliser. Nous reviendrons sur cette commande au paragraphe 7 de cette squence. Nanmoins, pour savoir, ds prsent, quelles sont les options
possibles pour cette commande, il suffit de taper sur la ligne de commande :
man adduser
Dune manire gnrale, la commande man permet de connatre le mode dutilisation de toutes les commandes LINUX. Pour lutiliser, il suffit de taper le nom de la commande, sur laquelle vous souhaitez de laide, la suite de la commande man . Pour
changer de page cran lors de lexcution de la commande man , il suffit dappuyer
sur la touche Espace et pour mettre un terme la commande man , il suffit dappuyer sur la touche q .

227
8 3999 TG PA 01

Squence 4

Une fois le compte utilisateur cr, il nous faut attribuer un mot de passe notre nouvel utilisateur, cest mieux. Pour cela, nous allons employer la commande passwd . La
syntaxe taper sur la ligne de commande devient donc :
passwd alain
Remarque

La commande passwd permet un utilisateur de changer son propre mot de


passe et ce mme sil nest pas connect sous le compte root . Dans ce cas, il nest
pas obliger de prciser son login car par dfaut, la commande passwd change le mot
de passe de lutilisateur qui excute la commande. LINUX vous demande alors de saisir
deux fois le mot de passe souhait.
Voil notre compte est cr. Pour nous en persuader, nous pouvons contrler le contenu
du fichier /etc/passwd en tapant la commande suivante :
cat /etc/passwd
Nous voyons apparatre, la fin du fichier, le nom du nouvel utilisateur. Tout est parfait.
Remarques

La commande cat permet de lister lcran le contenu du fichier pass en paramtre.


Si vous souhaitez ajouter des commentaires sur un compte utilisateur, comme nous en
avons parl prcdemment propos de la section Descriptions se trouvant lintrieur dune ligne du fichier /etc/passwd , il suffit demployer la commande chfn .
En visualisant le contenu du fichier /etc/passwd on peut y observer les commentaires
ajouts un utilisateur.
Dans le choix du mot de passe, il est conseill de mettre des mots de passe de huit caractres minimum, mlanger des caractres minuscules, majuscules et numriques, ne pas
mettre des mots contenus dans un dictionnaire (ni nom propre ni nom commun).
Maintenant, voyons ce qui se passe lorsquun utilisateur tente douvrir une session LINUX.
1. Lutilisateur doit se placer sur la machine LINUX et ouvrir un terminal virtuel en
mode texte ou graphique (voir prcdemment la fin du paragraphe 3 de
cette squence) ou se connecter celle-ci, partir dun ordinateur du rseau, via
un mulateur de terminal comme putty ou via un utilitaire comme telnet .
Lorsque LINUX est prt pour lancer le processus didentification, il affiche une invite
du style : login :
Voici une capture dcran de lcran de lun des six terminaux virtuels en mode
texte de la distribution FEDORA (voir explication au dbut de ce paragraphe et
la fin du paragraphe 3 de cette squence).

228
8 3999 TG PA 01

tude du systme dexploitation Linux

Remarque

Le texte descriptif qui apparat sur lcran se trouve dans le fichier /etc/issue .
Lutilisateur root peut le modifier et le personnaliser.
2. la suite de cette invite de LINUX, lutilisateur doit taper son login. LINUX affiche
alors une autre invite pour la saisie du mot de passe. Cette invite est : passwd :
Voici une capture dcran de lcran qui suit la saisie du login.

3. LINUX va alors contrler la correspondance entre le login et le mot de passe saisis


avec les informations se trouvant dans le fichier /etc/passwd et dans le fichier
/etc/shadow .
4. Si le mot de passe ou le nom de login nest pas correct, LINUX rejette la tentative et vous
propose un nouvel essai (bien souvent, on a le droit trois essais). Si le mot de passe et
le nom de login sont corrects, LINUX va alors poursuivre le processus de connexion. Pour
cela, il commence par afficher le contenu du fichier texte /etc/motd qui contient
ventuellement un message de ladministrateur pour ses administrs (motd Message
Of The Day).
5. LINUX va ensuite lire le contenu dun fichier texte de nom /etc/profile qui
contient la configuration par dfaut de lenvironnement dans lequel, tout utilisateur qui se connecte, doit se trouver.
6. LINUX place lutilisateur dans son rpertoire de connexion (son HOME Directory )
dfini dans le fichier /etc/passwd .
7. LINUX lance lexcution du shell de connexion puis il excute le contenu du fichier
.bash_profile qui se trouve dans le rpertoire de connexion. Ce fichier est le
fichier de configuration personnel de lenvironnement de travail de lutilisateur
qui se connecte. Cest lquivalent de autoexec.bat sous DOS. Bien entendu, ce
fichier nest interprt que si le shell de connexion est bash (voir les caractristiques dun utilisateur). Pour les autres shell , le fichier de configuration ne porte
pas le mme nom.
8. Affichage du prompt.

229
8 3999 TG PA 01

Squence 4

Remarque

Lorsque linterprteur de commande attend la saisie dune commande, il fait apparatre le


curseur dinsertion (curseur clignotant). Le prompt est le texte, situ juste avant le curseur
clignotant, qui fait apparatre des informations comme par exemple le login de la personne
connect et le nom du rpertoire courant.
Ces informations qui apparaissent peuvent varies dune distribution une autre ou
dun utilisateur un autre. En effet, le texte du prompt est dfini dans une variable
denvironnement de nom PS1 . Nous reviendrons sur cette notion plus loin dans
cette squence.
9. Affichage du curseur dinsertion qui annonce que le processus de connexion est termin et que linterprteur de commandes est en attente de la frappe dune commande.
Conseil : il ne faut jamais rester sur une session LINUX ouverte si vous nen avez plus
besoin, surtout sil sagit dune session root , car tout le monde a alors accs vos
donnes partir du poste de travail sur lequel la session est ouverte. Pour fermer une
session, il y a diffrentes possibilits qui dpendent du shell que vous utilisez. Avec le
shell bash , il suffit de taper la commande exit ou encore appuyer simultanment
sur les touches Ctrl + D .
Quelques prcisions sur le fichier /etc/issue . Comme nous lavons indiqu au dbut
de ce paragraphe, ce fichier contient un texte qui apparat au dbut du processus de
connexion dans la fentre du terminal virtuel et qui permet de personnaliser cette dernire. Si on excute le processus de connexion partir dune machine distante par exemple laide de la commande telnet , LINUX va chercher ce moment l le contenu du
fichier /etc/issue.net . Le fichier /etc/issue peut contenir un texte quelconque et des
squences dchappement. Les squences dchappement se composent dun caractre
backslash ( \ ) immdiatement suivi dune des lettres dfinies dans le tableau ci-dessous. Par exemple la squence dchappement \d place dans le fichier /etc/issue
permet de faire apparatre la date courante.
Code dchappement

Description

\d

Insrer la date courante.

\s

Insrer le nom du systme dexploitation.

\l

Insrer le nom de la ligne tty courante.

\m

Insrer le type de larchitecture de la machine, par exemple i486.

\r

Insrer le numro de version du noyau, par exemple 2.4.16.

\v

Insrer la version de lOS, par exemple la date de construction.

Remarque

Par curiosit allez voir le contenu du fichier /etc/issue de votre serveur LINUX laide
de la commande cat ( cat /etc/issue).

230
8 3999 TG PA 01

tude du systme dexploitation Linux

6.

Les diffrents Shells


Contrairement MS-DOS et son command.com , LINUX propose plusieurs programmes
interprteur de commande . Sous LINUX, un interprteur de commande est appel
un shell . Les shells de LINUX offrent diffrentes possibilits de conguration de
lenvironnement de travail, diffrents moyens permettant darchiver les commandes
systmes lances par un utilisateur au cours dune session, diffrentes variables
denvironnement et des variantes au niveau du langage de programmation permettant
dcrire des scripts-shells.
Remarque

Un script-shell est lquivalent dun batch sous MS-DOS.


Voici quelques noms de shell.
La distribution de LINUX que vous utilisez peut en ajouter dautres voire ne pas en

O contenir certains.
Nom du shell

Nom du programme excutable

Bourne Shell cre par Steve Bourne

/bin/sh

Korn shell, cre par David Korn

/bin/ksh

C shell

/bin/csh

Tenex shell

/bin/tcsh

Zorn shell

/bin/zsh

Bash (Bourne Again Shell). Il sagit du shell utilis par


dfaut sous Linux.

/bin/bash

Pour se placer dans lun ou lautre des environnements dun shell, il suffit de lancer lexcution, par un moyen ou un autre, de son excutable.
Prcdemment, nous avons vu que lorsquun utilisateur ouvre une session LINUX, ce dernier le place automatiquement dans lenvironnement du shell qui a t dtermin lors
de la cration du compte utilisateur (voir commande adduser ). Ce shell est appel
le shell de connexion .
Le nom du shell de connexion associ un utilisateur est visible dans le fichier
texte /etc/passwd . Pour changer le shell de connexion associ un utilisateur,
ladministrateur root peut utiliser la commande usermod . Par dfaut, LINUX
associ le shell bash un utilisateur. Cest normal, car cest le plus utilis.

231
8 3999 TG PA 01

Squence 4

Remarques

En mode texte , lorsque le shell actif attend la frappe dune commande de la part de
lutilisateur, il affiche un prompt suivi du curseur dinsertion. La forme du prompt est paramtrable. Attention, les possibilits de paramtrage dpendent du shell que vous utilisez.
Par exemple, avec le shell bash , la forme du prompt se dfinit au niveau de la variable
denvironnement de nom PS1 . Nous reviendrons sur les variables denvironnement
plus loin dans cette squence.
Certains shells, comme bash, offrent la possibilit lutilisateur dutiliser les flches de
direction haut et bas pour faire dfiler les dernires commandes excutes afin
de r-excuter lune delles en appuyant sur la touche Entre . Il est galement possible
dutiliser les flches de direction gauche et droite pour dplacer le curseur lintrieur du texte de la commande visualise quil ne reste plus ventuellement qu modifier
avant de lancer son excution en appuyant sur la touche Entre . Lutilisation de lhistorique des commandes tapes est fonction du shell choisi.
Le shell bash permet galement lutilisation de la touche Tabulation
pour complter de manire automatique le nom dun fichier ou dun rpertoire
lors de la saisie dune commande qui prend en paramtre le nom dun fichier
ou dun rpertoire. Par exemple : si je commence taper la commande
cat /etc/pas puis que je tape sur la touche Tabulation , le shell va alors chercher
dans le rpertoire spcifi dans la commande, donc /etc , si un fichier ou un rpertoire
commence par les lettres pas . Sil trouve une solution unique, il laffiche. Sil y a
plusieurs solutions, il les propose. Il suffit ensuite de complter la ligne de commande par
rapport au choix propos en ajoutant des caractres complmentaires et en appuyant sur la
touche tabulation ventuellement. Et ainsi de suite. Dans notre cas, bash compltera la commande qui deviendra cat /etc/passwd . Il ne restera plus qu valider.
Comme nous en avons dj parl avec MS-DOS, un shell a pour but dinterprter les
caractres taps sur la ligne de commande, par lutilisateur, afin de dterminer la commande excuter. Une commande peut tre interne un shell ou tre externe. Les commandes
externes sont des programmes excutables se trouvant gnralement dans les rperrtoires
/bin et /usr/bin .
Un shell peut lancer lexcution dun fichier excutable condition que ce dernier soit,
comme dans le cas de MS-DOS, dans lun des rpertoires de recherche dfinis par la variable
denvironnement PATH. Un fichier est dit excutable lorsquil possde lattribut x
qui signifie excutable . Nous reviendrons ultrieurement sur ces notions.

7.

Quelques commandes de base

7A.

Avant de commencer
Dans ce paragraphe, nous allons tudier un ensemble de commandes de base qui possdent des options pour une grande majorit dentre elles et qui attendent galement des
paramtres comme nous avons pu le voir avec les commandes MS-DOS.
Les options permettent de faire ragir une mme commande diffremment en
fonction de loption choisie. Par exemple, on peut demander de voir apparatre
les informations affiches par une commande en ligne ou en colonne. En rsum,
les options offrent des variantes dans lexcution dune commande. Les paramtres, quant eux, prcisent ce sur quoi va porter la commande. Ainsi si on tape
passwd alain , la commande passwd va porter sur lutilisateur

232
8 3999 TG PA 01

tude du systme dexploitation Linux

alain .
Sous LINUX, les options dune commande commencent toujours par un tiret et le systme
fait une diffrence entre les majuscules et les minuscules. De mme, chaque commande
possde une option par dfaut, cest--dire que si aucune option nest prcise, LINUX
utilise loption par dfaut. Cette option par dfaut nest pas forcment la mme dans
toutes les distributions LINUX. Ne soyez donc pas surpris si le comportement par dfaut
dune commande nest pas exactement le mme que celui dfini dans ce paragraphe.
Peut tre quune commande dans une distribution fera apparatre, par dfaut, les informations en ligne alors quune autre le fera en colonne. Bien entendu le but dune commande reste le mme quelque soit la distribution heureusement.
Dans ce paragraphe, nous naborderons pas forcment toutes les options des dif-

O frentes commandes. Pour les connatre, si vous le souhaitez, il vous suffit de faire
appel la commande man suivi du nom de la commande dtailler.

Pour tester les commandes LINUX, nous allons travailler en mode texte et pas avec
le mode graphique et ses diffrents menus. Si actuellement vous tes en mode graphique , pour vous placer en mode texte , il suffit de taper simultanment sur les touches Ctrl + Alt + lune des touches de fonctions entre F1 et F6 (voir paragraphe
5 dans cette squence).
Au dmarrage de LINUX, il y a six terminaux virtuels en mode texte et un
terminal virtuel en mode graphqiue qui sont mis en place par init . Pour
travailler avec LINUX, il suffit de se placer sur lun ou lautre des terminaux virtuels en utilisant lune des squences de touches vues au paragraphe 5 dans
cette squence. Bien entendu, il existe dautres moyens comme ouvrir une session
LINUX partir dune autre machine du rseau avec telnet
Remarque

Si vous dmarrez toujours en mode graphique et que vous souhaitez dmarrer de


manire dfinitive en mode texte , il faut aller modifier avec un diteur de texte, lune
des lignes du fichier /etc/inittab et ce aprs avoir ouvert une session en mode root .
La ligne modifier est la ligne :
id:5:initdefault:
il faut la remplacer par
id:3:initdefault:

Cette ligne dtermine le mode douverture de LINUX. Sans entrer dans le dtail, la valeur
3 nous place en mode texte alors que la valeur 5 nous place en mode graphique . Une fois que la modification est faite, relancez le serveur. Prenez note que cette
action fonctionne avec la plupart des distributions comme FEDORA mais doit peut tre
tre accompagne dautres actions dans dautres distributions.
Pour en terminer avec ce paragraphe, il est galement possible, comme nous lavons vu
avec Windows XP et la commande cmd , douvrir une fentre dexcution partir
du mode graphique de LINUX et de lancer lintrieur lexcution de linterprteur de
commande bash . Voyons cela avec la distribution FEDORA mais dans les autres distributions cela se fait sensiblement de la mme manire.
233
8 3999 TG PA 01

Squence 4

a) Cliquer dans le menu [Applications] [Outils systme] [Terminal]


b) LINUX ouvre une fentre terminal en mode texte dans laquelle linterprteur de commandes affiche le prompt et attend vos commandes. Il ne reste plus
qu les tester.
Remarque

Il est possible de faire plusieurs fois la mme action afin douvrir plusieurs fentres bash
simultanment et tester ainsi en parallle plusieurs commandes LINUX.
Il est galement possible de mettre en place sur le bureau LINUX une icne associe
bash quil ne restera plus qu double-cliquer pour lancer linterprteur de commandes dans une fentre dexcution. Pour cela :
a) faire un clic droit sur le bureau et choisir Crer un lanceur ;
b) dans la boite de dialogue qui souvre remplir les diffrents champs que voici :

Dans cette fentre, il faut indiquer que lon souhaite lancer lexcution de /bin/
bash comme dans Windows XP on a indiqu que lon souhaitait lancer cmd . Dans
LINUX, il faut prciser le chemin de la commande ou dcrire le chemin en cliquant sur
le bouton Parcourir . Il est galement primordial dindiquer que lon ouvre lapplication lintrieur dune autre fentre (voir le champ Type de la boite de dialogue).
Dans certaines distributions comme Debian , cest une case cocher :

c) il ne reste plus qu valider. LINUX place une icne sur le bureau ;


d) maintenant, il ne reste plus qu double-cliquer sur licne pour lancer bash
dans une fentre dexcution.
234
8 3999 TG PA 01

tude du systme dexploitation Linux

7B.

Afficher la date et lheure


Voici une premire commande non fondamentale mais qui permet de commencer
sentraner taper des commandes LINUX.
Syntaxe : date
Description : permet dafficher lheure et la date systme. Il est possible dimposer
un format daffichage en employant la syntaxe suivante : date FormatAffichage
Paramtre : cette commande peut prendre en paramtre une description du format
daffichage de la date ou de lheure. Celle-ci doit tre place entre apostrophes et
commence par un signe plus . Voici un exemple :
date +DATE : %d/%m/%y %nHEURE : %H:%M:%S
Dans le format daffichage, on peut associer du texte simple, comme les textes
DATE et HEURE de notre exemple, des codes (des options) daffichage. En
voici quelques unes :
%n
%t
%m
%d
%y
%D
%H
%M
%S
%T
%a

Saut de ligne
Tabulation
Mois
Jour
Anne
Date sous la forme mm/dd/yy
Heure entre 01-23
Minute
Seconde
Heure sous la forme HH:MM:SS
Abrviation du Jour de la semaine

Il y a dautres codes encore. Pour les connatre, je vous rappelle que vous pouvez utiliser
la commande man .
Remarque

Avec loption -s suivie dune date ou dune heure, il est possible de mettre jour lheure
et la date systme condition dtre connect root .

7C.

Effacer lcran
Durant vos tests, vous allez faire apparatre lcran de nombreuses informations qui
peuvent nir par polluer lcran. Si vous souhaitez effacer lcran pour repartir avec un
cran propre , voici la commande :
Syntaxe : clear
Description : efface les caractres actuellement affichs lcran. la fin de lopration, le systme raffiche le prompt et attend les instructions.

235
8 3999 TG PA 01

Squence 4

7D.

Obtenir des informations sur une commande


Syntaxe : man NomCommande
Exemple : man adduser
Description : permet dafficher de laide sur une commande LINUX passe en paramtre de la commande man . Ceci permet de connatre son mode de fonctionnement, les paramtres quelle attend ainsi que les options dont elle dispose.
Remarque

Les diffrentes commandes LINUX possdent une option permettant dafficher galement
de laide. Il sagit de loption -h qui peut galement scrire --help . Certaines commandes nacceptent que la deuxime syntaxe. Essayez date --help . Attention, il y
a bien deux tirets devant le mot help

7E.

Changer un mot de passe ou verrouiller/dverrouiller un compte


La commande que nous allons prsenter dans ce paragraphe, nous lavons dj rencontre prcdemment mais comme elle possde dautres options, nous allons la dtailler
un peu plus.
Syntaxe : passwd NomLogin
Description : cette commande permet de changer le mot de passe dun utilisateur
ayant un compte sur un poste LINUX. Elle doit tre excute par lutilisateur root
(cest--dire le compte administrateur) qui fournit alors, en paramtre, le login du
compte utilisateur concern. Cependant, tout utilisateur peut lutiliser pour changer
son propre mot de passe. Dans ce cas, il na pas besoin de fournir de nom de login en
paramtre. Il suffit de taper passwd sur la ligne de commande.
Danger : comme nous venons de le dcrire prcdemment, en tapant seulement
passwd sur la ligne de commande, LINUX change le mot de passe de lutilisateur courant. Il faut donc faire attention que lutilisateur root ne change pas son
propre mot de passe par mgarde en pensant changer le mot de passe dun autre
utilisateur dont il a oubli de fournir le nom de login en paramtre de passwd .
Autre danger, si vous vous absentez en laissant votre connexion LINUX active, une
personne mal intentionne peut changer votre mot de passe sans avoir connatre
votre nom de login.

236
8 3999 TG PA 01

tude du systme dexploitation Linux

Options possibles : cette commande possde des options complmentaires. En voici


quelques unes :
Option

Description

-l

Permet de verrouiller le compte dont on fournit le login.


Attention, cette option nest utilisable que par root .
Si lutilisateur est connect au moment du verrouillage,
il pourra continuer travailler car le verrouillage sera
effectif lors de la prochaine procdure de connexion.

-u

Permet de dverrouiller le compte dont on fournit le


login. Utilisable par root uniquement.

-d

Permet de supprimer le mot de passe du compte dont


on fournit le login. Utilisable par root uniquement.
Lutilisateur naura plus ensuite qu choisir un autre mot
de passe aprs stre connect son compte.

Les options commencent toujours par un tiret. Vous pouvez utiliser la commande
man pour connatre les autres options ou utiliser loption - - help .
Exemple dutilisation :
passwd alain
permet de changer le mot de passe de lutilisateur alain ;
passwd
permet de changer le mot de passe de lutilisateur courant ;
passwd -l alain
permet de verrouiller le compte de lutilisateur alain ;
passwd -u alain
permet de dverrouiller le compte de lutilisateur alain .

7F.

Gestion des utilisateurs


Voici un ensemble de commandes permettant de crer, supprimer ou modifier un utilisateur. Bien entendu, il faut tre root pour les utiliser :
Nom de la commande

Commentaires

useradd
adduser

Permet de crer un nouvel utilisateur.

userdel

Permet de supprimer un utilisateur. Bien entendu, cela ne peut se faire


quen tant connect sous le compte root et quaucune session au nom
de lutilisateur supprim ne soit ouverte. Ce dernier point peut tre vrifi
laide de la commande who (voir plus loin dans cette squence).

usermod

Permet de modifier les paramtres dun utilisateur.

chfn

Cette commande permet dindiquer dans le champ Descriptions du


fichier /etc/passwd diffrentes informations sur un utilisateur comme
son nom complet, son bureau, ses numros de tlphone Les donnes
apparatront spares par des virgules.

237
8 3999 TG PA 01

Squence 4

Ces diffrentes commandes utilisent des options que vous pouvez lister avec la commande
man ou en utilisant loption --help . Par exemple avec la commande useradd , il
est possible dutiliser des options pour spcifier un autre shell de connexion que celui prvu
par dfaut, un autre rpertoire de connexion que celui cr par dfaut, fournir un UID et un
GID, fournir des commentaires qui seront places dans le champ Description du fichier
/etc/passwd .
Exemple en supposant que nous ayons cr un rpertoire /CNED (voir commande
mkdir ). Nous allons crer un nouvelle utilisateur de nom paul dont le rpertoire
de connexion est /CNED/paul , le shell de connexion est /bin/sh et ayant en commentaire Responsable de formation . Nous tapons donc :
adduser paul -d "/CNED/paul/" -s "/bin/sh" -c "Responsable de formation"
En regardant maintenant le contenu de "/etc/passwd", nous pouvons voir la nouvelle
ligne suivante :

Si on nutilise pas les options de la commande useradd pour crer un nouveau


compte utilisateur, cette dernire utilise des valeurs par dfaut qui sont dfinies dans le
fichier /etc/default/useraddd . Ces informations peuvent galement tre dites en
tapant la commande useradd D . Quelques explications sur les informations qui
apparaissent :
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel

identifiant du groupe primaire ;


lieu de cration des rpertoires de connexion ;
(nb de jours avant destruction du compte ;
nb de jours avant expiration du mot de passe ;
shell de connexion attribu au compte ;
rpertoire contenant les fichiers recopis par dfaut dans chaque nouveau rpertoire de connexion cr.

La commande userdel contient elle aussi une option. En effet, loption -r permet
de prciser quil faut galement supprimer le rpertoire de connexion de lutilisateur
que lon supprime :
userdel -r paul
Quant la commande usermod , elle aussi prend des options qui sont globalement les
mmes que useradd . Je vous laisse le dcouvrir avec la commande man ou avec
loption - - help ou encore ventuellement internet . Attention toutefois de bien
vrifier que lutilisateur nest pas connect avec la commande who avant de faire les
modifications car cela peut poser des problmes.

7G.

Gestion des groupes


Nous avons parl dans le paragraphe 5 quun utilisateur est associ un groupe via
son GID. Un groupe sous LINUX reprsente un ensemble dutilisateurs qui partagent les
mmes permissions sur des chiers et rpertoires pour lesquels ils ne sont pas forcment
les propritaires (voir plus loin dans cette squence).
Chaque utilisateur fait partie dau moins un groupe, dnomm groupe primaire. Ce
dernier est dni au moment de la cration du compte, et par dfaut, lutilisateur est
associ un nouveau groupe, cr cette occasion, portant son nom. Cest ce groupe
dont on voit le GID dans le chier /etc/passwd . Lappartenance au groupe primaire

238
8 3999 TG PA 01

tude du systme dexploitation Linux

ntant pas exclusive, tout utilisateur peut faire partie de plusieurs autres groupes,
appels des groupes secondaires.
Voici un ensemble de commandes permettant de crer, supprimer ou modier un groupe.
Bien entendu, il faut tre root pour les utiliser :
Nom de la commande

Commentaires

groupadd

Permet de crer un nouveau groupe. Syntaxe : groupadd NomGroupe

groupdel

Permet de supprimer un groupe. Attention, on ne peut pas supprimer


le groupe primaire dun utilisateur. Il faut dabord supprimer
lutilisateur ou le changer de groupe primaire.
Syntaxe : groupdel NomGroupe

groupmod

Permet de modifier les caractristiques dun groupe.

groups

Permet de connatre le nom des groupes primaire et secondaires


dun utilisateur dont on fournit le login en paramtre. Par dfaut, la
commande prend en paramtre lutilisateur courant.

Les groupes sont grs dans un fichier de nom /etc/group . Ce fichier comprend une
ligne par groupe et lintrieur de chaque groupe, on trouve quatre champs :
nom du groupe ;
x pour remplacer un mot de passe que lon nattribue jamais pour un groupe ;
numro de groupe, cest--dire son GID (Group Identifier) ;
la liste des noms de login des utilisateurs membres du groupe. Les logins doivent
tre spars les uns des autres par une virgule.
Remarque

Lutilisateur root peut aller directement crer un nouveau groupe dans le fichier
/etc/group car il ny a pas beaucoup dinformations donner contrairement lajout
dun nouvel utilisateur dans le fichier /etc/passwd o il y a le mot de passe crypt
grer. Il est galement possible daller directement dans /etc/group pour effacer un
groupe en supprimant tout simplement la ligne considre.
Pour ajouter des utilisateurs un groupe, lutilisateur root doit aller dans le
chier /etc/group et ajouter le login de lutilisateur et ventuellement des autres
utilisateurs du groupe dans le quatrime champ de la ligne du groupe. Chaque login
doit tre spar du suivant par une virgule. Lors de lajout ou du retrait dun utilisateur
dans un groupe, la modication ne sera effective que lors de la prochaine connexion
de lutilisateur concern. Si lutilisateur est connect au moment de la modication du
groupe considr par lutilisateur root , il faut quil se dconnecte et se reconnecte
pour voir la modication effective.

239
8 3999 TG PA 01

Squence 4

7H.

Avoir des informations sur lutilisateur de la session active


Voici un ensemble de commandes permettant davoir des informations sur lutilisateur
ayant ouvert la session LINUX en cours :
Nom de la commande

7I.

Commentaires

who am i

Permet de connatre le login de lutilisateur ayant ouvert la session LINUX en cours.


LINUX affiche galement le nom du terminal de connexion ainsi que lheure
de connexion. Cette commande contient des options que vous pouvez voir avec
man ou loption --help .

whoami

Affiche le nom de login de lutilisateur ayant ouvert la session LINUX en cours

logname

Permet de connatre le login de lutilisateur ayant ouvert la session LINUX en cours.

id

Permet de connatre lUID et le GID de lutilisateur ayant ouvert la session LINUX


en cours (voir prcdemment les caractristiques dun utilisateur). Cette commande
contient des options que vous pouvez voir avec man ou loption --help .

tty

Permet de connatre le nom du terminal de connexion de la session LINUX en cours.

Informations sur les utilisateurs actuellement connects


Voici un ensemble de commandes permettant davoir des informations sur les utilisateurs
qui ont actuellement ouvert une session LINUX.
Nom de la commande

Commentaires

who

Affiche diffrentes informations sur les utilisateurs ayant actuellement ouvert


une session LINUX comme leur login, le nom du terminal de connexion ou encore
la date et lheure de connexion. Cette commande contient des options que vous
pouvez voir avec man et qui permettent dajouter ou de restreindre le nombre
dinformations affiches.

users

Affiche le nom de login des utilisateurs ayant actuellement ouvert une session
LINUX.

Affiche des informations sur les utilisateurs ayant actuellement ouvert une
session LINUX avec en plus le nom du programme quils sont en train dexcuter.
Cette commande contient des options que vous pouvez voir avec man et qui
permettent dajouter ou de restreindre le nombre dinformations affiches. Il est
possible de prciser le nom dun utilisateur sur lequel nous souhaitons porter notre
attention.

Remarques

Il existe galement la commande finger pour obtenir des informations sur un utilisateur connect ;
pour connatre les options possibles pour ces diffrentes commandes, il est possible dutiliser loption --help . Cette possibilit tant toujours valable, nous ne le prciserons plus
dans la suite de cette squence.

240
8 3999 TG PA 01

tude du systme dexploitation Linux

7J.

Devenir root pour la session en cours sans se dconnecter


Certaines commandes ne peuvent tre excutes que par lutilisateur root . Or il nest
pas toujours conseill de se connecter au systme LINUX en tant que root de manire
permanente car si nous faisons de mauvaises manipulations, le systme peut devenir
instable voire ne plus fonctionner. Il existe une commande LINUX qui permet, tout en
tant connect sur un compte utilisateur ordinaire, de devenir temporairement root ,
le temps dexcuter la commande spcifique comme par exemple adduser ou
passwd . Cette commande est :
Syntaxe : su
Description : cette commande permet de devenir temporairement lutilisateur
root (le Super-Utilisateur) sans pour autant devoir fermer la session en cours. Bien
entendu, il est ncessaire de connatre le mot de passe root pour mener bien
lopration jusquau bout. Pour revenir lutilisateur prcdent, et donc quitter le
rle root , il suffit de taper exit sur la ligne de commande.
Remarques

Avec cette commande, il est possible de devenir temporairement un autre utilisateur que
root en spcifiant, la suite de la commande su , le login de lutilisateur que vous
souhaitez devenir. Bien entendu, il faut en connatre le mot de passe pour que lopration
puisse aller jusquau bout. Cela permet ventuellement datteindre un fichier ou un rpertoire dont on nest pas le propritaire en se faisant passer pour le propritaire.
Lorsque lon tape le nom dune commande la suite du prompt et quil sagit dune
commande externe, LINUX recherche dans larborescence des rpertoires, le rpertoire qui
contient le programme excutable correspondant la commande souhaite sachant que le
nom de la commande externe et le nom du programme excutable sont identiques heureusement. En fait, cette recherche se fait par rapport un ensemble de rpertoires dits rpertoires de recherche dfinis au sein de la variable denvironnement PATH . Le contenu de
cette variable denvironnement peut tre diffrent dun utilisateur un autre donc fortiori
entre un utilisateur lambda et root ce qui permet que certaines commandes ne soient
visibles que de root . Pour voir cette liste des rpertoires de recherche, il faut taper la
commande echo $PATH . Les diffrents rpertoires de recherche sont spars les uns
des autres par des : (deux-points). Le problme est que lorsque lon se connecte en tant
quutilisateur ordinaire puis que lon tape la commande su pour devenir root afin
dexcuter une commande spcifique root , la variable PATH contient les chemins
de recherche de lutilisateur ordinaire et non pas ceux de root . Il est alors ncessaire
de prciser le, chemin absolu ou relatif du rpertoire contenant la commande externe
excuter. Ainsi, on ne tapera pas adduser , comme on le ferait en tant connecter ds
le dpart en root , mais /usr/sbin/adduser afin de prciser LINUX o se trouve le
programme adduser . Nous reviendrons ultrieurement sur la variable PATH et sur la
commande find qui permet de localiser une commande dans larborescence LINUX.
La commande su possde une option -c qui permet de devenir root le temps
dexcution la commande dont on passe le nom en paramtre. Exemple :
su c /usr/sbin/adduser
La syntaxe prcdente permet de devenir root le temps dexcuter /usr/sbin/adduser .
Une fois la commande, passe en paramtre, termine, on reprend lidentit de lutilisateur
courant. Il nest pas ncessaire de retaper exit pour quitter le rle de root comme avec
su tout seul. Attention, avec la commande su c , LINUX demande le mot de passe
root avant dexcuter la commande spcifie.
241
8 3999 TG PA 01

Squence 4

8.

Les commandes de gestion des fichiers et des rpertoires

8A.

Se dplacer dans larborescence des rpertoires


Prcdemment, nous avons vu que LINUX possde une arborescence de rpertoires
commenant par le rpertoire racine . Au cours dune session LINUX, nous pouvons
tre amen devoir nous dplacer dans celle-ci. Pour cela, il faut utiliser la commande
suivante :
Syntaxe : cd CheminRpertoire
Exemple dutilisation :
cd /bin
cd /home/alain
cd ProgC
Remarque

Le chemin du rpertoire atteindre peut tre donn en absolu ou en relatif. De plus, les dplacements sont conditionns par les permissions dont dispose lutilisateur concern sur les diffrents
rpertoires de larborescence (voir la notion de permission plus loin dans cette squence).
Remarque sur quelques particularits :
cd ..
Permet de remonter au rpertoire pre. On remonte donc dun niveau dans larborescence. Attention, il faut laisser un espace entre cd et .. ce qui nest pas
forcment obligatoire sous MS-DOS.
cd
Permet de revenir directement dans le rpertoire de connexion de lutilisateur (son
HOME DIRECTORY).

8B.

Obtenir le nom du rpertoire courant (Work Directory)


Prcdemment, nous avons vu la commande nous permettant de nous dplacer dans
larborescence des rpertoires. un moment donn, nous pouvons avoir un doute sur le
nom du rpertoire dans lequel nous sommes positionns. Il existe une commande LINUX
qui permet dafficher le chemin absolu du rpertoire courant (rpertoire de travail ou
encore WORK DRECTORY).
Syntaxe : pwd
Remarque : pwd Print Working Directory

8C.

Crer un nouveau rpertoire


Pour crer un nouveau rpertoire, il faut employer la commande suivante :
Syntaxe : mkdir NouveauRepertoire
Remarque

Il faut, bien entendu, avoir le droit dajouter un nouveau rpertoire dans le rpertoire courant
(voir les permissions plus loin dans cette squence).
242
8 3999 TG PA 01

tude du systme dexploitation Linux

LINUX fait la diffrence entre les majuscules et les minuscules dans le nom des
fichiers et des rpertoires.

8D.

Supprimer un rpertoire
Pour supprimer un rpertoire, il faut employer la commande suivante :
Syntaxe : rmdir Repertoire
Remarque

Le rpertoire doit tre vide, il ne doit pas tre le rpertoire courant au moment de lopration
et vous devez avoir la permission de le supprimer (voir les permissions plus loin dans cette
squence).

8E.

Lister le contenu dun rpertoire


Un rpertoire peut contenir des fichiers ou des sous-rpertoires. Pour connatre leurs
noms, il est ncessaire de lister le contenu dun rpertoire. Pour cela, il faut employer la
commande suivante :
Syntaxe : ls RpertoiresOuFichiers
Remarque

Cette commande permet de lister les fichiers et/ou les sous-rpertoires se trouvant dans
un rpertoire donn et accepte lutilisation des caractres jokers (voir plus loin dans ce
paragraphe). Par dfaut, la commande ls liste le contenu du rpertoire courant. Encore
une fois, pour lister le contenu dun rpertoire, il faut en avoir la permission (voir les permissions plus loin dans cette squence).
Exemple dutilisation :
ls /bin
ls /home/alain
ls ProgC
ls
La commande ls propose un certain nombre doptions. En voici quelques unes :
Option

Description

-l

(Attention, il sagit dun L minuscule). Par dfaut, LINUX naffiche quune liste de noms
de fichiers ou de rpertoires. Parfois, il peut tre intressant davoir des informations
complmentaires comme les permissions sur les fichiers et les rpertoires ou encore le nom
du propritaire de ces derniers. Voici un exemple de rsultat possible suite lexcution de
commande ls l .

-a

Affiche tout, mme les fichiers et les rpertoires cachs. LINUX considre quun fichier ou un
rpertoire est cach si son nom commence par le caractre point . .

243
8 3999 TG PA 01

Squence 4

-d

Affiche les rpertoires comme des fichiers donc sans lister leur contenu. Avec cette option,
LINUX nouvre pas les rpertoires lists. Cette option est pratique lorsque lon souhaite
obtenir des informations sur un rpertoire donn (par exemple: les permissions) mais pas
lister son contenu.
Faites un essai en tapant successivement les commandes suivantes :
ls /etc
ls -d /etc
ls -l /etc
ls -ld /etc
Dans le premier cas, LINUX liste le contenu du rpertoire /etc . Dans le deuxime cas,
LINUX ne liste pas le contenu du rpertoire mais affiche son nom. Il na donc pas ouvert ce
dernier. Dans le troisime cas, LINUX liste le contenu du rpertoire /etc et pour chacun
des lments lists, affiche diffrentes informations sur lesquelles nous reviendrons dans la
suite de ce paragraphe. Dans le quatrime cas, LINUX affiche diffrentes informations sur
le rpertoire lui-mme sans afficher son contenu. Ce dernier cas est parfois intressant pour
connatre les permissions appliques un rpertoire.

-R
-F
-p

Affichage rcursif du contenu dun rpertoire.


Place un caractre * derrire les excutables et un caractre / derrire les rpertoires.
Place un caractre / aprs chaque rpertoire

Il y a encore dautres options que vous pouvez lister avec la commande man ou
encore ls --help | more . Toutes les options de la commande ls sont combinables.
Ceci est galement vrai pour toutes les autres commandes. Exemple :
ls -ld /dev
ls -ald alain
La commande ls liste par dfaut tous les fichiers et tous les sous-rpertoires contenus
dans un rpertoire donn. Il est possible dutiliser un filtre (un masque) pour ne lister
que certains fichiers ou certains sous-rpertoires. Le filtre est mis en place laide de
caractres jokers. Voici les caractres jokers utilisables avec LINUX :
Caractre joker

Commentaires

Remplace un ensemble de caractres ventuellement aucun.

Remplace un et un seul caractre obligatoire.

[....]

Permet de fournir une liste des caractres que lon souhaite


trouver une position donne.

[!....]
[^....]

Permet de fournir une liste des caractres que lon ne doit pas
trouver une position donne. Il y a deux syntaxes possibles.

Voici des exemples (pour les tester vous pouvez vous placez dans le rpertoire
/etc qui contient un nombre intressant de fichiers et de rpertoires) :
ls M*
Fichiers ou rpertoires dont le nom commence par un M majuscule quelle que
soit la suite des caractres.
ls ?a*
Fichiers ou rpertoires dont le nom possde un a en deuxime position quel
que soit le premier caractre, qui doit tre obligatoirement prsent, et quelle que
soit la fin du nom.

244
8 3999 TG PA 01

tude du systme dexploitation Linux

Remarque

En testant ces diffrents exemples, vous pouvez remarquer que parfois LINUX affiche des
fichiers qui ne rpondent pas votre filtre (votre masque). En fait, si dans les lments
rpondant au masque, il y a un rpertoire, LINUX affiche le nom de ce rpertoire ainsi
que tout le contenu de ce rpertoire sans soccuper dans ce cas de les filtrer. Pour viter ce
problme, il suffit dutiliser loption -d : ls -d ?a*

ls -d [abcd]*
Fichiers ou rpertoires dont le nom commence par un a , un b , un c ou
un d quel que soit le reste.
ls -d [a-d]*
Fichiers dont le nom commence par une lettre entre a et d quel que soit le
reste.
ls -d [a-dr]*
Fichiers dont le nom commence par une lettre entre a et d ou un r quel
que soit le reste.
ls -d [!abcd]*
Fichiers dont le nom ne commence pas par une lettre entre a et d quelque
soit le reste.
Revenons sur les informations qui apparaissent pour chaque fichier ou rpertoire suite
lutilisation de loption -l de la commande ls . Prenons lexemple suivant :

Type de fichier : sous LINUX tout est fichier. Cependant, il existe diffrents types de
fichier. La premire information qui apparat suite lutilisation de loption -l est
justement la nature du fichier. On peut trouver :
Type

Commentaires

Fichier ordinaire.

Rpertoire.

Lien (assimilable un raccourci Windows).

Fichier de priphrique concernant un priphrique qui fonctionne


en mode caractre. Il sagit par exemple des fichiers correspondant
un Terminal qui se trouvent dans le rpertoire /dev . En
effet, on crit caractre par caractre lcran.

Fichier de priphrique concernant un priphrique qui fonctionne


en mode bloc. Il sagit par exemple des fichiers disque dur (hd0)
ou le fichier disquette (fd0) se trouvant dans le rpertoire
/dev . En effet, on crit ou on lit par bloc doctets sur le disque
dur ou la disquette.

245
8 3999 TG PA 01

Squence 4

Permissions (droits) sur le fichier ou le rpertoire : les permissions dfinissent les


droits dutilisation dun fichier ou dun rpertoire. Dans la suite de cette squence, nous
reviendrons un peu plus longuement sur la notion de permissions.
Nombre de liens : il sagit du nombre de possibilits qui existent pour faire rfrence
au fichier ou au rpertoire considr. En dautres termes, il sagit du nombre de liens qui
pointent sur le fichier ou le rpertoire considr. Reprenons notre exemple de capture
dcran :

Pour faire rfrence au fichier de nom MonFich , il ny a quune seule solution, cest
son nom. Ainsi, lorsque lon veut modifier le contenu de ce dernier, on fera appel par
exemple un diteur de texte en prcisant le nom du fichier. Par contre, dans le cas
du rpertoire MonRep , on peut observer quil y a deux liens. En effet, pour faire rfrence ce rpertoire, il y a son nom mais galement la rfrence . (le point). Rappel :
le rpertoire . est un nom gnrique qui fait rfrence au rpertoire courant. Chaque
rpertoire possde une rfrence . sur lui-mme. Maintenant si nous crons lintrieur du rpertoire MonRep un sous-rpertoire laide de la commande mkdir
puis que nous tapons de nouveau la commande ls -l , nous voyons apparatre :

Il y a une rfrence (un lien) supplmentaire. Pourquoi ? En fait, le rpertoire fils que
nous venons de crer dans MonRep possde une rfrence de nom .. qui est un
lien vers le rpertoire pre . Cest pourquoi, le nombre de liens sur MonRep est
maintenant de trois. Il y a le nom du rpertoire lui-mme, la rfrence . et la rfrence .. . Voici un exemple darborescence :

Avec cette arborescence, si lutilisateur tape la commande ls -ld /home , il verrait


apparatre cinq liens pour le rpertoire home . Il y a :
le nom du rpertoire lui-mme ;
la rfrence . ;
une rfrence .. pour chacun des sous-rpertoires alain , pierre
et nicolas . En effet, partir de chacun deux, il faut pouvoir accder au
rpertoire pre qui est home .
Nom du propritaire : il sagit du nom de lutilisateur qui est propritaire du fichier ou
du rpertoire. Par dfaut, il sagit du crateur du fichier ou du rpertoire. La commande
LINUX chown permet de dsigner un autre propritaire. La notion de propritaire
est importante dans le cadre des permissions attribues un fichier ou un rpertoire
(voir le paragraphe sur les permissions plus loin dans cette squence).

246
8 3999 TG PA 01

tude du systme dexploitation Linux

Nom du groupe : il sagit du nom du groupe qui est propritaire du fichier ou du


rpertoire. Par dfaut, il sagit du groupe du crateur du fichier ou du rpertoire. La
commande LINUX chgrp permet de dsigner un autre groupe. La notion de groupe
est importante dans le cadre des permissions attribues un fichier ou un rpertoire
(voir le paragraphe sur les permissions plus loin dans cette squence).
Taille du fichier : cette taille est exprime en octet par dfaut

8F.

Copier un fichier ou un rpertoire


Comme nous lavons dj vu avec les commandes MS-DOS, il existe une commande qui
permet de copier des fichiers (rpertoires) dans un autre rpertoire de larborescence
voire dans le mme rpertoire. Dans ce dernier cas, cela permet de dupliquer un fichier
(un rpertoire). Pour faire lopration de copie, il faut employer la commande suivante :
Syntaxe : cp FichiersSources Destination
Remarque

Cette commande permet de copier un ou plusieurs fichiers (rpertoires) dans un rpertoire


destination . Cette commande accepte lutilisation des caractres jokers et possde des
options que vous pouvez lister avec la commande man .
Dans le cas o lopration de copie concerne un rpertoire, il faut utiliser loption -R .
Exemples dutilisation :
Copier, partir du rpertoire courant, le chier de nom Monch dans le rpertoire
/home/alain .
cp MonFich /home/alain
Copier, dans le rpertoire courant, le fichier de nom Monfich se trouvant actuellement dans le rpertoire /home/alain . Rappel le rpertoire . correspond au rpertoire courant.
cp /home/alain/MonFich .
Attention : sous LINUX, il est obligatoire de prciser le nom du rpertoire destination mme si ce dernier est le rpertoire courant. Cest pourquoi nous prcisons
le rpertoire . dans la commande.
Dupliquer le fichier de nom MonFich en MonFich1 . Nous aurons donc deux
fichiers identiques.
cp MonFich MonFich1
Copier les fichiers dont le nom commence par M dans le rpertoire pre Rappel
le rpertoire .. correspond au rpertoire pre.
cp M* ..

8G.

Dplacer des fichiers ou des rpertoires


Pour dplacer des fichiers il faut employer la commande suivante :
Syntaxe : mv FichiersSources Destination

247
8 3999 TG PA 01

Squence 4

Remarques

Cette commande permet de dplacer un ou plusieurs fichiers dans un rpertoire destination.


Cette commande accepte lutilisation des caractres jokers et possde des options que vous
pouvez lister avec la commande man .
Exemples dutilisation :
Dplacer le chier Resultat.dta depuis le rpertoire courant dans /home/alain :
mv Resultat.dta /home/alain
Cette commande a un effet de bord dans le cas o le rpertoire de dpart et le rpertoire darrive sont les mmes. Cela permet de renommer un chier. Ainsi pour
renommer le chier Resultat.dta en Bilan07.dta :
mv Resultat.dta Bilan07.dta

8H.

Supprimer des fichiers ou des rpertoires


Pour supprimer des chiers ou des rpertoires, il faut employer la commande suivante :
Syntaxe : rm Fichiers
Remarque

Cette commande accepte lutilisation des caractres jokers et possde des options que
vous pouvez lister avec la commande man . Bien entendu pour supprimer un fichier
ou un rpertoire, il faut en avoir la permission (voir les permissions plus loin dans cette
squence).
Exemples dutilisation :
Dtruire le fichier Resultat.dta :
rm Resultat.dta
Dtruire tous les fichiers dextension .dta du rpertoire courant :
rm *.dta
Mme chose que prcdemment mais LINUX demande de confirmer les suppressions :
rm -i *.c
Supprime le contenu du rpertoire /home/alain/Rep1 ainsi que tous les sous-rpertoires
quil peut ventuellement contenir. La commande rmdir que nous avons vu prcdemment permet de supprimer un rpertoire uniquement si ce dernier est vide. Ce nest
pas le cas de la commande rm associe loption -r . Notre exemple est donc ralis par la commande suivante :
rm -r /home/alain/Rep1

248
8 3999 TG PA 01

tude du systme dexploitation Linux

8I.

Afficher le contenu dun fichier


Pour afcher le contenu dun chier lcran, il existe plusieurs commandes que voici :
Nom de la commande

Commentaires

cat NomFichier

Affiche le contenu du fichier dont on passe le nom en paramtre.


Exemple :
cat /etc/passwd

more NomFichier

Affiche le contenu du fichier, dont on passe le nom en paramtre,


page cran par page cran. Exemple :
more /etc/passwd
Remarque :
pour passer la page cran suivante, il faut appuyer sur la
touche Espace ;
Pour quitter prmaturment laffichage du contenu du fichier, il
faut appuyer sur la touche q .

less NomFichier

Cette commande fait la mme chose que la commande prcdente


mais propose des options supplmentaires que vous pouvez lister
avec la commande man ou loption - - help .

Remarque

Ces diffrentes commandes permettent dafficher le contenu dun fichier lcran mais
noffrent pas la possibilit de modifier ce contenu. Pour cela, il faut faire appel un diteur
de texte comme vi ou vim .
Pour pouvoir lister le contenu dun fichier, il faut que lutilisateur ait la permission de le
faire (voir les permissions plus loin dans cette squence).

8J.

Rechercher un fichier dans larborescence


Larborescence des rpertoires LINUX peut contenir un nombre important de rpertoires
et de sous-rpertoires. Aussi, il est parfois difficile dy retrouver un fichier. Il existe une
commande LINUX pour vous venir en aide. Il sagit de la commande find . Voyons la
syntaxe de cette dernire :
Syntaxe : find RpertoireDpart Critre
Remarque

Cette commande permet de rechercher, partir dun rpertoire de larborescence, les fichiers
qui correspondent un critre de recherche. La recherche se fait partir du rpertoire spcifi et dans tous ses sous-rpertoires.
Mettons en place un premier exemple pour comprendre la syntaxe avant daller plus loin
dans les explications. Nous allons rechercher, partir du rpertoire /home , les fichiers
ayant pour nom MonFichier . Voici la commande taper :
find /home -name MonFichier
travers cet exemple, nous pouvons observer que la partie Critre de la commande
nd commence par une option qui est -name . Cette option permet de spcier
ce par rapport quoi nous lanons une recherche. Dans notre cas, nous faisons une

249
8 3999 TG PA 01

Squence 4

recherche par rapport un nom de chier ou de rpertoire. Allez un autre exemple.


Cette fois-ci, nous allons rechercher tous les rpertoires se trouvant dans /home . Voici
la commande taper :
find /home -type d
Dans cet exemple, nous employons une autre option -type qui permet de rechercher
un chier par rapport son type comme ici d pour directory . Des options, il en
existe dautres que voici :
Option
-name

Commentaires
Recherche par rapport au nom dun fichier ou dun rpertoire. Il est possible de donner
un motif du nom cherch utilisant les caractres jokers vus prcdemment condition
de placer ce motif entre guillemets (voir les exemples plus loin).

-type

Recherche par rapport au type de fichier. Il faut prciser d pour un rpertoire, f


pour un fichier ordinaire, c pour un fichier en mode caractre, b pour un fichier
en mode bloc, l pour un lien symbolique (voir plus loin dans cette squence).

-perm

Recherche par rapport aux droits daccs.

-links

Recherche par rapport au nombre de liens.

-user

Recherche par rapport au propritaire du fichier ou du rpertoire.

-uid
-group

Recherche par rapport lUID du propritaire du fichier ou du rpertoire.


Recherche par rapport au groupe auquel appartient le fichier ou le rpertoire.

-gid

Recherche par rapport au GID du groupe auquel appartient le fichier ou le rpertoire.

-size

Recherche par rapport la taille du fichier ou du rpertoire en nombre de blocs de


512 octets. Il est possible dutiliser dautres units que le bloc pour spcifier une taille
comme par exemple, pour une taille en kilo-octets, on ajoute la lettre k . Lunit se
prcise juste aprs le chiffre de la taille (voir la commande man find ).
Recherche par rapport la date de dernier accs en lecture du fichier ou du rpertoire.
Il faut prciser le nombre de jours souhait.
Recherche par rapport la date de dernire modification du fichier ou du rpertoire. Il
faut prciser le nombre de jours souhait.
Recherche par rapport la date de cration du fichier ou du rpertoire. Il faut prciser
le nombre de jours souhait.

-atime
-mtime
-ctime

Cette commande est trs riche en possibilit pour les options de cette commande,
voyez laide avec man nd .
Il est possible de combiner les options prcdentes avec des Et ou des Ou de la
manire suivante :
Option1 Option2 Option3

On souhaite combiner les options. On considre quil y a un Et


entre chaque option.

Option1 -a Option2

Il est possible de spcifier explicitement la prsence dun Et entre


les options en ajoutant loption -a (pour And ).

Option1 -o Option2

Il est possible de mettre un Ou entre deux options. Lune ou


lautre des options doivent tre vraies.

Il est possible de modifier la priorit des oprateurs Et et Ou en ajoutant des


parenthses :
\( Option1 -a Option2 \) -o Option3

250
8 3999 TG PA 01

tude du systme dexploitation Linux

Remarque

Il faut mettre un backslash (barre oblique inverse) devant la parenthse ouvrante et un


autre devant la parenthse fermante. Il faut galement respecter les espacements entre
chacun des diffrents lments. Attention, il ny a pas despace entre le backslash (barre
oblique inverse) et les parenthses
Il existe enfin une dernire syntaxe qui permet dinverser une option. Il faut employer le
caractre ! . Il sagit de loprateur de ngation. Exemples :
find / -user alain
On recherche les fichiers et les rpertoires dont le propritaire est alain et ce
depuis la racine :
find / ! -user alain
On recherche les fichiers et les rpertoires dont le propritaire nest pas alain
et ce depuis la racine.
Allez encore des exemples :
find / home -name "M*"
On recherche les fichiers et les rpertoires dont le nom commence par un M
quel que soit le reste du nom et ce depuis le rpertoire /home :
find / home -user alain -ctime +2
On recherche les fichiers et les rpertoires dont le propritaire est alain et cres
il y a plus de deux jours et ce depuis le rpertoire /home :
find / -perm 644 -type f
On recherche les fichiers ordinaires ayant les permissions 644 et ce depuis le rpertoire racine :
find . -name "Rep*" -type d ! user alain
On recherche les rpertoires dont le nom commence par Rep et dont le propritaire nest pas alain et ce depuis le rpertoire courant .
Remarques

Sur certaines distributions, il est parfois ncessaire de prciser l'option


-print pour que les rponses de la recherche apparaissent l'cran.
Il est possible d'excuter une action sur les lments trouvs par une commande find .
Pour cela, il faut ajouter la fin de la commande soit l'option -exec ou -ok . La
diffrence entre les deux options est qu'en utilisant la deuxime, LINUX demande une
confirmation avant d'excuter l'action demande. la suite de l'option -exec ou
-ok , il faut ajouter une commande LINUX suivi par {}, un espace, un backslash \
et enfin un point-virgule ; . Les caractres {} reprsentent la liste des lments trouvs
par la commande find .

Exemple :
find / -type f -user alain -ok rm {} \;

251
8 3999 TG PA 01

Squence 4

On recherche les fichiers ordinaires dont le propritaire est alain et ce depuis la


racine. LINUX demandera une confirmation avant de supprimer les fichiers trouvs :
find / -type f -user alain -exec ls -l {} \;
On recherche les fichiers ordinaires dont le propritaire est alain et ce depuis
la racine. Pour chacun des fichiers trouvs, on affiche les informations lies loption
-l de la commande ls :
find / -type f -user alain -exec mv {} /tmp \;
On recherche les fichiers ordinaires dont le propritaire est alain et ce depuis la
racine. On dplace chacun des fichiers trouvs dans le rpertoire /tmp .

9.

Les permissions sur les fichiers et les rpertoires


LINUX tant un systme multi-utilisateurs, il faut donc que chaque utilisateur puisse
protger ou non ses fichiers et ses rpertoires. Pour cela, LINUX offre trois types de permissions (r,w,x) quil est possible dappliquer sur les fichiers et les rpertoires. Rappel : les
permissions, sur un fichier ou un rpertoire, sont visibles avec la commande ls -l .
Exemple :

Nous allons effectuer un petit zoom sur la premire ligne et regarder plus prcisment
le groupe de neuf caractres que voici :

Il sagit des permissions UGO (User Group Other). Les permissions sont voir par groupe
de trois. En schmatisant, nous obtenons :

Les permissions dfinissent les droits dutilisation dun fichier ou dun rpertoire en
fonction de la catgorie laquelle appartient lutilisateur qui tente une action sur le
dit fichier ou rpertoire. Ainsi, le premier groupe de permissions concerne les droits du
propritaire du fichier ou du rpertoire. Le deuxime groupe de permissions concerne
les droits des utilisateurs membres du groupe associ au fichier ou au rpertoire. Le
troisime groupe de permissions concerne les droits des autres utilisateurs. Remarque :
la cration dun fichier ou rpertoire, il est dfini que son propritaire sera lutilisateur
qui la cre et le groupe sera le groupe primaire de cet utilisateur.
252
8 3999 TG PA 01

tude du systme dexploitation Linux

Pour chaque groupe de permissions (UGO), on peut dfinir trois types de permissions qui
sont dans lordre dapparition :
Permission

Commentaires

Droit de lecture (Read).

Droit dcriture (Write).

Droit dexcution (eXecute).

Ainsi lorsque la permission considre est accorde, la lettre associe apparat. Par contre
si la permission considre nest pas accorde, il apparat son emplacement un - (un
tiret). Cela nous offre huit combinaisons possibles pour chacun des groupes de permissions (UGO). Voici un descriptif de ces combinaisons quil faut ensuite appliquer chacun
des groupes de permissions :
Combinaison
--r--w--x
rwr-x
-wx
rwx

Commentaires
Aucune permission.
Permission de lecture uniquement accorde (read only).
Permission dcriture uniquement accorde (write only).
Permission dexcution uniquement accorde.
Permissions de lecture et dcriture mais pas dexcution.
Permissions de lecture et dexcution mais pas dcriture.
Permissions dcriture et dexcution mais pas de lecture.
Permissions de lecture, dcriture et dexcution.

Ces permissions peuvent tre utilises sur des fichiers ou sur des rpertoires, mais vous
vous doutez bien que cela nengendre pas forcment les mmes possibilits. Ainsi avoir
le droit x (excution) pour un fichier, cela se comprend mais pour un rpertoire ?
Alors voyons les diffrences :
Permission

Fichier

Rpertoire

Permet dditer le contenu du fichier


laide dune application quelconque.

Permet de lister le contenu du rpertoire


(commande ls ).

Permet de modifier le contenu du fichier


laide dune application quelconque.

Permet de crer ou de supprimer un fichier ou


un sous-rpertoire lintrieur du rpertoire
considr.

Cette permission est obligatoire pour


quun fichier de commande (un script)
ou un programme puisse tre excut.
Attention, il ny a pas de miracle, car
place sur un fichier qui ne contient ni du
code interprtable par LINUX ni du code
machine (excutable), cette permission
sera sans effet.

Permet un rpertoire dtre ouvert et donc


de se placer dessus. Cela autorise donc le fait
de pouvoir rechercher des fichiers lintrieur
du rpertoire considr.
Remarque : si on donne la permission w
un rpertoire, il faut aussi lui donner la
permission x .

Dcryptons les permissions de notre capture dcran :

Les permissions sur le fichier MonFich indiquent que le propritaire du fichier, soit lutilisateur alain , ainsi que les membres du groupe alain possdent les droits de lecture,
dcriture mais pas dexcution. Les autres utilisateurs ont juste le droit de lecture.

253
8 3999 TG PA 01

Squence 4

Les permissions sur le rpertoire MonRep indiquent que le propritaire du rpertoire,


soit lutilisateur alain , ainsi que les membres du groupe alain peuvent lister le contenu du rpertoire, crer ou supprimer des fichiers ou des sous-rpertoires lintrieur. Par
contre les autres utilisateurs ne peuvent ni crer ni supprimer des fichiers ou des sous-rpertoires lintrieur mais ils peuvent descendre dans le rpertoire et en lister le contenu.
Pour terminer, voici quelques exemples de dcryptage de permissions :
Permission
rw-rw-r--

rwxr--r--

Commentaires
Le propritaire du fichier ou du rpertoire et le groupe possdent les droits de
lecture, criture mais pas dexcution. Les autres utilisateurs ont juste le droit en
lecture.
Le propritaire a tous les droits, et le groupe ainsi que les autres utilisateurs nont
accs quen lecture.

rwx------

Le propritaire a tous les droits. Les membres du groupe et les autres utilisateurs
nont aucun droits.

rwxr-x---

Le propritaire a tous les droits, le groupe possde les droits de lecture et


dexcution. Les autres utilisateurs nont aucun droit.

Par dfaut, un fichier ou un rpertoire appartient au crateur du fichier ou du rpertoire


et le groupe associ est le groupe primaire auquel le crateur appartient. Il existe des
commandes LINUX, utilisables uniquement par ladministrateur root , qui permettent
de modifier le nom du propritaire ainsi que le nom du groupe auquel appartient le
fichier ou le rpertoire considr.
Il sagit des commandes :
Nom de la commande

Commentaires

chown NomUtilisateur NomFichRep

Permet de changer le nom du propritaire du fichier ou


du rpertoire.

chgrp NomGroupe NomFichRep

Permet de changer le nom du groupe auquel appartient


le fichier ou le rpertoire.

Le propritaire dun fichier ou dun rpertoire ainsi que ladministrateur root ont
le droit de modifier les permissions sur celui-ci. Pour cela, il faut utiliser la commande
chmod . Dtaillons un peu son fonctionnement :
chmod permissions NomFichRep
Remarque : cette commande accepte les caractres jokers.
Exemples dutilisation :
chmod +r NomFichRep
chmod -r NomFichRep
chmod +w NomFichRep
chmod -w NomFichRep

Permission ajoute (+) ou supprime (-) au niveau de


chaque groupe de permission (UGO)

chmod +x NomFichRep
chmod -x NomFichRep
chmod u+w NomFichRep applique la permission au propritaire (User) ;
chmod g+w NomFichRep applique la permission au groupe (Group) ;
chmod o+w NomFichRep applique la permission aux autres utilisateurs (Other) ;
254
8 3999 TG PA 01

tude du systme dexploitation Linux

chmod a+w NomFichRep applique la permission tous (All) ;


chmod g+rw NomFichRep applique les permissions r et w au groupe ;
chmod go-rwx NomFichRep enlve les permissions r , w et x au groupe et
aux autres utilisateurs.
Il existe une autre mthode pour faire rfrence aux permissions appliquer ou enlever. Pour comprendre prenons un exemple. Nous souhaitons attribuer les permissions
suivantes un fichier de nom Resultats.dta :
rw-rw-r-Pour chaque position, nous allons attribuer la valeur 1 lorsque la permission est active
et 0 lorsque la permission nest pas active. Cela nous donne donc :
rw-rw-r-110110100
Nous nous retrouvons donc face une valeur binaire compose de 9 bits. Comme nous
en avons dj parl prcdemment, nous allons regrouper les bits par paquet de trois et
pour chaque paquet, nous allons dterminer la valeur numrique correspondante. Ainsi,
nous obtenons :

Comment obtenons nous ces valeurs ? Cest simple :


110 en binaire se traduit numriquement avec le calcul suivant :
2
1
0
1*2 + 1*2 + 0*2 soit 4 + 2 + 0 6 ;
100 en binaire se traduit numriquement avec le calcul suivant :
2
1
0
1*2 + 0*2 + 0*2 soit 4 + 0 + 0 4.
Remarque

Pour chacun des groupe de permissions, nous obtenons une valeur entre 0 (tous les bits
0) et 7 (tous les bits 1).
En conclusion, nous souhaitons attribuer les permissions 664 au fichier. Traduisons cela
avec la commande chmod :
chmod 664 Resultats.dta
Poussons un peu plus loin notre investigation et inversons la problmatique. On nous
dit quun fichier a les permissions 755. quelles permissions cela correspond-t-il ? Pour
rpondre la question, nous allons commencer par traduire chaque chiffre en binaire
puis ensuite nous traduirons les 0 et 1 obtenus en permission en appliquant le mme
principe que prcdemment, savoir, que pour chaque position, si la valeur est 1, cest
que la permission est active, si la valeur est 0, cest que la permission nest pas active.

255
8 3999 TG PA 01

Squence 4

Nous obtenons ainsi :

Notre fichier a donc les permissions rwx r-x r-x , ce qui signifie, tous les droits pour le
propritaire, les droits de lecture et dexcution pour les membres du groupe ainsi que
pour les autres utilisateurs.
Remarques

La commande stat applique sur un fichier ou un rpertoire permet davoir un ensemble


dinformation sur celui-ci.
Lorsque lon cre un fichier ou un rpertoire, LINUX leur attribue des permissions par
dfaut qui sont :
par dfaut un rpertoire a les permissions 777 rwx rwx rwx
par dfaut un fichier a les permissions 666 rw- rw- rw-

En fait, ces valeurs par dfaut sont modifies automatiquement par LINUX qui applique
des restrictions lors de la cration dun fichier ou dun rpertoire. Ces restrictions sont
dfinies par une valeur de masque. Ainsi, les permissions contenues dans le masque sont
retires des permissions par dfaut des fichiers et des rpertoires.
Pour connatre la valeur actuelle du masque, il suffit de taper umask sur la ligne de commande. De mme pour la modifier, il suffit de taper umask suivi de la nouvelle valeur du
masque donne sous le formalisme numrique vu prcdemment (exemple : umask 022)
Exemple de fonctionnement
Si umask vaut 002, alors un fichier aura pour permissions par dfaut 664 lors de sa
cration. Voyons cela avec le calcul suivant :
Permissions chier par dfaut :
umask (002) :

r
-

w
-

r
-

w
-

r
-

w
w

Par dfaut, les permissions sont :

soit 664

Si umask vaut 002, alors un rpertoire aura pour permissions par dfaut 775 lors de
sa cration. Voyons cela avec le calcul suivant :
Permissions rpertoire par dfaut :
umask (002) :

r
-

w
-

x
-

r
-

w
-

x
-

r
-

w
w

x
-

Par dfaut, les permissions sont :

soit 775

256
8 3999 TG PA 01

tude du systme dexploitation Linux

Remarque

Pour mettre en place votre propre masque, mettez en place la valeur de masque laide de la
commande umask place dans le fichier de configuration .bash_profile contenu
dans votre HOME DIRECTORY . Bien entendu, ce fichier de configuration est celui du
shell bash . Si vous nutilisez pas ce shell, il faut mettre en place cette instruction dans
le fichier de configuration du shell que vous utilisez.

Le chier de conguration est un chier texte , il est donc modiable par un


simple diteur de texte .
Avant den terminer avec ce paragraphe sur les permissions, nous allons apporter un
complment dinformation. Il existe en fait trois autres permissions qui sont setuid
(SUID), setgid (SGID) et le sticky bit . Voyons cela.
1) La permission SUID place sur un programme (un excutable) permet dexcuter ce programme en utilisant lidentit de son propritaire, et donc, par voie
de consquence, les permissions du propritaire en lieu et place des permissions
de lutilisateur qui lance lexcution du programme. Prenons un exemple pour
en comprendre lutilit. Lorsque vous voulez changer votre mot de passe, vous
faites appel la commande passwd . Cette dernire doit avoir accs au fichier
/etc/shadow pour y modifier votre mot de passe crypt. Cependant seul root
a accs ce fichier et pas vous. Alors comment faire puisque cest vous qui lancez
la commande passwd et pas root ?
Avant de donner la rponse, tapez la commande ls l /usr/bin/passwd . Cela va
nous permettre de visualiser entre autre les permissions appliques sur la commande (le programme) passwd qui se trouve dans le rpertoire /usr/bin . Nous
voyons que ce programme appartient lutilisateur root et au groupe root
et que les permissions sont r - s - - x - - x . Tiens, il y a une permission s ! En
fait, il sagit de la fameuse permission SUID . De plus nous pouvons constater
que tous les utilisateurs ont le droit de lancer lexcution de la commande.
Cette permission s permet toute personne excutant la commande passwd
de prendre les permissions du propritaire, donc root , durant le temps dexcution
du programme uniquement. Lutilisateur root ayant tous les droits, la commande
passwd a donc le droit daccder au fichier /etc/shadow . Le tour est jou.
En rsum, la permission SUID permet un utilisateur, qui excute la commande sur laquelle la permission est positionne, de prendre toutes les permissions du
propritaire durant le temps dexcution de cette commande. Ce dispositif permet
de scuriser le systme car on devient root uniquement pendant lexcution de
la commande et sous le contrle de cette dernire.
Cette permission est note s et se positionne en lieu et place de la permission
x du propritaire sans pour autant effacer cette dernire. Il est noter que le
s est en majuscule lorsque la permission x nest pas positionne pour le propritaire. Le s apparaitra en minuscule ds que ce droit x sera mis en place
pour le propritaire (voir commande chmod). Par rapport aux permissions sur la
commande passwd vues prcdemment, on peut donc dire que le droit x est
positionn pour tout le monde (User, Group, Other) pour cette commande.

257
8 3999 TG PA 01

Squence 4

2) La permission SGID fonctionne de la mme manire que SUID sauf que


la problmatique est applique sur les droits du groupe associs la commande.
Nous ne dtaillerons donc pas plus cette permission.
3) Le sticky bit est utilis pour les rpertoires. Il est utile dans le cas des rpertoires
partags par plusieurs utilisateurs. Voyons la problmatique. Lorsquun rpertoire
est partag, il faut que tous les utilisateurs, dans leur globalit ou pour un groupe
donn, puissent y accder en lecture et en criture. Cela pose un norme problme
qui est que les utilisateurs qui ont accs un rpertoire en criture peuvent effacer
nimporte quel fichier de ce rpertoire mme sil ne leur appartient pas. En plaant
le sticky bit sur le rpertoire partag, cela empche un utilisateur de pouvoir y
supprimer un fichier qui ne lui appartient pas. Cest un garde-fou contre les erreurs
de suppression.
Cette permission est note t et se positionne en lieu et place de la permission
x de la catgorie other sans pour autant leffacer. Il est noter que le t
est en majuscule lorsque la permission x nest pas positionne pour la catgorie
other . Le t apparaitra en minuscule ds que ce droit x sera mis en place
pour la catgorie other (voir commande chmod).
Sous LINUX, il existe un rpertoire partag de nom /tmp . On peut visualiser les
permissions de ce dernier en tapant la commande ls -ld /tmp .
Les permissions setuid et setgid peuvent tre mises en place par le propritaire du
programme alors que le sticky bit ne peut tre mis en place que par root .
Voici les syntaxes employer :
Pour mettre en place la permission setuid, il faut employer la syntaxe
chmod u+s NomCommande .
Pour la permission setgid, il faut employer la syntaxe chmod g+s NomCommande .
Pour le sticky bit , il faut employer la syntaxe chmod +t NomRpertoire .
Prcdemment, nous avons dtermin que les permissions UGO pouvaient se traduire
par trois valeurs octales (trois valeurs comprises entre 0 et 7). Par exemple, on peut placer
les permissions 664 sur un fichier pour indiquer r w - r w - r- - . De la mme manire,
les permissions setuid , setgid et sticky bit sont reprsentes par une nouvelle
valeur octale qui se place avant les trois autres. Cette valeur octale se calcule partir des
valeurs suivantes : setuid vaut 4, setgid vaut 2 et sticky bit vaut 1. Des exemples :
les permissions de la commande passwd sont r - s - - x - - x . Le s est en
minuscule donc le droit x est positionn pour le propritaire. Nous pouvons donc
voir les permissions de la manire suivante :
setuid r - x - - x - - x ce qui correspond la permission 4511 ;
les permissions du rpertoire /tmp sont r w x r w x r w t . Le t est en
minuscule donc le droit x est positionn pour la catgorie other . Nous pouvons donc voir les permissions de la manire suivante :
sticky bit r w x r w x r w x ce qui correspond la permission 1777 ;
on se donne une commande avec les droits 6555. La valeur 6 place au dbut
peut se voir comme rsultant du calcul de 4 + 2 soit setuid + setgid . Les
permissions doivent dont tre vues comme setuid setgid r - x r - x r - x ce
qui donne en ralit les permissions suivantes : r - s r - s r - x .
Si par curiosit, vous voulez connatre les commandes ayant un SUID positionn, placez-vous sur le compte root , afin de pouvoir chercher dans tous les rpertoires sans
tre limit par les permissions, et tapez la commande suivante :
find / -perm u=s
258
8 3999 TG PA 01

tude du systme dexploitation Linux

Remarque

Si pour la commande prcdente, vous ne vous connectez pas en tant que root , votre
cran risque dtre pollu par tous les messages derreurs conscutifs la tentative dentrer
dans un rpertoire sur lequel lutilisateur, qui a lanc la commande find , na pas de
permissions x et r . Nous verrons plus loin dans ce cours (voir paragraphe sur les
redirections) quil est possible de rediriger les messages derreurs vers une poubelle ce qui
vitera de polluer lcran.

10.

Autres commandes de base

10A. Mettre en place un lien


Un lien peut tre assimil la notion de raccourci de Windows. Il sagit en fait dun type
spcial de fichier permettant de faire rfrence un fichier ou un rpertoire physique.
Cela permet de pouvoir atteindre un fichier ou un rpertoire unique partir de plusieurs
endroits de larborescence.
Sous Linux, il existe deux sortes de liens, les liens symbolique (aussi appels symlinks)
et les liens physique (aussi appels, dans certaines distributions : liens matriel ).
La diffrence entre les deux liens rside dans le fait que le lien symbolique est un
chier spcial contenant la rfrence un chier physique ou un rpertoire physique
alors que le lien physique est un chier spcial qui fait rfrence un espace sur le
disque dur o se trouve positionn le chier physique. Attention les liens physique
ne sont pas applicables aux rpertoires mais uniquement aux chiers.
La diffrence entre les deux types de lien que nous venons dnoncer prcdemment
a une consquence notable lorsque lon supprime un chier physique rfrenc par
lun ou lautre type de lien. En effet, dans ce cas, les liens symbolique ne font plus
rfrence rien. Le lien est cass. Dans le cas des liens physique , ce nest pas la mme
chose car lespace du chier physique est conserv tant quun lien physique rfrence
la zone. Du point de vue scurit contre lcrasement involontaire dun chier partag,
il peut tre intressant de mettre en place un lien physique vers le chier partag.
Ainsi mme si un utilisateur crase le chier partag par erreur, on peut toujours revenir
dessus via le lien physique .
Pour mettre en place un lien, il faut employer lune des syntaxes suivantes :
crer un lien physique vers un fichier :
ln FichierAvecChemin NomDuLien
Si lon fait un ls -l sur le fichier physique, on peut voir que LINUX a augment la
valeur du nombre de liens (voir la colonne qui suit les permissions) ;
crer un lien symbolique pour un rpertoire ou un fichier :
ln -s NomRepertoireOuFichierAvecChemin NomDuLien
Si lon fait un ls -l dans le rpertoire contenant ce rpertoire lien , on peut
voir que LINUX lui a attribu le type l (voir la premire colonne affiche).

259
8 3999 TG PA 01

Squence 4

Remarque

Lorsque lon met en place un lien physique sur un fichier, les permissions, le nom du
propritaire et le nom du groupe associs au lien gnr sont les mmes que ceux du fichier
physique. Cela peut poser des problmes daccs au fichier physique pour les utilisateurs
autre que le propritaire. Cest pourquoi, si un fichier physique doit tre partag par plusieurs utilisateurs diffrents au travers de liens physique , il peut tre utile de crer un
groupe dutilisateurs dans lequel on place le login de tous les utilisateurs ayant besoin daccder au fichier physique commun, associer ensuite ce groupe au fichier avec la commande
chgrp et enfin donner les permissions adquates au fichier physique pour le groupe.
De mme pour les liens symbolique , il faut vrifier les permissions sur le fichier ou le
rpertoire rfrenc.

10B.

Formater une disquette LINUX


Nous prenons cet exemple car comme LINUX nest pas gourmand en capacit ordinateur,
il est possible de le faire fonctionner sur des PC un peu anciens encore quips dun lecteur de disquette. Cela permet galement de mettre en avant la commande mkfs .
Pour utiliser une disquette au format LINUX, il faut commencer par la formater afin dy
placer le systme de fichier LINUX. Pour cela, il faut utiliser la commande :
mkfs /dev/fd0
Remarque

Le fichier de priphrique /dev/fd0 reprsente le premier lecteur de disquette.

Pour en savoir plus sur cette commande, vous pouvez utiliser la commande
man .

10C.

Monter/dmonter un systme de fichiers LINUX


la diffrence de MS-DOS et de Windows o lon peut se placer au dbut
de larborescence dune disquette, dun CD-ROM ou encore dun disque dur en
effectuant un simple changement de lecteur courant (voir prcdemment dans
le cours), LINUX lui ne voit quune arborescence unique qui commence au
rpertoire / (racine). Ainsi, il est ncessaire, pour avoir accs aux fichiers et aux rpertoires dune disquette, dun CD-ROM, dun autre disque dur ou dune partition, dajouter
le systme de fichiers de ces derniers au systme de fichiers principal. On dira plutt
monter le systme de fichiers de ces derniers sur le systme de fichiers principal. La
commande permettant ce genre dopration est la commande mount .
Exemple : pour monter le systme de fichiers dune disquette LINUX sur le systme de
fichiers principal de LINUX, il faut taper la commande :
mount /dev/fd0 /mnt

260
8 3999 TG PA 01

tude du systme dexploitation Linux

Le fichier de priphrique /dev/fd0 reprsente le premier lecteur de disquette.


Bien entendu, cette opration ncessite quil y ait une disquette LINUX dans le
lecteur de disquette.
Exemple 2 : pour monter le systme de chiers dun CD-ROM sur le systme de chiers
principal de LINUX, il faut taper la commande :
mount /dev/cdrom /mnt
Le fichier de priphrique /dev/cdrom reprsente le lecteur de CD-ROM. Comme prcdemment, cette opration ncessite quil y ait un CD-ROM dans le lecteur de disquette.
Remarques

Il faut tre root pour raliser les oprations mount et umount (voir ci-aprs)
sauf indication contraire dans le fichier /etc/fstab .
Le rpertoire /mnt est un rpertoire mis votre disposition l'installation de LINUX
pour ce genre d'opration, mais rien ne vous empche d'effectuer le branchement
partir d'un autre rpertoire.
Pour accder au contenu de la disquette, et plus gnralement au contenu du systme de
fichiers mont, il suffit de se placer sur le rpertoire /mnt avec la commande cd .
Pour dmonter un systme de fichiers, il faut employer la commande umount . Ainsi
avec notre exemple, il faut crire :
umount /mnt
Il ne faut pas tre positionn lintrieur du systme de fichiers que lon est en

O train de dmonter.

Complment dinformation : sous LINUX, il existe un fichier de nom /etc/fstab contenant une liste darborescences de fichiers (appele galement systme de fichiers )
monter sur larborescence LINUX au dmarrage de LINUX. Dans ce fichier, root peut
galement dfinir que certains montages de systme de fichiers peuvent tre raliss
par un autre utilisateur que root lorsquil le souhaite comme par exemple pour le
lecteur de CD-ROM. Ce fichier est paramtr par dfaut diffremment suivant les distributions. Nous nen dirons pas plus sur ce sujet car cela nous entranerez trop loin mais
Internet fourmille dexemples.

10D. Arrter ou rebooter un serveur LINUX


Pour arrter ou rebooter correctement un serveur LINUX, il faut employer la commande
shutdown qui se trouve dans le rpertoire /sbin . Cette commande nest utilisable
que par lutilisateur root . Voici quelques exemples dutilisation :
shutdown r now
Le serveur est reboot immdiatement. Loption -r indique donc que lon souhaite rebooter lordinateur.
shutdown h now
Le serveur est arrt immdiatement. Loption -h indique donc que lon souhaite arrter lordinateur.
shutdown h +10
Le serveur sera arrt dans 10 minutes
261
8 3999 TG PA 01

Squence 4

shutdown h 14h00
Le serveur sera arrt 14h00
Remarque

Il existe galement les commandes halt et reboot .

10E.

Accder des donnes dune disquette au format MS-DOS


Il existe des commandes LINUX permettant daccder des donnes se trouvant sur une
disquette au format MS-DOS. En voici une liste non exhaustive :
Nom de la commande
mcd

Permet de changer de rpertoire sur la disquette DOS

mcopy

Permet de copier des fichiers entre LINUX et DOS et inversement

mdel

mmd

Permet de supprimer des fichiers DOS


Permet de lister des fichiers ou le contenu dun rpertoire se trouvant sur
la disquette DOS.
Permet de crer un rpertoire sur la disquette DOS

mrd

Permet de supprimer un rpertoire sur la disquette DOS

mtype

Permet de lister le contenu dun fichier DOS

mdir

11.

Commentaires

Gestion des processus

11A. Lister les processus en cours


LINUX est un systme multi tches et multi-utilisateurs. Il peut donc faire fonctionner
plusieurs processus en simultan et ce pour plusieurs utilisateurs. Il est possible de lister
les processus en cours avec la commande ps . Cette dernire prend un certain nombre
doptions que vous pouvez lister avec la commande man . Voici quelques exemples :
ps liste vos processus ;
ps -u NomUtilisateur liste les processus dun utilisateur ;
ps -ef liste tous les processus de tout le monde.
Il existe une autre commande de nom top . Cette dernire permet dafficher en
continu des informations sur lactivit du systme mais galement des informations sur
les processus en cours comme la quantit de ressource machine utilise (quantit de
mmoire RAM, pourcentage de CPU utilis) ou encore la dure de vie de ce processus
depuis son lancement. Pour mettre un terme au fonctionnement de cette commande, il
suffit dappuyer sur la touche q .

262
8 3999 TG PA 01

tude du systme dexploitation Linux

11B.

Arrter un processus
Pour diverses raisons, il peut tre parfois utile darrter un processus avant son terme
normal. Pour cela, on peut soit utiliser la squence de touche Ctrl + C soit employer
la commande kill . Pour utiliser cette commande, il faut procder en deux temps :
1. il faut commencer par reprer le PID du processus arrter avec la commande
ps ou ps -u NomUtilisateur lire le PID du processus arrter ;
2. arrter le ou les processus souhaits
kill -9 NumeroPid NumeroPid NumeroPid ......
Cette commande envoie un signal aux diffrents processus dont on fournit la
liste des PID afin de les arrter.

11C.

Processus en arrire-plan
Lancer un processus en arrire-plan (en tche de fond) permet lutilisateur de rcuprer
immdiatement la main afin de pouvoir lancer ventuellement un autre processus. Ceci
est intressant dans le cas o le premier processus prend un certain temps dexcution
car pendant quil sexcute, vous ne pouvez plus rien faire dautre car vous navez plus
la main. Pour contourner ce problme, il existe deux solutions :
La premire consiste ouvrir une session LINUX sur diffrentes terminaux virtuelles.
Au dmarrage LINUX met votre disposition diffrents terminaux virtuels accessibles par la squence de touche Alt + l'une des touches de fonctions entre
F1 et F6 ).
partir de l'un des terminaux virtuels, vous lancer le processus qui va prendre du
temps d'excution et sur un autre, vous continuez votre travail classique.
La deuxime consiste lancer le processus qui prend du temps d'excution en arrire plan, ce qui vous permet de rcuprer la main immdiatement afin de poursuivre
votre travail et ce sans avoir besoin de changer de terminal.
Pour lancer un processus en arrire-plan (en tche de fond), il faut utiliser la syntaxe
suivante :
NomProcessus&
Bien entendu, le processus lanc en arrire-plan, ne doit pas attendre de saisie clavier ni
faire de sortie cran , sinon il risque de polluer les entres ou les sorties des processus
en avant-plan.
Quelques commandes lies la notion de processus en arrire-plan :
Nom de la commande

Commentaires

jobs

Permet de lister les processus actuellement en arrire plan. Les


diffrents processus lists sont reprs par un numro dordre. Ce
numro est utile pour les deux commandes qui suivent.

fg Numero

Permet de faire revenir au premier plan le processus dont vous


fournissez le numro. Attention, ce numro est le numro dordre que
lon voit suite la commande jobs .

263
8 3999 TG PA 01

Squence 4

bg

Permet de faire passer en arrire-plan le processus qui se trouve


actuellement en avant-plan. Pour cela, il faut procder en deux temps.
Tout dabord, il faut stopper le processus en avant-plan en tapant
sur les touches Ctrl + Z . Ensuite, il ne reste plus qu taper la
commande bg pour faire passer le processus en arrire-plan. Ce
dernier reprend alors son excution.
Remarque : nous avons stopp le processus nous ne lavons pas arrt.
En effet, dans ce dernier cas, le code est retir de la mmoire.
Si plusieurs processus sont stopps, il est possible de prciser lequel on
souhaite faire passer en arrire-plan en donnant son numro dordre
que lon obtient laide de la commande jobs .

Remarque

Il est possible de tuer un processus en arrire-plan en utilisant la commande


kill %NumeroOrdre . Le numro d'ordre s'obtient avec la commande jobs .
Pour vous entraner faire passer un processus d'avant-plan en arrire-plan et vice-versa,
vous pouvez utiliser la commande sleep qui permet de faire tourner un processus pendant un certain temps.

11D. Chaner les processus


LINUX fournit un ensemble de petites commandes que lon peut associer pour mettre
en place une commande plus consquente. Cest pourquoi, sous LINUX, il est possible de
combiner plusieurs processus excuter en utilisant lune des syntaxes suivantes :
Processus1 | Processus2 | Processus3 .....
Le rsultat de sortie du processus1 est envoy en entre du processus2. Le rsultat
en sortie de processus2 est envoy en entre de Processus3, etc. Attention, deux processus combiner sont spars par le caractre | (appel pipe ) obtenu par la
combinaison de touches AltGr + la touche 6 du pav machine crire . Il sagit
dune barre verticale.
Des exemples :
ls | more
Permet de lister le contenu dun rpertoire page cran par page cran. Cet ensemble combine les possibilits de la commande ls et de la commande more . Cette
dernire a pour fonctionnalit dafficher ce quon lui demande dafficher, page cran
par page cran. Ainsi, nous obtenons un rsultat intressant dans le cas o le rpertoire contient beaucoup de fichiers et de sous-rpertoires.
ls -l | grep ^d
Permet dafficher uniquement le nom des rpertoires. En effet, un rpertoire est
repr par la prsence du caractre d en dbut de ligne suite la commande
ls -l . De son ct, la commande grep permet de filtrer parmi les lignes quon lui
transmet en entre celles qui correspondent au motif fourni en paramtre. Dans notre
cas, le motif indique que lon doit trouver le caractre d en dbut de ligne.
ls -l | grep ^d | wc -l

264
8 3999 TG PA 01

tude du systme dexploitation Linux

Permet de compter le nombre de rpertoires contenus dans le rpertoire courant.


Remarque

La commande wc -l permet de compter les lignes quon lui transmet en entre.


who | wc -l
Permet de compter le nombre de personnes actuellement connectes
who | tee /bin/tty | wc -l
Permet de lister les personnes connectes et en plus afficher le nombre de personnes actuellement connectes. La commande tee a pour rle denvoyer les
donnes reues en entre deux endroits diffrents. Ces donnes sont envoyes sur
/bin/tty , qui reprsente notre cran, et sur lentre standard de la commande
wc l .
cat /etc/passwd | cut -d: -f1 | sort | more
Super ! Quel festival de commandes nest ce pas ? Vous voyez ainsi quil est possible
de combiner un certain nombre de commandes afin dobtenir le rsultat souhait.
Dans notre cas, nous obtenons la liste des comptes crs placs en ordre alphabtique. Allez dtaillons cette ligne.
cat /etc/passwd permet de lister le contenu du fichier contenant la liste des
comptes.
cut -d: -f1 prend les lignes qui lui sont transmises en entre et les dcoupent
en colonne en considrant que le sparateur de colonne est le caractre :
(option -d: ) puis il ne garde en rsultat que la colonne n1 (option -f1 ).
sort trie les donnes qui lui sont transmises en entre.
more effectue un affichage page cran par page cran.
Avec la ligne de commandes prcdente, nous obtenons plus que les comptes utilisateurs
crs par root car souvenez-vous, il a t dit plus haut dans le cours que les comptes
utilisateurs avaient par dfaut un UID partir de 500. Nous allons tenter de mettre en
place une nouvelle version qui restreint le nombre de rponses.
Voici la nouvelle version :
cat /etc/passwd | cut -d: -f1,3 | sort | grep :[5-9][0-9][0-9]$
Que peut dire de son fonctionnement ? Cette ligne de commandes extrait, du
fichier /etc/passwd , les colonnes n1 et 3 contenant respectivement le login et
lUID, puis des lignes obtenues nous ne conservons que celles qui se terminent par
le caractre : , suivi dun chiffre entre 5 et 9, suivi de deux chiffres entre 0 et 9.
La valeur 500 que nous avons indiqu comme tant le point de dpart pour les
UID des utilisateurs est susceptible de varier en fonction des distributions LINUX.
Il faudra donc adapter cette ligne de commandes par rapport la valeur utilise
dans votre distribution.
who | cut d f1 | sort
Permet dafficher uniquement le nom des personnes connectes et ce par ordre
alphabtique. En fait, les noms se trouvent dans la premire colonne du rsultat
fourni par la commande who . Ainsi, la commande cut et ses options per-

265
8 3999 TG PA 01

Squence 4

mettent de ne conserver que la premire colonne du rsultat fourni par who .


Le rsultat obtenu est ensuite envoy sur lentre standard de la commande
sort qui effectue le tri alphabtique.
cat /etc/passwd | cut -d: -f1,6
Permet de lister le login et le rpertoire de connexion des comptes utilisateurs crs.

cat /etc/passwd | cut -d: -f1,6 | sed -e s/:/==>/g


Permet de lister le login et le rpertoire de connexion des comptes utilisateurs crs
en ajoutant une flche entre le login et le nom du rpertoire de connexion. En fait,
dans la version prcdente, nous pouvons constater quil y a un double-points entre
le login et le nom du rpertoire de connexion. Dans cette nouvelle version, nous
utilisons la commande sed pour substituer les double-points par une flche.

cat /etc/passwd | cut -d: -f1,6 | sed -e s/:/==>/g | tail n10


Permet de lister le login et le rpertoire de connexion des comptes utilisateurs
crs en ajoutant une flche entre le login et le nom du rpertoire de connexion.
On ne garde que les 10 derniers comptes crs, ce qui correspond aux 10 dernires
lignes de /etc/passwd .
Processus1 ; Processus2 ; Processus3 .....
Les processus senchanent les uns aprs les autres. Attention, ils ne sexcutent
pas en mme temps, mais les uns aprs les autres, et ils ne communiquent pas
ensemble comme prcdemment. Chacun garde sa propre entre standard et sa
propre sortie standard.
Processus1 && Processus2
Processus1 sexcute en premier. Sil renvoie au noyau un code 0 indiquant que tout
sest bien pass, Processus2 sexcute son tour.
Remarque

Il faut savoir que tout processus qui se termine renvoie au noyau, un code indiquant sil
sest bien termin (code 0 (Zro)) ou sil sest termin par une erreur (code diffrent de 0).
Remarque : lorsque lon excute une commande, on peut tester la valeur renvoye au noyau
en tapant echo $? . En fait, $? contient la valeur du code renvoy et on demande
LINUX dafficher cette valeur.
Processus1 || Processus2
Processus1 sexcute en premier. Sil retourne un code diffrent de zro, on tente
de dclencher Processus2. Par contre si Processus1 se termine bien, Processus2 ne
sexcute pas. Attention, il sagit de deux caractres pipe conscutifs. Rappel: le
caractre pipe sobtient par la combinaison de touches AltGr + la touche 6
du pav machine crire .
Exemple : ls /home/alain/MonRep || mkdir /home/alain/MonRep
On regarde si le repertoire "MonRep" existe dans /home/alain. Sil nexiste pas,
"ls" renvoie un code derreur (valeur diffrente de zro) et dans ce cas, on cre le
rpertoire.
266
8 3999 TG PA 01

tude du systme dexploitation Linux

11E.

Les redirections
Par dfaut, lorsquun processus (programme) attend des donnes de la part de lutilisateur, il se met en attente dune saisie clavier. De mme, lorsquun processus (programme)
affiche des donnes, il les affiche, par dfaut, lcran. Il est possible de modifier cela
avec des caractres de redirection.
Remarque

MS-DOS et Windows, via la fentre de commande, possdent les mmes caractres de redirection de lentre et de la sortie standard que LINUX.
1) Rediriger la sortie standard
Pour rediriger la sortie standard; il faut employer la syntaxe suivante :
NomProgramme > NomFichier
Exemple :
ls -l > FichResultat
Le rsultat de la commande ls -l est envoy dans le fichier FichResultat , quil
suffira de consulter ensuite laide dun diteur de texte ou de la commande cat . On
peut galement prendre ce fichier et lenvoyer en fichier-joint une autre personne au
cas o lon a un problme sur notre compte LINUX.
Nous avons redirig la sortie standard vers un fichier. Donc la sortie standard nest

O plus lcran et cest pourquoi aucun rsultat napparatra lcran. Ne paniquez


pas en disant ma commande ne marche pas. Elle fonctionne trs bien. Pour sen
convaincre, il faut visualiser le contenu du fichier FichResultat .
Autre exemple :
cat > Message
Que fait cette ligne de commande ? En fait, la commande cat , comme nous
lavons vu prcdemment, permet dafficher lcran le contenu du fichier que lon
passe en paramtre. Dans notre exemple, on ne fournit pas de fichier en paramtre.
Cela a pour effet que la commande cat prend en entre tout ce que lutilisateur
tape au clavier pour lenvoyer lcran (sortie standard). Comme on redirige la sortie
standard vers le fichier Message , tout ce que tape lutilisateur sera envoy vers ce
fichier et ce jusqu ce que lutilisateur tape sur Ctrl + D . Par ce mcanisme, nous
avons la possibilit de placer du texte dans un fichier sans passer par un diteur de
texte. Cela peut tre parfois pratique.
2) Rediriger la sortie standard version 2.
Il existe une deuxime manire de rediriger la sortie standard. Voici la syntaxe :
NomProgramme >> NomFichier
Exemple :
ls >> FichResultat

267
8 3999 TG PA 01

Squence 4

Le rsultat de la commande ls est ajout la fin du fichier FichResultat .


Aucun rsultat napparatra lcran. La premire version de la redirection de la
sortie standard supprime le contenu du fichier de destination avant dy ajouter les
nouvelles donnes alors que cette deuxime version ajoute les nouvelles donnes
la suite de lexistant.
3) Rediriger la sortie erreur
Lorsquune commande doit afficher un message derreur pour indiquer lutilisateur quil y eu un problme durant son excution, le message apparat par dfaut
lcran. Il est possible de demander au systme denvoyer les messages derreurs
dans un fichier que lon peut ensuite consulter.
Remarque

Il existe un fichier spcial de nom /dev/null qui reprsente la poubelle et qui est
trs pratique utiliser lorsque lon met en place des script-shell et que lon ne souhaite pas
polluer lcran dun utilisateur avec des messages derreurs qui ne lintresse pas.

Pour rediriger la sortie erreur, il suffit dutiliser la syntaxe suivante :


NomProgramme 2> NomFichier
Voici un exemple dutilisation trs pratique de la redirection de la sortie erreur .
Nous avons vu prcdemment que la commande find effectue une recherche
partir du rpertoire spcifi en paramtre et dans tous les sous-rpertoires de
ce dernier. Cependant si lutilisateur qui lance la commande find na pas les
permissions x et r sur les diffrents rpertoires parcourus (voir le paragraphe consacr aux permissions), la recherche ne pourra sy drouler et gnrera des
messages derreurs qui risquent de polluer lcran et masquer les rsultats trouvs.
La parade dans ce cas consiste rediriger les messages derreurs vers la poubelle ce
qui permet de ne voir safficher que les rsultats trouvs.
Pour mieux comprendre, expliquons la commande suivante :
find / -name "M*" 2> /dev/null
Cette ligne de commande permet de rechercher, partir du rpertoire / , un
fichier dont le nom commence par un M majuscule en vitant de polluer lcran
par des messages derreurs qui se dclenchent lorsque lutilisateur tente douvrir
un rpertoire ou un sous-rpertoire sur lequel il na aucun droit. Il ne reste donc
lcran que les messages intressant pour lui.
4) Rediriger lentre standard
Lorsquon redirige lentre standard, cela signifie que le programme ne va pas
attendre que lutilisateur tape des informations au clavier, il va chercher les
informations attendues dans un fichier. Pour rediriger la sortie standard, il faut
employer la syntaxe suivante :
NomProgramme < NomFichier
Exemple :
wall < MonMessage
268
8 3999 TG PA 01

tude du systme dexploitation Linux

Cette ligne de commande permet denvoyer un message tous les utilisateurs


connects (commande wall ). Le message a t pralablement saisi dans le
fichier de nom MonMessage laide dun diteur de texte comme vi ou
vim .

12.

Remarques sur linterprteur de commande bash

12A. Quelques variables denvironnement


Comme nous en avons dj parl dans le cadre de MS-DOS, les variables denvironnement permettent de stocker en mmoire des informations relatives lenvironnement
de travail des programmes. Elles sont accessibles et modifiables par ces derniers. Il sagit
en fait dune variable qui stocke des paramtres du shell et qui dfinit le contexte
dans lequel les commandes et programmes vont sexcuter. Certains interprteurs de
commande (shell) ajoutent leurs propres variables denvironnement la liste existante
pour leur propre fonctionnement Dans ce paragraphe, nous allons tudier quelques
variables denvironnement au travers de linterprteur de commande bash .
Quelques remarques

Attention, par convention, les variables d'environnement sous LINUX sont en majuscule.
Pour accder au contenu d'une variable d'environnement, il faut la prfixer par un caractre $ . Ainsi en tapant par exemple :
echo $PATH
Linterprteur de commande affiche la valeur de PATH .
Pour lister l'ensemble des variables d'environnement et leur valeur, il suffit de taper la commande env ou la commande set qui permet de lister les variables denvironnement
plus dautres variables dfinies par lutilisateur au sein de linterprteur de commande.
Voici une liste de variables denvironnement. Attention, cette liste nest pas complte
mais on y trouve les variables denvironnement les plus frquentes. Pour les autres, vous
pouvez consulter Internet sur le mot cl bash ou taper la commande man bash
Nom de la variable

Commentaires

BASH

Contient le nom de linterprteur de commande utilis ainsi que le chemin absolu


utilis pour latteindre.

PWD

Contient le chemin absolu du rpertoire courant.

OLDPWD

Contient le chemin absolu du rpertoire de travail prcdemment atteint.

PATH

Contient le chemin des diffrents rpertoires de recherche de la commande


excuter. Lorsque lon tape le nom dune commande externe ou dun programme,
linterprteur de commande parcourt tous les chemins dfinis dans la variable
PATH la recherche de lexcutable correspondant. Sil ne le trouve pas, il affiche
un message derreur indiquant que la commande est inconnue. Les diffrents
chemins des rpertoires de recherche sont spars les uns des autres par des
doubles points (:). Pour le vrifier, tapez echo $PATH . Nous reviendrons sur
cette variable plus loin dans cette squence.

269
8 3999 TG PA 01

Squence 4

HOME

Contient le nom du rpertoire de connexion de lutilisateur (le HOME Directory).

PS1

Dfinit la forme que va prendre le prompt (invite de commande). Nous


reviendrons sur cette variable plus loin dans cette squence.

PS2

Dfinit la forme que va prendre le prompt secondaire. Ce prompt apparat


lorsque la commande en cours nest pas termin au moment ou lon appuie sur la
touche Entre . Linterprteur attend donc la suite de la commande.

HISTSIZE

Dfinit le nombre de commandes dj saisies par lutilisateur que lon peut


mmoriser dans le fichier dhistorique des commandes saisies (.bash_history).

HISTFILE

Contient le nom du fichier dhistorique des commandes saisies.

USER
LOGNAME

Contient le nom de login de lutilisateur connect

Revenons sur deux des variables denvironnement an de les dvelopper un peu plus. Il
sagit de PATH et PS1
PATH Comme nous en avons dj parl avec MS-DOS, cette variable denvironnement
contient la liste des rpertoires de recherche. Attention avec LINUX, le rpertoire .
(dsignant le rpertoire courant) doit tre inclus dans le PATH, sinon, LINUX nexcutera
pas les commandes ou les script-shell se trouvant dans le rpertoire courant puisque
daprs le PATH, il na pas le faire. Attention : dans le cas o le rpertoire . napparat pas dans le PATH, pour lancer lexcution dun programme ou dun script se trouvant
dans le rpertoire courant, il faudra taper :
./NomCommande
Pour modifier le PATH, il faut employer la syntaxe :
PATH=$PATH:.
Cette modification peut tre faite la suite du prompt mais elle reste valable jusqu ce que
lutilisateur ferme sa session. Une autre solution consiste faire cet ajout dans le fichier de
configuration de lutilisateur, savoir .bash_profile . Ainsi chaque fois que lutilisateur
se connectera, son fichier de configuration sera lu et donc la variable PATH mise jour.
Remarque

Pour que la modification faite dans le fichier .bash_profile soit prise en compte pour
la session en cours, il faut demander bash de rinterprter son contenu en tapant la
commande source .bash_profile . Dans le cas contraire, la modification ne sera prise en
compte que lors de la prochaine connexion.
PS1 Contient la description de la forme que doit prendre le prompt (linvite de commande) de lutilisateur. Voici un exemple de modification de cette variable avec le shell
bash :
PS1=$PWD>
export PS1
Cela permet de voir afficher un prompt comme MS-DOS. La variable denvironnement
PWD contient le chemin absolu du rpertoire courant.

Pour obtenir la valeur dune variable, il faut ajouter le caractre $ (dollar) devant
le nom de celle-ci.
270
8 3999 TG PA 01

tude du systme dexploitation Linux

Il existe des codes spcifiques pour mettre en forme la variable PS1. En voici quelques uns :
Code

Description

\h
\t

Affiche le nom de la machine (hostname)


Affiche lheure

\d

Affiche la date

\u

Affiche le nom dutilisateur (user)

\w

Affiche le nom du rpertoire courant. Un ~ (caractre tilde)


saffiche si le rpertoire courant est le rpertoire de connexion de
lutilisateur.

\n

Effectue un saut de ligne.

\$

Affiche le caractre # lorsque lutilisateur est root et le


caractre $ pour les autres utilisateurs.

\!

Affiche le numro de la commande courante.

Ces diffrents codes peuvent tre associ du texte ordinaire pour former un prompt
plus convivial.
Exemples :
PS1=[\u@\h \w]\$
donne le rsultat :
PS1=User=>\u sur \w \$
donne le rsultat :
Remarque

Comme prcdemment, pour rendre permanente cette modification, il faut la mettre dans
le fichier de configuration .bash_profile .
Prcdemment, nous avons utilis la commande export . Cette dernire indique
LINUX de rendre disponible la valeur de la variable denvironnement tous les processus
fils de linterprteur de commande bash comme par exemple les scripts-shell (voir
paragraphe 13 de cette squence).
Dans les rsultats des exemples prcdents, vous pouvez remarquer la prsence du caractre ~ (tilde). Ce caractre reprsente le fait que lutilisateur se trouve actuellement
dans son HOME Directory . Dune manire gnrale, dans les diffrentes commandes
LINUX, on peut employer ce caractre pour faire rfrence au HOME Directory .

12B.

Les fichiers de bash


Linterprteur de commande bash utilise des fichiers de configuration qui sont :
.bash_profile permettant de configurer lenvironnement de travail de lutilisateur ;
.bash_logout permettant dexcuter des actions lorsque lutilisateur quitte sa
session comme par exemple nettoyer le fichier .bash_history ;
.bash_history contenant la liste des commandes excutes par lutilisateur.
Pour lister le contenu du fichier .bash_history , il suffit demployer la commande cat
ou cat -n .bash_history ou plus directement employer la commande history .

271
8 3999 TG PA 01

Squence 4

Dans ce dernier cas, on voit apparatre la numrotation des lignes donc la numrotation
des commandes mmorises. Le fait davoir le numro des commandes permet de r-excuter lune dentre elles en tapant, la suite du prompt, !NumeroLigneCommande
(ex : !45).. Bien entendu, il est toujours possible dutiliser les touche flche vers le haut
et touche flche vers le bas pour faire r-apparatre les dernires commandes saisies.

12C.

Les alias
Un alias est un raccourci que lon met en place sous bash pour remplacer la frappe
de longues commandes frquemment utilises En effet, au lieu de taper la commande
avec sa syntaxe complexe, on associe la commande complexe un alias (un raccourci) et
on lance lexcution de lalias. Pour connatre la liste des alias dj existants, il suffit de
taper la commande alias .
Pour crer un nouvel alias, il faut utiliser la syntaxe :
alias NomAlias=Commande mmoriser
ou
alias NomAlias= "Commande mmoriser"
Exemple :
alias ll=ls ld | more
Cet alias permet de lister les informations sur les fichiers et les rpertoires se trouvant dans le rpertoire courant. Laffichage se fait page cran par page cran.
Le caractre qui spare les deux processus est le caractre | (pipe) obtenu
par AltGr + touche 6 dans le pav machine crire
alias mp= "ps u $USER / cut d -f2,9"
Cet alias permet de lister les processus de lutilisateur courant dont le nom de login
est dans la variable USER . Dans le rsultat affich, on ne veut voir que le PID et le
nom des processus. Cela est permis par la commande cut .
Remarques

On utilise les guillemets lorsque l'on place des variables prcdes du caractre $
l'intrieur de la commande mmoriser.
Pour conserver les alias, il faut les mettre en place dans .bash_profile ou encore
dans /etc/profile . Dans ce dernier cas, ils seront mis la disposition de tous les
utilisateurs qui se connecteront.
Il faut viter qu'un alias porte le mme nom qu'une commande existante.

272
8 3999 TG PA 01

tude du systme dexploitation Linux

13.

Mettre en place des scripts-shell

13A. Avant de commencer avec les scripts-shell sous LINUX


Comme nous en avons dj parl avec MS-DOS et la notion de batch , il est possible
de mettre en place des scripts-shell sous LINUX. Ces derniers sont nettement plus performants que ceux de MS-DOS car le langage de programmation des shells LINUX est
plus performant. Pour mettre en place un script-shell LINUX, il suffit de crer un fichier
texte laide dun diteur de texte (exemple vi ou vim ) puis de taper lintrieur les instructions prvues. Il est possible dutiliser toutes les commandes systmes
de LINUX ainsi quun certain nombre dinstructions lies la programmation shell de
LINUX que nous allons dtailler dans la suite.
Prenons un premier exemple trs simple. Cet exemple consiste crire un script-shell qui
afche bonjour lcran suivi du nom de login de lutilisateur. laide dun diteur
de texte, nous mettons en place le code suivant dans un chier de nom DisBonjour :
echo "Bonjour $LOGNAME"
Une fois le code saisi, nous faisons une sauvegarde et nous quittons lditeur de texte.
cette tape, notre fichier ne peut pas encore tre excut car il na pas la permission
x . Vous pouvez vrifier cela avec ls l DisBonjour . Cette permission nest pas mise
par dfaut sur un fichier. Pour ajouter cette permission x notre fichier script, nous
tapons la commande :
chmod u+x DisBonjour
Remarques

Nous avons appliqu la permission x uniquement au propritaire mais nous aurions


pu l'accorder tout le monde, si cela avait t utile, afin de partager notre script avec tous
les utilisateurs (commande chmod a+x DisBonjour ).
Un fichier script doit avoir galement la permission r pour s'excuter car il s'agit
d'un fichier texte dont le contenu doit tre lu par le shell afin d'tre interprt et traduit
en actions.
Maintenant que notre script-shell est prt et qu'il a les permissions ncessaires, il ne nous
reste plus qu' lancer l'excution de celui-ci en tapant sur la ligne de commande :
./DisBonjour
ou si PATH contient le rpertoire . , on peut taper directement :
DisBonjour
Voil, ce n'est pas compliqu de mettre en place puis de dclencher un script-shell n'estce pas ?
Le langage de programmation shell est assez complet en possibilit et riche en instructions. Dans la suite de ce cours, nous allons faire un tat des lieux de ce que la programmation shell met notre disposition sans entrer dans les exemples complexes mais justes
pdagogiques de manire comprendre le mcanisme gnral des scripts-shell.

273
8 3999 TG PA 01

Squence 4

13B.

Les paramtres de position


Lorsque lon tape une commande LINUX, nous avons vu quil est possible de la complter
avec des paramtres et des options. Comme nous en avons dj parl avec MS-DOS, ces
informations peuvent tre rcupres lintrieur dun script. En fait, chacune de ces
informations, que lon appelle galement arguments , est place dans un paramtre
de position numrot de 0 9. Comme pour les variables denvironnement, la valeur des
paramtres de position peut tre restitue laide du prfixe dollar ( $ ). Le premier paramtre de position ($0) est toujours associ au nom du programme script-shell
excut alors que les suivants ($1 $9) sont associs aux autres arguments placs sur la
ligne de commande. Il existe de plus :
Nom paramtre

Commentaires

$#

Contient une valeur reprsentant le nombre darguments passs sur la


ligne de commande. Attention, le nom du programme script-shell nest
pas comptabilis dans $# .

S*

Contient la liste de lensemble des arguments passs sur la ligne de


commande.

$?

Contient la valeur de sortie de la dernire commande excute. Elle vaut


0 si la commande sest droule sans problme.

Exemple : nous allons modifier le script DisBonjour de manire ce que le script affiche
le texte Bonjour suivi du nom de la personne dont on passe le nom en paramtre.
Nous allons donc revenir sur le fichier DisBonjour laide dun diteur de texte (ex :
vi ou vim ) et modifier la ligne de code de la manire suivante :
echo "Bonjour $1"
Remarque

Il nest pas ncessaire de refaire ltape permettant de mettre en place la permission x


car nous navons fait que modifier le contenu du script, ce qui na pas dinfluence sur les
permissions de celui-ci.

Voici un autre exemple qui permet de lister les paramtres (les arguments) passs sur
la ligne de commande par lutilisateur. Placez vous sur un nouveau fichier, tapez le programme qui suit et placez la permission x sur ce fichier. Ce script utilise des instructions de contrle que nous verrons juste aprs. Cependant, veillez ds prsent bien
marquer les espaces comme dans le code qui suit :
1
2
3
4
5
6
7
8
9
10
11
12

# Programme pour tester les arguments


echo "Le nom du programme est : $0"
if [ $# -eq 0 ]
then
echo "Aucun argument sur la ligne de commande"
else
echo "Voici la liste des arguments"
for Arg in $*
do
echo $Arg
done
fi

274
8 3999 TG PA 01

tude du systme dexploitation Linux

Remarque

Les numros gauche du script-shell ne font pas parti du code, ils sont l uniquement pour
nous reprer plus facilement dans les explications qui vont suivre. Il ne faut donc pas les
taper dans le fichier script.

Explications
Ligne 1 : il s'agit d'une ligne de commentaires. Le shell ignore le texte qui est crit
aprs.
Ligne 2 : nous faisons appel au paramtre de position $0 afin d'afficher le nom
du programme script-shell excut.
Ligne 3 : nous mettons en place une instruction de contrle if . Le script, en
fonction du rsultat du test de la condition, place entre les crochets, excutera soit
la partie then du programme (ligne 5) soit la partie else (lignes 7-11). Pour
l'explication concernant la condition, reportez-vous la suite du cours. Nanmoins,
en deux mots, la condition signifie le nombre darguments ($#) est gal
(-eq equal ) 0 .
Ligne 5 : cette ligne ne sera interprte par le shell, que si la condition de la ligne 3
est vraie. Dans ce cas, on affiche la phrase prvue. Remarque : la commande echo
possde une option -e qui permet d'utiliser des paramtres d'affichage (voir
man echo ).
Lignes 7-11 : ces lignes ne seront interprtes par le shell, que si la condition de
la ligne 3 est fausse. Dans ce cas, on affiche la phrase prvue suivie de la liste des
arguments passs sur la ligne de commande.
Lignes 8-11 : ces lignes mettent en place une boucle for qui permet d'excuter,
plusieurs fois de suite, les instructions qu'on lui donne (ici la ligne 10). Dans notre
cas, la variable de nom Arg va prendre, chaque tour de boucle, une valeur dans
la liste des arguments ($*). Pour afficher le contenu de cette variable un moment
donn, on prfixe son nom par le caractre $ (dollar).
Remarque

Une variable est un espace mmoire rserv par le noyau LINUX afin de stocker une information. Une variable possde un nom qui permet de l'identifier parmi toutes les variables.

13C.

Les instructions de la programmation shell


LINUX permet dcrire des scripts-shell plus complexes que MS-DOS et ce laide dun
langage de programmation shell plus pouss. Ce dernier propose des instructions de
contrle et des tests de condition. Voyons cela de plus prs.

13C1. Mise en place dune condition


La grande majorit des instructions de contrle, que nous allons numrer juste aprs,
utilisent la notion de condition . Une condition est un test logique dont le rsultat
sera VRAI ou FAUX. Pour mettre en place un test de condition, il faut utiliser la commande LINUX test . Voici comment utiliser cette dernire.
La commande test comme son nom lindique permet de tester des conditions qui
peuvent concerner soit des fichiers, soit des chanes de caractres, soit des expressions
275
8 3999 TG PA 01

Squence 4

numriques. On peut utiliser cette commande avec deux syntaxes diffrentes :


test Condition
[ Condition ]
Dans la deuxime syntaxe, on remplace le mot test par des crochets ce qui visuellement est peut-tre plus simple lire. Attention, chaque lment de la condition doit tre
bien spar du suivant par des espaces. Il en va de mme pour les crochets.
Dans le cas dun fichier, la condition prend la forme suivante :
Option NomFichier
Nous pouvons utiliser les options suivantes :
Options
-e
-f
-d

Commentaires
Permet de tester si le fichier existe.
Permet de tester si le fichier est un fichier ordinaire.
Permet de tester si le fichier est un rpertoire.

-r
-w
-x

Permet de tester si le fichier la permission Read .


Permet de tester si le fichier la permission Write .
Permet de tester si le fichier la permission Executable .

-s

Permet de tester si le fichier nest pas vide.

Exemple : test -e $1
[ -e $1 ]
Rappel : ces deux syntaxes sont identiques. La condition retourne vrai si
le fichier, dont le nom se trouve dans le paramtre de position $1, existe.
Dans le cas dune chane de caractres, la condition prend la forme suivante :
Option ChaineCaractres
Nous pouvons utiliser les options suivantes :
Options

Commentaires

-z

Permet de tester si la chane de caractres est vide.

-n

Permet de tester si la chane de caractres nest pas vide.

Dans le cas dune chane de caractres, la condition peut galement avoir la forme
suivante :
ChaineCaractres Option ChaineCaractres
avec les options suivantes :
Options

Commentaires

Permet de tester si les deux chanes de caractres sont gales.

!=

Permet de tester si les deux chanes de caractres sont diffrentes.

Les deux chanes de caractres doivent tre places entre guillemets (voir exemples

O dans la suite du support).


276

8 3999 TG PA 01

tude du systme dexploitation Linux

Dans le cas des expressions numriques, la condition peut avoir la forme suivante :
Valeur Option Valeur
Nous pouvons utiliser les options suivantes :
Options

Commentaires

-eq
=

Permet de tester si les deux valeurs numriques sont gales.

-ne

Permet de tester si les deux valeurs numriques sont diffrentes.

-lt

Permet de tester si la premire valeur est strictement plus petite que la deuxime.

-gt

Permet de tester si la premire valeur est strictement plus grande que la


deuxime.

-le

Permet de tester si la premire valeur est plus petite ou gale la deuxime.

-ge

Permet de tester si la premire valeur est plus grande ou gale la deuxime.

Il est possible de combiner des conditions en utilisant les options suivantes :


Options

Commentaires

-a

Cette option reprsente le Et et permet de combiner deux conditions.


Le rsultat gnral sera VRAI si et seulement si les deux conditions ont t
values VRAI.

-o

Cette option reprsente le Ou et permet de combiner deux conditions.


Pour que le rsultat gnral soit VRAI, il suffit seulement que lune des deux
conditions soit value VRAI.

ou dexprimer la ngation avec loption :


Option
!

Commentaire
Ngation de la condition

Voici un exemple dans lequel on demande lutilisateur de saisir une valeur puis nous
regardons si la valeur saisie est dans lintervalle [100-200]. Voici le code :
echo "entrez une valeur"
read Valeur
if [ $Valeur -ge 100 -a $Valeur -le 200 ]
then
echo "Votre valeur est entre 100 et 200"
else
echo "Votre valeur est en dehors de lintervalle [100,200]"
fi
Commentaires :
l'instruction read permet, comme son nom l'indique, d'attendre que l'utilisateur
fasse une saisie qui sera place dans la variable donne en paramtre. Pour consulter ensuite la valeur de la variable, il suffit de la prfixer avec le caractre $ .

277
8 3999 TG PA 01

Squence 4

Voyons un peu la condition :

Maintenant que nous avons dfini la syntaxe d'une condition, nous allons pouvoir tudier la syntaxe des instructions de contrle.

13C2. La conditionnelle
Voici la syntaxe gnrale de la conditionnelle :
if Condition
then
instructions
fi
Fonctionnement : si la condition est vraie, on excute les instructions situes entre le
then et le fi . Dans le cas contraire, on ne fait rien.
Exemple : nous voulons afficher un message derreur sil ny a pas dargument sur la
ligne de commande :
if test $# -eq 0
then
echo "Aucun argument sur la ligne de commande"
fi
ou encore :
if [ $# -eq 0 ]
then
echo "Aucun argument sur la ligne de commande"
fi

13C3. Lalternative
Voici la syntaxe gnrale de lalternative :
if Condition
then
instructions "Alors"
else
instructions "Sinon"
fi

278
8 3999 TG PA 01

tude du systme dexploitation Linux

Fonctionnement : si la condition est vraie, on excute les instructions du bloc Alors


situes aprs le then et avant le else . Dans le cas contraire, on excute les instructions du bloc Sinon situes entre le else et le fi .
Exemple : nous voulons afficher un message derreur sil ny a pas dargument sur la
ligne de commande mais par contre sil y en a, nous souhaitons afficher la valeur du
premier argument.
if [ $# -eq 0 ]
then
echo "Aucun argument sur la ligne de commande"
else
echo "vous avez fourni en premier argument: $1"
fi

13C4. La rptitive
Voici la syntaxe gnrale de la rptitive
while Condition
do
instructions
done
Fonctionnement : il sagit dune boucle. Ainsi tant que la condition est VRAI, on
excute les instructions du bloc situes entre le do et le done . Ds que la
condition passe FAUX, on sort de la boucle, cest--dire que lon va aprs le done .
Exemple : nous voulons que lutilisateur fasse la saisie dune valeur obligatoire. Nous
allons donc boucler sur la saisie tant que celui-ci na pas tap de valeur. Voici le code :
echo "Entrez une valeur"
read Valeur
while [ -z $Valeur ]
do
echo "Vous devez saisir une valeur"
read Valeur
done
echo "Vous avez saisi $Valeur"

279
8 3999 TG PA 01

Squence 4

Remarque

Linstruction read , lorsquelle est excute, permet de bloquer le droulement des instructions jusqu ce que lutilisateur tape quelque chose au clavier et appuie sur la touche
Entre . Dans ce cas, la donne saisie est place dans la variable dont on passe le nom
en paramtre de la commande read . Si lutilisateur tape directement sur la touche
Entre sans rien saisir avant, le programme continue alors son droulement et la variable passe en paramtre de la commande read est vide de contenu.

13C5. La boucle for


Voici la syntaxe gnrale du for
for NomVariable in listeValeurs
do
instructions utilisant la variable ($NomVariable)
done

Remarque

la diffrence de linstruction while qui boucle jusqu ce que la condition prenne la


valeur FAUX , linstruction for passe en revue les lments de la liste des valeurs
quon lui fournit la suite du mot-cl in . Cela signifie que les instructions vont se
rpter tant que linstruction for na pas trait tous les lments de la liste. Au premier
tour de boucle, la variable NomVariable a pour valeur la premire valeur de la liste puis
une fois que les instructions du for ont t traites, la variable prend la valeur suivante
de la liste puis r-excute les instructions et ce jusqu ce que la liste soit vide.

Exemple :
echo "On commence la boucle for"
for UneValeur in a b c d e
do
echo "La boucle traite la valeur $UneValeur"
done
echo "Fin de la boucle for"
Remarque

Dans le premier exemple de ce paragraphe et plus particulirement la ligne 7, nous avons


utiliser linstruction for pour lister les arguments passs sur la ligne de commande par
lutilisateur. Pour cela, nous avons fait rfrence $* qui reprsente la liste des arguments passs en paramtre. Nous sommes donc bien en prsence dune liste de valeurs.
Cest pourquoi le script a fonctionn.

280
8 3999 TG PA 01

tude du systme dexploitation Linux

13C6. La structure de choix ou laiguillage


Voici la syntaxe gnrale du case de laiguillage :
case Chaine in
Motif_1) Bloc_instructions1 ;;
Motif_2) Bloc_instructions2 ;;
...
Motif_N) Bloc_instructionsN ;;
* ) Bloc_instructionsCasAutre ;;
esac
Fonctionnement : cette instruction permet de proposer un ensemble de traitements
possibles. Celui qui sera excut est celui dont le motif correspond celui contenu dans
Chaine . Ainsi, si Chaine correspond motf_1 , le shell excutera la partie
Bloc_instructions1 . Si Chaine correspond motf_2 , le shell excutera la partie
Bloc_instructions2 et ainsi de suite. Au final, si Chaine ne correspond aucun
motf, le shell excutera la partie Bloc_instrcutionsCasAutre . Chacun des blocs dinstructions doit se terminer par deux point-virgule . Allez des exemples.
Exemple 1 : nous allons demander lutilisateur de saisir une lettre. Si la lettre saisie
est une voyelle, le script affiche un message disant quil sagit dune voyelle et, dans le
cas contraire, le script affiche quil sagit dune consonne. Dans cet exemple, nous considrons quil ny aura pas derreur de saisie et que lutilisateur tapera toujours soit une
voyelle soit une consonne.
Voici le code :
echo "Entrez une lettre"
read Lettre
case $Lettre in
a|A|e|E|i|I|o|O|u|U|y|Y) echo "Il sagit dune voyelle";;
*) echo "il sagit dune consonne";;
esac
Remarque

Le caractre | (pipe) employ dans le script, pour lnumration des voyelles, a pour
signification ou .

Il est obtenu par la squence de touches AltGr + touche 6 du pav machine


crire .
Exemple 2 : nous reprenons le mme nonc que prcdemment sauf que cette fois-ci,
nous allons distinguer les minuscules des majuscules et prendre en compte les erreurs
de saisie.
281
8 3999 TG PA 01

Squence 4

Voici le code :
echo "Entrez une lettre"
read Lettre
case $Lettre in
a|e|i|o|u|y) echo "Il sagit dune voyelle en minuscule";;
A|E|I|O|U|Y) echo "Il sagit dune voyelle en majuscule";;
[b-d]|[f-h]|[j-n]|[p-t]|[v-x]|z) echo "Il sagit dune consonne en minuscule";;
[B-D]|[F-H]|[J-N]|[P-T]|[V-X]|Z) echo "Il sagit dune consonne en majuscule";;
*) echo "Je ne vois pas. Il y a certainement une erreur !";;
esac

Remarque

Les crochets employs au niveau des motifs de comparaison permettent de donner un intervalle de caractres.

Exemple 3 : nous avons vu dans ce cours que le fichier /etc/profile est un fichier de
configuration de lenvironnement des utilisateurs qui est appel chaque connexion
russie dun utilisateur. Nous allons complter le code de ce fichier avec le code suivant :
Prcaution : faites une copie de ce fichier avant de le modifier, comme cela, en cas derreur, vous pourrez le restaurer dans son tat initial.
case $LOGNAME in
root) echo "Vous tes root"
echo "Voici les utilisateurs connects"
who ;;
alain|pierre) echo "Vous tes $LOGNAME"
if [ -e $HOME/temp ]
then
if [ -d $HOME/temp ]
then
echo "Je vide le rpertoire temp"
rm $HOME/temp/* 2> /dev/null
else
echo "Je supprime le fichier temp"
rm $HOME/temp
echo "Mise en place du rpertoire temp"
mkdir $HOME/temp
fi
else
echo "Mise en place du rpertoire temp"
mkdir $HOME/temp
fi

282
8 3999 TG PA 01

tude du systme dexploitation Linux

echo "Restriction des permissions sur temp"


chmod 700 $HOME/temp ;;
*) echo "lutilisateur $LOGNAME vient de se connecter" > $HOME/message
write root < $HOME/message 2> /dev/null
rm $HOME/message ;;
esac
Ce code ralise diffrentes tches qui dpendent du nom de login ($LOGNAME) de lutilisateur qui est en train de se connecter. Ainsi :
s'il s'agit de root , on affiche la liste des utilisateurs actuellement connects ;
s'il s'agit de alain ou de pierre , on cre dans le rpertoire de connexion de
celui-ci (son HOME DIRECTORY) repr par la variable d'environnement HOME ,
un rpertoire de nom temp . Si ce rpertoire existe, on vide son contenu en prenant la prcaution d'envoyer dans la poubelle les messages d'erreurs qui peuvent
apparatre notamment lorsque le rpertoire est dj vide. Si le nom temp est
dj associ un fichier se trouvant dans le rpertoire de connexion, on le supprime
puis on cre le rpertoire temp . Si le rpertoire temp n'existe pas, on le cre
et on modifie les permissions sur celui-ci ;
si l'utilisateur qui se connecte n'est pas un de ceux cits au-dessus, on envoie un message via la commande write root pour l'avertir de la connexion de l'utilisateur. Pour cela, on place le message envoyer dans un fichier dont en envoie ensuite
le contenu sur l'entre standard de la commande write . Attention, si l'utilisateur
root n'est pas connect, la commande write envoie un message d'erreur que
l'on transfre dans la poubelle. Le fichier de message cre est supprim, ceci pour
viter de laisser des traces sur le rpertoire de connexion de l'utilisateur.

13C7. Linstruction break


Linstruction break permet de quitter une boucle avant son terme sans attendre que
la condition prenne la valeur FAUX .
Exemple : nous allons reprendre lexemple donn dans le cas du while et le modifier
comme suit. Nous souhaitons boucler tant que lutilisateur na rien saisi mais nous lautorisons quitter la saisie en tapant le mot fin . Voici la modification :
echo "Entrez une valeur"
read Valeur
while [ -z $Valeur ]
do
echo "Vous devez saisir une valeur ou fin pour terminer"
read Valeur
if [ "$Valeur" = "fin" ]
then
break
fi
done
echo "Vous avez saisi $Valeur"

283
8 3999 TG PA 01

Squence 4

Remarque

Pour comparer deux chanes de caractres, il faut que les deux soient places entre guillemets.

Exemple 2 : nous allons boucler jusqu ce que lutilisateur tape le mot n en


utilisant une boucle innie. Pour obtenir une boucle innie, il suft de placer true au
niveau de la condition. Dans ce cas, la condition sera toujours VRAI et nous obtenons
donc une boucle innie.
while true
do
echo "Vous devez taper le mot fin"
read Valeur
if [ "$Valeur" = "fin" ]
then
break
fi
done
echo "Vous avez saisi $Valeur"

13C8. Les anti-quotes


Les caractres anti-quotes , obtenus par la combinaison des touches AltGr +
Touche 7 du pav machine crire , permettent de substituer le texte dune commande par son rsultat.
Par exemple, en tapant les commandes suivantes, nous obtenons :
echo pwd
affiche le mot pwd
echo `pwd`
affiche le nom du rpertoire courant. En effet, la partie `pwd` est excute avant
que la commande echo ne soit value ;
echo il y a `who | wc -l` personne(s) connecte(s)
permet dafficher le nombre de personnes connectes.
Dernier exemple : nous allons crire un script qui affiche le nom des utilisateurs
connects ainsi que le nom du terminal sur lequel ils sont connects. Pour cela, nous
allons utiliser une boucle for qui on transmet une liste dinformations associant le
nom de login de lutilisateur et le nom de son terminal de connexion. Voici le code :
for Nom in `who | sed s/[ ][ ]*/:/g | cut -d: -f1,2`
do
echo "lutilisateur `echo $Nom | cut -d: -f1` est sur `echo $Nom | cut -d: -f2`"
done

284
8 3999 TG PA 01

tude du systme dexploitation Linux

Je suis fier de moi avec ce script. Bon allez quelques explications simposent.
La succession de commandes who | sed s/[ ][ ]*/:/g | cut -d: -f1,2 a pour but de ne
rcuprer que le nom des utilisateurs connects et le nom de leur terminal de connexion.
Voici un exemple de rsultat produit par cet ensemble de commandes.

Chaque ligne est donc un lment de la liste transmise for . Pourquoi avoir ajouter
le caractre : entre le login et le nom du terminal ? Tout simplement parce que le
caractre espace est un sparateur dlments lintrieur de la liste. Donc chaque
tour de boucle, nous aurions eu une fois le nom de login et une fois le nom du terminal
mais jamais les deux en mme temps. Avec le caractre : la place de lespace, nous
navons plus ce problme.
Pour comprendre encore mieux, dcortiquons le travail de chacune des commandes de
cette ligne de commandes. Ainsi la commande who nous renvoie :

La commande sed permet de modifier les lignes dun fichier qui lui sont transmis
sur son entre standard. Dans notre cas, nous lui demandons de substituer un ensemble
despaces par le caractre : et de rpter cette action sur toute la ligne. Dans notre
cas, la syntaxe utilise correspond s/Caractres cherchs/Caractres de remplacement/
option. Loption g indique de rpter cette modification sur toute la ligne.
Voici le rsultat obtenu aprs application de la squence who | sed s/[ ][ ]*/:/g :

Maintenant, nous pouvons prendre les colonnes n1 et n2 avec la commande cut , ce


qui donne aprs excution de la squence : who | sed s/[ ][ ]*/:/g | cut -d: -f1,2

Ce rsultat constitue maintenant la liste du for . Aprs excution du script-shell complet, nous obtenons :

285
8 3999 TG PA 01

Squence 4

Remarques

Si vous utilisez diffrents shells ou que vous souhaitiez partager vos scripts, il peut tre
utile de prciser quel shell est utilis par faire fonctionner votre script. En effet, dun
shell lautre, il peut y avoir des diffrences dans la syntaxe des instructions du shell . Il
est donc recommand de toujours prciser, sur la premire ligne du script, le nom du shell
utiliser avec la ligne suivante : #!NomDuShell. Par exemple, si on souhaite prciser que
cest le bash quil faut utiliser, il faut crire au dbut du script : #!/bin/bash. Cette
ligne oblige le shell courant excuter le script avec un shell bash mme si vous utilisez
par exemple C shell comme shell par dfaut quand vous vous connectez. Remarque :
cette ligne nest pas prise pour une ligne de commentaires car le # est suivi dun point
dexclamation et lensemble prend donc une autre signification pour le shell .

Exemple : nous allons mettre en place un script dans lequel celui-ci va demander
lutilisateur dentrer un nom de fichier, avec ventuellement des caractres jokers, et le
nom dun rpertoire avec si ncessaire le chemin pour latteindre. Le script va ensuite
rechercher, laide de la commande find , les diffrents rpertoires de larborescence
contenant le fichier cherch et ce partir du rpertoire fourni. Au final, le script affiche
le nombre de rponses trouves ainsi que les rponses trouves.

Ce script va galement contrler le fait que lutilisateur saisisse un nom de fichier et ne se


contente pas de taper tout simplement sur la touche Entre sans rien saisir. En cas de
problme, le script redemande en boucle le nom dun fichier et ce tant que lutilisateur
ne sexcute pas.

Concernant la saisie du rpertoire point de dpart de la recherche, si lutilisateur tape


directement sur la touche Entre sans saisir de nom de rpertoire, par dfaut, le script
va lancer la recherche partir du rpertoire de connexion de lutilisateur (voir premire
capture dcran ci-dessous). Si lutilisateur saisit le nom dun rpertoire avec son chemin,
le script contrle le fait que celui-ci existe bien. Dans la ngative, le script sarrte (voir
deuxime capture dcran page suivante).

286
8 3999 TG PA 01

tude du systme dexploitation Linux

Voici le code de notre programme Exemple .


1
2
3
4
5
6
7
8
9
10
11
12
13
13
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44

#!/bin/bash
# Le script attend la saisie dun nom de fichier et dun rpertoire
echo "Entrez le nom dun fichier"
read NomFich
while [ -z $NomFich ]
do
echo "Il FAUT un nom de fichier !"
echo "Entrez le nom dun fichier"
read NomFich
done
echo "Entrez le nom du rpertoire de dpart de la recherche"
read RepDep
# Vrification du rpertoire de recherche
if [ -z $RepDep ]
then
RepDep=$HOME
else
# Vrifier lexistence du rpertoire
ls $RepDep &>/dev/null
if [ $? -ne 0 ]
then
echo "Repertoire inexistant"
exit
fi
fi
# Lancer la recherche
echo "La recherche va seffectuer avec les permissions de lutilisateur : $LOGNAME"
echo "et partir du rpertoire : $RepDep"
echo -e "\nRecherche en cours ..."
NbRep=`find $RepDep -name $NomFich -type f 2>/dev/null | tee LesReponses | wc -l`
echo -e "Fin de la recherche\n"
# Affichage du rsultat de la recherche
if [ $NbRep -eq 0 ]
then
echo "Il ny a pas de solution trouve"
else
echo "Il y a $NbRep solution(s) trouve(s) dans"
cat LesReponses | more
rm LesReponses
fi

Les numros gauche du script-shell ne font pas parti du code, ils sont l uniquement pour nous reprer plus facilement dans les explications qui vont suivre. Il ne
faut donc pas les taper dans le fichier script.

287
8 3999 TG PA 01

Squence 4

Explications
Ligne 1 : cette ligne permet dindiquer au shell courant que le script doit tre excut laide de bash .
Ligne 4 11 : ces lignes permettent de faire la saisie du nom du fichier cherch et
de contrler quil y a bien un nom de saisie. Attention, la ligne 10 est importante car
elle permet au script de sarrter et dattendre la saisie dun nouveau nom de fichier.
Sans cette ligne, la boucle serait infinie puisque la variable NomFich resterait
jamais vide.
Ligne 12 13 : ces lignes permettent de faire la saisie du nom du rpertoire qui
sera le point de dpart de la recherche.
Ligne 16 : cette ligne contrle le fait que la variable RepDep nest pas vide.
Ligne 18 : cette ligne ne sexcute que si le test de la ligne 16 est VRAI, cest--dire
que la RepDep est vide. Dans cette ligne, on affecte la variable RepDep le
nom du rpertoire de connexion de lutilisateur courant et ce grce la variable
denvironnement HOME .
Ligne 20 26 : ces lignes ne sexcutent que si le test de la ligne 16 est FAUX, cest-dire que la RepDep nest pas vide.
Ligne 21 : linstruction de cette ligne permet de savoir si le rpertoire du dpart de
la recherche existe. En effet, la commande ls enverra un message derreur si le
rpertoire, dont il tente de lister le contenu, nexiste pas. Pour ne pas polluer lcran
avec le message derreur le cas chant, nous redirigeons la sortie erreur vers la poubelle. De mme pour ne pas polluer lcran avec le contenu du rpertoire de dpart,
sil existe, on redirige la sortie standard vers la poubelle. Le symbole de redirection
&> indique que lon souhaite fusionner la sortie erreur et la sortie standard afin
de les rediriger vers le mme endroit cest--dire, pour nous, vers la poubelle.
Ligne 22 : il sagit dune ligne de test. Le paramtre $? permet de savoir si la
dernire commande excute sest bien termine ou non. Ce paramtre contient la
valeur 0 si la dernire commande excute sest bien termine et une valeur derreur diffrente de 0 si la dernire commande excute ne sest pas bien termine.
Dans notre cas, la dernire commande excute est celle de la ligne 21. Ainsi si le
rpertoire de dpart nexiste pas, la ligne 21 se termine sur une erreur et donc le
paramtre $? est diffrent de 0.
Ligne 24 25 : ces lignes ne sexcutent que si le test de la ligne 22 est VRAI,
cest--dire que la RepDep nexiste pas. Remarque: la commande exit permet
dinterrompre lexcution du script.
Ligne 30 32 : ces lignes affichent de linformation lcran. Rappel : loption
-e de la commande echo permet dutiliser des caractres spciaux comme le
\n qui a pour effet de raliser un saut de ligne lcran.
Ligne 33 : cette ligne permet daffecter, la variable NbRep , le rsultat de la
commande dlimite par des anti-quotes (rappel : une commande place entre
anti-quotes est excute en premier). Cette commande est divise en trois parties.
Dans la premire partie, on ralise la recherche laide de la commande find .
Les rsultats trouvs sont envoys sur lentre standard de la commande tee . La
commande tee envoie ce quelle reoit sur son entre standard vers deux sorties
diffrentes savoir vers le fichier de nom LesReponses et vers lentre standard
de la commande wc . Le fichier LesReponses va donc contenir les rsultats
envoys par la commande find . La commande wc -l permet de compter le

288
8 3999 TG PA 01

tude du systme dexploitation Linux

nombre de lignes qui arrivent sur son entre standard donc le nombre de lignes
Rsultats produites par find . Un petit schma :

Remarque

La commande find peut essayer douvrir des rpertoires sur lesquels lutilisateur na pas
les permissions x et r . Dans ce cas des messages derreurs apparaissent que nous
envoyons alors la poubelle.
Ligne 34 : affichage dun texte pour lutilisateur.
Ligne 37 44 : ces lignes affichent les rsultats de la recherche.
Ligne 39 : affichage du texte concernant le fait quaucun rsultat na t trouv.
Ligne 41 : affiche le nombre de rsultats trouvs.
Ligne 42 : affiche du contenu du fichier LesReponses en mode page par page.
Cela permet de lister les rsultats trouvs par la commande find .
Ligne 43 : on efface le fichier LesReponses car nous nen avons plus besoin.
Ce script-shell peut maintenant tre associ un alias, si vous juger quil est intressant,
ou excut normalement en tapant le nom du fichier, contenant le code shell , sur la
ligne de commande.
Voil, nous nirons pas plus loin dans la programmation shell mais vous voyez quelle
permet de faire beaucoup de chose.

14

Faire cohabiter plusieurs systmes dexploitation


LINUX peut parfaitement tre install sur un ordinateur sur lequel est dj install
Windows. Cela permet de disposer dun ordinateur qui peut dmarrer soit en mode
LINUX soit en mode Windows . Pour cela, il est ncessaire davoir crer au pralable des partitions pour chacun des systmes dexploitation ou davoir deux disques
durs. Dans le cas o vous devez crer des partitions posteriori, aidez-vous dun logiciel
comme Partition magic car si vous utilisez fdisk , vous risquez de perdre les installations dj ralises. Une fois que tout est prt, il ne vous reste plus qu installer la
distribution LINUX que vous avez choisi. Dans le cas o rien nest install, commencez par
installer Windows, puis ensuite, installez LINUX.
Lors de linstallation de LINUX, le systme installe et paramtre, dune manire fort
simple voire transparente, un bootloader LILO ou GRUB qui permet de mettre en place
un menu de dmarrage offrant la possibilit de booter sur lun ou lautre des systmes.
Attention, si vous installez Windows aprs LINUX, le bootloader de Windows de nom
ntldr crasera sans complexe le bootloader de LINUX ce qui risque de poser des problmes pour lancer LINUX par la suite.
289

8 3999 TG PA 01

Squence 4

15.

Tableau rsum des commandes vues


Voici un tableau permettant de rsumer les commandes vues dans cette squence. Elles
sont places dans lordre du cours.
Nom de la commande

Descriptions

date

Afficher lheure et la date systme.

clear

Effacer les caractres affichs lcran.

man NomCommande

Afficher de laide sur la commande LINUX passe en paramtre de la


commande man .

passwd

Permet de changer le mot de passe dun utilisateur.

adduser
useradd

Permet de crer un nouvel utilisateur.

userdel

Permet de supprimer un utilisateur.

usermod

Permet de modifier un utilisateur.

chfn

Permet de saisie un complment dinformation sur un utilisateur (voir


fichier /etc/passwd ).

groupadd

Permet de crer un nouveau groupe dutilisateurs.

groupdel

Permet de supprimer un groupe dutilisateurs.

groupmod

Permet de modifier un groupe dutilisateurs.

groups

Permet de connatre le nom du groupe primaire et des groupes


secondaires dun utilisateur.

who am i
whoami
logname

Permet de connatre le login de lutilisateur ayant ouvert la session LINUX


en cours.

id

Permet de connatre lUID et le GID de lutilisateur ayant ouvert la session


LINUX en cours.

tty

Permet de connatre le nom du terminal de connexion de la session


LINUX en cours.

who

Affiche diffrentes informations sur les utilisateurs ayant actuellement


ouvert une session LINUX.

users

Affiche le nom de login des utilisateurs ayant actuellement ouvert une


session LINUX.

Affiche des informations sur les utilisateurs ayant actuellement ouvert


une session LINUX avec en plus le nom du programme quils sont en train
dexcuter.

su

Cette commande permet de devenir temporairement lutilisateur root


(le Super-Utilisateur) ou un autre utilisateur.

cd

Permet de changer de rpertoire courant.

pwd

Afficher le chemin absolu du rpertoire courant.

290
8 3999 TG PA 01

tude du systme dexploitation Linux

mkdir

Permet de crer un nouveau rpertoire.

rmdir

Supprimer un rpertoire vide.

ls

Permet de lister le contenu dun rpertoire et obtenir diffrentes


informations sur les fichiers ou rpertoires lists.

cp

Copier des fichiers ou des rpertoires.

mv

Dplacer ou renommer des fichiers ou des rpertoires.

rm

Supprimer des fichiers.

cat
more
less

Afficher le contenu dun fichier.

find

Rechercher des fichiers ou des rpertoires avec ventuellement des


critres de recherche.

chown

Changer le nom du propritaire dun fichier ou dun rpertoire.

chgrp

Changer le nom du groupe associ un fichier ou un rpertoire.

umask

Changer les droits par dfaut sur les fichiers et les rpertoires.

ln

Permet de mettre en place un lien symbolique ou un lien physique sur un


fichier.

mkfs

Formater un systme de fichiers LINUX (voir squence 5) sur priphrique


de stockage (disque dur, disquette...).

mount

Monter (ajouter) un systme de fichiers sur larborescence LINUX.

umount

Dmonter (enlever) un systme de fichiers sur larborescence LINUX.

shutdown

Arrter ou rebooter le serveur LINUX.

ps

Lister les processus en cours.

top

Afficher en continu des informations sur les processus en cours.

kill

Arrter lexcution dun processus.

&

Lancer lexcution dun processus en arrire-plan.

jobs

Lister les processus en arrire-plan.

fg

Faire revenir un processus au premier-plan.

bg

Permet de faire en arrire-plan le processus du premier-plan.

alias

Dans lenvironnement bash permet de mettre en place un alias de


commande.

291
8 3999 TG PA 01

Squence 5

Systme de gestion de fichiers


u Contenu
1.

Implantation physique des donnes .......................................... 293

1A.
1B.
1C.
1D.
1E.
1F.

Quest-ce quun systme de gestion de fichiers .................................... 293


La notion de cluster ........................................................................... 294
Le systme de gestion de fichiers de MS-DOS ou la FAT ..................... 295
Le systme de fichiers FAT32................................................................... 298
Quelques mots sur NTFS .......................................................................... 301
Les systmes de gestion de fichiers de UNIX / LINUX ........................... 304

2.

Implantation logique des donnes ............................................. 308

2A.
2B.

Quelques remarques sur la notion de fichier ........................................ 308


Les diffrents modes dorganisation internes des fichiers ................... 308

1.

Implantation physique des donnes

1A.

Quest-ce quun systme de gestion de fichiers


Voil, notre voyage dans le monde des systmes dexploitation va se terminer avec cette
squence consacre aux fichiers. Au niveau de chaque OS, nous avons mis en avant la
notion de systme de gestion de fichiers (SGF) galement appel, tout simplement,
systme de fichiers. En effet, il est primordial quun OS offre la possibilit, un utilisateur, de sauvegarder ou lire ses documents, dinstaller des fichiers excutables associs
des applications ou des utilitaires, de grer des fichiers de configuration ou encore des
bibliothques de fonctions. Nous avons vu dans les pages prcdentes du support quil
sagit en fait chaque fois de manipuler des fichiers placs dans des rpertoires (dossiers), le tout plac sur un support de masse (Disque dur, Disquette, Cl USB, CD-ROM).
Quand on emploie le terme manipuler , il faut comprendre que lon souhaite pouvoir
stocker les fichiers mais galement pouvoir les rcuprer dans de bonnes conditions. Or
le fait de pouvoir retrouver un fichier ou un rpertoire ncessite dtre organis un peu
comme un bibliothcaire pour retrouver ses livres ou le marchand de journaux pour
retrouver ses magazines. Cependant chacune de ces personnes a son propre systme
pour organiser les livres ou les magazines et bien, en informatique, il en va de mme.
Chaque OS ou du moins chaque concepteur dOS essaye dorganiser les fichiers de la
manire la plus efficace possible, la plus sre et surtout en tenant compte de la capacit
grandissante des supports magntiques. Cest l quintervient la notion de systme de gestion de fichiers . Il sagit en fait dun mcanisme logique, bas
sur une ou plusieurs structures de donnes, permettant dorganiser lespace
physique dun disque de faon pouvoir y stocker des fichiers. Le mcanisme
logique doit suffisamment tre bien conu et sans erreur pour permettre au mcanisme

293
8 3999 TG PA 01

Squence 5

physique (le bras de lecture /criture) de se positionner au bon endroit afin de rcuprer
ou crire les octets du fichier et rien que du fichier.
Dans cette squence nous allons expliquer le mcanisme du systme de fichiers FAT16,
FAT32 et Linux. Ces trois exemples sont suffisant pour avoir une ide de comment doit
se dbrouiller un OS pour grer vos fichiers et rpertoires. Aujourdhui, lvolution est
plutt tourner vers la scurit des informations avec des permissions supplmentaires,
sur la journalisation des actions effectues sur les fichiers ou les rpertoires de manire
pouvoir ventuellement retrouver un fichier dans un tat convenable suite larrt
brutal de lordinateur ou au plantage du systme, la gestion des gros disques, minimiser la fragmentation possible des fichiers et surtout acclrer la rapidit daccs un
fichier et un rpertoire, dfinir des quotas de disque pour chacun des utilisateurs et
bien dautres possibilits encore dans le cadre de ladministration des disques. A chaque
fois, il est ncessaire dajouter des structures de donnes supplmentaires pour grer ses
diffrents lments cits prcdemment. Cest ce qui a amen par exemple Microsoft
voluer de FAT32 NTFS et continuer faire voluer NTFS avec une structure de plus
en plus complexe. Cest ce qui a amen LINUX passer de ext2fs ext3fs.

1B.

La notion de cluster
Dune manire gnrale, un systme de gestion de fichiers est bas sur la gestion
de clusters ou units dallocation . Dfinissons ce terme. Un cluster est constitu
dun ou plusieurs secteurs conscutifs et est considr par lOS comme la plus petite unit
de disque gre. Le contenu dun fichier est dcoup, suivant sa taille, en un certain
nombre de clusters (de blocs) qui seront placs sur le support magntique (le disque) et
rpertoris par le SGF. Ce dernier a donc pour rle vital de savoir retrouver les clusters
dun fichier et cest l que lon retrouve diffrents mcanismes plus ou moins performants, plus ou moins limits, plus ou moins scuriss comme FAT16, FAT32, NTFS, ext2fs,
etc. Le nombre de secteurs par cluster dpend de lOS, du systme de gestion de fichiers
utilis mais aussi de la taille du disque ou de la partition considre.
Un cluster appartient totalement un fichier quil ny ait quun seul octet lintrieur
ou que le cluster soit totalement rempli. Ce principe engendre bien souvent de la perte
de place surtout dans le cas o le nombre de secteurs par clusters est important. Prenons
un exemple, supposons que notre systme dexploitation travaille avec des clusters de
32Ko soit 64 secteurs par clusters. Si on enregistre un fichier de 300 octets, un seul cluster suffit mais on peut voir quil y a beaucoup de perte de place. Si le SGF utilis permet
de travailler avec moins de secteurs pas cluster, on peut voir immdiatement que lon a
moins de perte. Vous pouvez alors vous dire mais pourquoi ne pas travailler directement
avec des clusters dune taille de 1 secteur ? Tout simplement parce que cela risque de
faire beaucoup trop de clusters grer pour un fichier et donc une structure de donnes,
associe au SGF, trop volumineuse qui risque alors doccuper trop de place au dtriment
des fichiers. En effet, dune manire gnrale, la structure de donnes associe un
SGF est l pour localiser les clusters qui appartiennent un fichier. Plus il y a de clusters
plus il faut mmoriser dinformations sur la position des clusters sur le disque afin de les
retrouver lorsque cela est ncessaire. En regroupant plusieurs secteurs par cluster, il y
aura un nombre moins important de clusters grer et donc une structure de donnes
pour le SGF moins volumineuse. Par exemple, si jai un fichier de 500 Ko (512 000 octets),
avec des clusters de 1 secteur il me faudra 1000 clusters. Avec des clusters de 32 Ko soit
64 secteurs, il ne me faudra plus que 16 clusters. En rsum, il faut mieux quun cluster
regroupe plusieurs secteurs conscutifs mme si cela engendre de la perte de place.

294
8 3999 TG PA 01

Systme de gestion de fichiers

Les clusters dun fichier ne sont pas forcment placs de manire conscutive sur le
disque. En effet, lOS est capable de reprer les clusters occups, vides ou endommags
grce la structure de donnes du SGF. Ainsi lorsque lon cre un nouveau fichier, lOS va
chercher, via le SGF, des clusters libres afin de les mettre disposition du nouveau fichier.
De mme, lorsquon supprime un fichier, ses clusters sont remis disposition du SGF. Plus
on ajoute ou on supprime de fichiers, plus les clusters libres peuvent tre loigns les uns
des autres ce qui a pour consquence que les clusters associs un fichier peuvent tre
loigns les uns des autres. On parlera de fragmentation des fichiers do lutilit parfois
de dfragmenter un disque afin de rapprocher les clusters associs au mme fichier. La
dfragmentation permet dacclrer le travail de lOS lorsquil doit lire ou crire dans les
fichiers car cela permet de diminuer les dplacements de la tte de lecture/criture du
disque dur lors du parcours des clusters associs un fichier.

1C.

Le systme de gestion de fichiers de MS-DOS ou la FAT


Le systme de gestion de fichiers FAT ou Files Allocation Table est le systme de gestion de fichiers mis en avant par MS-DOS. Voici en quelques mots son principe de fonctionnement qui est simple, cest pourquoi on en parle. Il permet de mieux comprendre
les principes de fonctionnement dun SGF et comment il doit se dbrouiller pour retrouver les clusters associs un fichier.
Juste un petit rappel avant de poursuivre. Le premier secteur dune partition primaire
ou logique sappelle le secteur de boot. Il peut ventuellement contenir, dans le cas
des partitions bootables , un programme permettant dinstaller en mmoire le noyau
de lOS en cours de dmarrage. Attention, il ne faut pas confondre avec le MBR qui lui
contient la description des partitions ainsi que le bootloader permettant de lancer lexcution du programme se trouvant dans le secteur de boot.

Le secteur de boot contient galement, en plus de lventuel programme de lancement


de lOS, que lon appelle le programme de boot, des informations complmentaires sur
la partition. Nous trouvons par exemple le nombre de secteurs par clusters, la taille dun
secteur en octet ou encore le nombre de FAT. Le systme de gestion FAT tire son nom de
la structure de donnes quil utilise. Cette structure de donnes est en fait une table (un
tableau), appele la Table dAllocation des Fichiers ou Files Allocation Table ou
FAT , dans laquelle chaque entre (chaque case) peut contenir une valeur numrique
qui correspond en fait un numro de cluster. Cette structure de donnes est double
an davoir une sauvegarde en cas de problme. Cest pourquoi nous avons indiqu
prcdemment que lune des informations complmentaires taient le nombre de FAT.
Comme nous venons de le dire, chaque entre (chaque case) de la FAT peut contenir une
valeur qui correspond un numro de cluster. Cette valeur est code sur 16 bits do le
terme de FAT16 souvent employ pour dsigner ce systme de gestion de chiers. Avec
des valeurs codes sur 16 bits, on peut reprsenter 216 valeurs diffrentes soit 65536.
Cependant sur lensemble de valeurs possibles, certaines ne peuvent pas tre utilises car
rserves des codes particuliers de fonctionnement comme par exemple pour indiquer
295
8 3999 TG PA 01

Squence 5

quun cluster est vide ou encore quun cluster est endommag. Il reste en ralit 65525
valeurs possibles pour grer les numros de clusters. En rsum, la FAT est un tableau
reprsentant un plan doccupation des clusters de la partition concerne permettant de
savoir quelles sont les clusters occups par des chiers, libres ou endommags. Voici o
nous en sommes pour linstant.

Lors de notre cours sur MS-DOS et Windows, nous avons eu loccasion de parler du rpertoire principal dsign par le symbole \ . Ce rpertoire constitue le point dentre
de larborescence des rpertoires. Cest pourquoi, juste aprs la FAT et sa copie, nous
trouvons un espace rserv permettant de stocker le nom des fichiers et des sous-rpertoires se trouvant lintrieur du rpertoire principal. Chaque fichier ou sous-rpertoire
se trouvant dans le rpertoire \ est notifi lintrieur de cette zone rserve par
un ensemble de 32 octets, que lon appelle une entre de rpertoire. Ces 32 octets se
dcomposent comme suit :
8 octets pour le nom du fichier ou du sous rpertoire ;
3 octets pour l'extension ;
1 octet pour les attributs du fichier (Lecture seule, Cach, Systme, Archiv). La
valeur de cet octet permet galement de savoir si le nom correspond un fichier ou
un sous-rpertoire ;
2 octets pour l'heure de cration + 2 octets pour la date de cration ;
2 octets pour l'heure de modification + 2 octets pour la date de modification ;
2 octets pour la date de dernier accs ;
4 octets rservs ;
2 octets contenant le numro du premier cluster associ au fichier ou au sous-rpertoire considr ;
4 octets pour la taille du fichier exprime en octets.

296
8 3999 TG PA 01

Systme de gestion de fichiers

partir de maintenant, nous avons tous les lments ncessaires pour retrouver tous les
clusters associs un fichier ou un rpertoire. Toutefois, juste une prcision avant de
poursuivre. Lorsquun cluster est associ un fichier, il contient les octets de ce dernier.
Par contre, lorsquun cluster est associ un sous-rpertoire, il contient de nouveau des
entres sur 32 octets correspondant la description des fichiers et des sous-rpertoires
de ce dernier. Ainsi de proche en proche, on retrouve le schma de notre arborescence
des rpertoires vue dans les pages prcdentes du support.
Dans les 32 octets associs la description dun fichier ou dun rpertoire, il y en a deux
qui correspondent au numro du premier cluster associ au fichier ou au rpertoire. Que
se passe-t-il si maintenant le fichier ou le rpertoire se compose de plus dun cluster ?
Eh bien cest simple. Le numro du premier cluster correspond galement une entre
de la FAT portant le mme numro. A lintrieur de cette entre, on trouve une valeur
qui peut tre soit une valeur hexadcimale entre FFF8 et FFFF, indiquant quil ny a pas
dautre cluster pour le fichier ou le sous-rpertoire considr, soit une autre valeur correspondant au numro du cluster suivant. De nouveau pour savoir sil y a encore une
suite, il suffit de nouveau de regarder dans la FAT et dinterprter la valeur de lentre
portant le numro du cluster trouv prcdemment et ainsi de suite. On parcourt un
chanage de clusters. Oulala, je vois quelques yeux sarrondir ! Allez un petit schma.
Remarque

Les entres de la FAT sont numrotes dans lordre et partir de 0. Les deux premires
entres sont rserves la gestion de la FAT elle-mme.

297
8 3999 TG PA 01

Squence 5

Pour simplier la lecture du schma, les valeurs 7 et 28 sont des valeurs donnes

O en base 10. En lisant les valeurs de la FAT avec un diteur hexadcimal comme
Winhex , les valeurs seraient apparues en hexadcimale.
Remarque

Le rpertoire principal est limit 512 entres. Par contre, les sous-rpertoires ne sont pas
limits sauf par la taille de la partition.
Justement, quelle est la taille de la partition quil est possible de grer avec une FAT16 ?
La plus grande taille que lon puisse utiliser pour un cluster est de 32768 octets (64 secteurs). Cela nous donne 32768 * 65525 = 2147123200 octets soit sensiblement 2Go. En
conclusion, en FAT16, la limite dune partition est de 2Go avec des clusters de 64 secteurs.
Remarques

Lorsqu'un cluster est vide, l'entre de la FAT portant le numro de ce dernier, contiendra
la valeur 0 (Zro).
Lorsque l'on supprime un fichier, les clusters qui lui sont associs sont mis 0 dans les
entres de la FAT correspondant aux numros des clusters. Un nouveau fichier ou un nouveau rpertoire pourra ainsi rcuprer les clusters marqus comme vides.
Le formatage de haut niveau permet de mettre en place la FAT.
Pour les disquettes il est prvu d'utiliser le systme de gestion de fichiers FAT12.

Lorsqu'un fichier ou un rpertoire est supprime, le premier octet du nom est remplac par
la valeur hexadcimale E5.
Les deux premires entres d'un sous-rpertoire sont "." et "..". Elles sont automatiquement mises en place lors de la cration d'un nouveau rpertoire.

Voil nous venons de dtailler le mcanisme de la FAT16. Pour les autres systmes de
gestion de chiers, que nous allons voir dans la suite, nous n'irons pas aussi loin chaque
fois. L'essentiel tait de voir au moins une fois comment un OS peut se dbrouiller pour
grer chiers et rpertoires.

1D.

Le systme de fichiers FAT32


partir de Windows 95 OSR2, il a t mis en place le systme de fichiers FAT32. Ce
systme a pour principe de fonctionnement le mme principe de chanage des clusters
que nous venons de dcrire au sujet de la FAT16. Cependant, les entres de la structure
FAT du systme FAT32 acceptent des valeurs codes sur 32 octets (en fait 28 car les 4
octets de poids fort sont rservs). Cela offre une plus grande plage de valeurs possibles
pour la numrotation des clusters. La FAT32 offre la possibilit thorique de prendre en
charge des disques pouvant atteindre 2 Traoctets. Remarque: Les outils de formatage
de Windows XP place cette limite 32Go. Pour aller au-del, il faut passer par un utilitaire indpendant de XP.

298
8 3999 TG PA 01

Systme de gestion de fichiers

Autre diffrence davec le systme FAT16, cest que le rpertoire racine ne se trouve plus
la suite de la structure FAT, et de sa copie, mais que la liste des fichiers et sous-rpertoires
de ce dernier se trouve dans une liste chane de clusters exactement comme un fichier
ou un sous-rpertoire. Le premier numro de cluster associ au rpertoire principal ( \ )
se trouve spcifi dans la liste des informations complmentaires du secteur de boot. Il
ny a donc plus de limitation dans le nombre dentres possibles pour ce rpertoire.
Le systme FAT32 peut grer un plus grand nombre de clusters que dans le cas de la FAT16
ce qui permet de diminuer le nombre de secteurs par cluster. En effet, dans le cas de la
FAT16 comme on dispose dun nombre limit de numros possibles pour les clusters, on
contourne la problmatique en augmentant le nombre de secteurs par cluster ce qui
permet, artificiellement, de pouvoir travailler avec des disques de plus grande capacit.
Cependant, comme nous lavons dit prcdemment, plus il y a de secteurs par cluster,
plus il y a de risque davoir une perte de place considrable. En diminuant le nombre de
secteurs par cluster, la perte est moindre. Ainsi pour une partition de 2Go, nous passons
de 64 secteurs par cluster en FAT16 8 secteurs par cluster en FAT32, on passe dune taille
de 32768 octets par cluster 4096 octets. La diffrence de perte est notable.
La FAT32 autorise lutilisation des noms longs pour les fichiers et les rpertoires. Cependant,
il a t conserv la notion de nom court (format 8.3) des fichiers et des rpertoires pour
garder une compatibilit avec les applications anciennes ne connaissant pas la notion de
noms longs. Comment les noms longs et les noms courts (format 8.3) sont-ils grs ?
Comme dans le cas de la FAT16, les clusters associs des rpertoires contiennent des entres
sur 32 octets pour chaque fichiers et sous-rpertoires contenus dans ceux-ci (voir le paragraphe sur la FAT16). Cependant, en FAT32, il existe deux sortes dentres, les entres nom
court ( short directory entry ) et les entres nom long ( long directory entry ).
Chaque entre nom court contient les informations dont nous avons dj parl pour
les entres de rpertoire de la FAT16. Ainsi, les 11 premiers octets contiennent la traduction du nom long, du fichier ou du rpertoire considr, en nom court, cest dire en
format 8.3 (cf le paragraphe concernant le nom des fichiers et des rpertoires avec MSDOS prcdemment dans ce support) et les autres octets contiennent la taille du fichier,
ses attributs (cach, systme, etc), le numro du cluster de dpart, les dates de cration,
de modification et de dernier accs.
Le nom long dun chier est morcel en fragments de 13 caractres qui sont ensuite placs
chacun dans une entre nom long . Les entres nom long associes un chier ou
un rpertoire sont places juste au dessus de lentre nom court de ce dernier.
Prenons un exemple avec un fichier de nom Nom de mon fichier.txt . A laide dun
utilitaire comme Winhex regardons le contenu des entres du rpertoire contenant
ce fichier. Le nom long est compos de 22 caractres car il faut compter le point comme
un caractre normal dans le cas des noms longs. Cela implique quil nous faut deux
entres nom long pour stocker ces caractres.
Remarque

Le nom court correspondant notre exemple est NOMDEM~1.TXT .

299
8 3999 TG PA 01

Squence 5

Voici les entres que nous pouvons observer pour notre exemple :

Les entres sont lire du bas vers le haut partir de lentre nom court . Ainsi, sur
notre capture dcran, nous trouvons lentre nom court avec les diffrentes informations spcifiques une entre de rpertoire, puis la premire entre nom long et
enfin la deuxime entre nom long .
Dune manire gnrale, voici le descriptif des 32 octets dune entre nom long :
Numro de loctet

Description

Les entres nom long sont places dans lordre de cration sachant
que lon ne peut stocker que 13 caractres par entre nom long .
Cet octet contient le numro dordre de lentre nom long . Petite
particularit, le bit n6 de cet octet est plac 1 lorsquil sagit de la
dernire entre nom long associe au fichier ou au rpertoire.
Dans notre exemple, nous pouvons observer que cet octet porte la
valeur hexadcimale 01 (soit 1 en dcimale) pour la premire entre
nom long et 42 pour la deuxime entre nom long . Si nous
traduisons en binaire la valeur hexadcimale 42, nous obtenons :
0100 0010. Le bit n6 est 1 donc il sagit de la deuxime et dernire
entre nom long associe au fichier. Rappel: les bits sont numrots
de droite gauche et partir de 0.

1 10
(soit 10 octets)

Les noms longs utilisent le codage UNICODE des caractres qui code
les caractres sur 2 octets. Ainsi 2 octets conscutifs correspondent
1 caractre. Nous avons une squence de 10 octets qui codent donc
5 caractres.

11

Il contient la valeur hexadcimale 0F indiquant quil sagit dune


entre nom long .

12 et 13
14 25
(soit 12 octets)
26 et 27
28 31
(soit 4 octets)

2 octets rservs.
Contient les 6 caractres suivant du nom long.
toujours 0
Contient les 2 caractres suivant du nom long. Nous arrivons donc un
total de 13 caractres pour lentre considre.

Traduisons les caractres de la premire entre nom long de notre exemple.


les processeurs Intel et compatibles inversent les octets lors de la lecture dun
mot (2 octets conscutifs), il faut donc en tenir compte pour trouver la correspondance entre un code UNICODE et le caractre associ.

300
8 3999 TG PA 01

Systme de gestion de fichiers

Traduisons les caractres de la deuxime et dernire entre nom long .

Remarque

La fin dun nom long est marqu par le caractre spcial NUL et les octets restants sont
complts par la valeur hexadcimale FFFF sauf, bien entendu, si la dernire entre nom
long est totalement remplie par 13 caractres.

1E.

Quelques mots sur NTFS


Avec la branche Windows NT et plus prcisment avec Windows NT4, Microsoft a mis en
place un nouveau type de systme de gestion de chiers de nom NTFS (New Technology File
System). Cest un systme plus complexe que le systme FAT qui permet, entre autre, de :
grer des quotas de disque dans le cas o plusieurs utilisateurs travaillent sur la
mme machine ;
compresser des fichiers et des rpertoires ;
mettre en oeuvre un suivi des transactions et la rcupration de fichiers grce la
mise en place d'un journal dans lequel chaque transaction est note ;
utiliser les caractres UNICODE pour le nom des fichiers et des rpertoires ;
crer des partitions de trs grande taille ;
dfinir des permissions d'accs aux rpertoires et aux fichiers ;
grer les noms longs.
Avec NTFS, la structure de donnes grant les clusters des fichiers utilise un systme sous
forme d'arbre et non un systme de liste chane ce qui permet d'acclrer les accs.
NTFS permet galement un administrateur d'appliquer des autorisations (des droits)
sur un fichier ou sur un rpertoire (dossier) un utilisateur ou un groupe d'utilisateurs.
Pour cela, il suffit, partir du poste de travail ou de l'explorateur de Windows, de cliquer
avec le bouton droit de la souris sur le nom du fichier ou du rpertoire (dossier) concern
puis prendre "Proprits" dans le menu contextuel et enfin cliquer l'onglet "Scurit"
dans la boite de dialogue qui apparat. Attention, si la partition, o se trouve le fichier
ou le dossier, est en FAT32, l'onglet "Scurit" n'apparatra pas.

301
8 3999 TG PA 01

Squence 5

Par dfaut, longlet Scurit nest pas visible en NTFS. Pour le faire apparatre, il faut

O aller dans le poste de travail, cliquer dans la barre de menu sur [Outils] [Options
des dossiers], dans longlet Affichage , et plus prcisment dans la rubrique
Paramtres avancs , dcochez loption Utiliser le partage de fichiers simple
(recommand) . Ensuite, refaites la manipulation dfinie prcdemment.

Ouvrons une petite parenthse par rapport Windows XP. Le fait davoir dcoch loption Utiliser le partage de fichiers simple (recommand) a une autre consquence.
Vous vous souvenez, la fin de la squence 3 sur Windows XP, nous avons parl des
dossiers partags. A ce moment l, nous avons indiqu que pour partager un dossier, il
fallait aller dans le poste de travail, faire un click-droit sur le dossier partager, prendre
[Partage et scurit] dans le menu contextuel puis cliquer longlet Partage . En fait,
en ayant dcoch loption prcdente, la boite de dialogue nest plus identique celle
que nous avons mis en avant ce moment l.
302
8 3999 TG PA 01

Systme de gestion de fichiers

Cette boite de dialogue permet toujours de donner un nom de partage mais elle permet
aussi dapporter des lments de scurit sur le partage comme le nombre de personnes
autorises se connecter simultanment sur le dossier partag mais galement donner
ou retirer des autorisations de lecture et de modification, du contenu du dossier partag,
certains utilisateurs ou certains groupes dutilisateurs. Cela se fait en cliquant sur le
bouton Autorisations de la boite de dialogue. Nous refermons la parenthse.
Remarque

Il existe un outil permettant de convertir une partition FAT en partition NTFS. Il sagit de
loutil convert fourni avec Windows.

Vous trouverez beaucoup dinformation sur le principe des partitions NTFS sur Internet
partir du mot cl NTFS . Attention, les explications ne sont pas toujours simples
car NTFS est plus complexe que les partitions FAT car il se compose de diffrentes types
dinformations permettant de rpondre aux besoins de rapidit, aux besoins de grer de
grosses partitions et de gros fichiers, aux besoins de scuriser les accs aux fichiers et aux
rpertoires mais galement aux besoins dviter les pertes de donnes.

303
8 3999 TG PA 01

Squence 5

1F.

Les systmes de gestion de fichiers de UNIX / LINUX


Voici un autre mcanisme de SGF assez accessible. Pour commencer, nous allons dcrire
le mcanisme gnral du systme de fichiers UNIX puis ensuite nous verrons les quelques
diffrences davec le systme ext2fs de Linux. Sous UNIX, le systme de fichiers se compose de 4 parties.

1. Le secteur de Boot contient ventuellement un court programme, le programme de


boot, permettant lamorage de lOS.
2. Le Superbloc : Il contient des informations sur le file system lui-mme, savoir:
La taille du "File System".
Le nom logique de la partition.
La taille de la table des "inodes" ("i-nodes"). Cette table peut galement tre appele la "ilist". Nous verrons dans la suite qu'un "inode" est en fait une structure de
donnes qui peut tre vue comme une entre de rpertoire dans le cas de la FAT
quelques nuances prs. La table des "inodes" contient donc l'ensemble des "inodes"
mis disposition du systme afin de grer les fichiers et les rpertoires.
Le numro du premier bloc de donnes libre.
Remarque

Un bloc est rapprocher de la notion de cluster. Il fait en moyenne 2048 octets.

La liste des blocs libres.


Le numro du premier "inode" libre.
La liste des "inodes" libres.
Les dates de la dernire modification, dernire sauvegarde.
La taille des blocs de donnes en octet.

3. La table des inodes appele galement la ilist : ce bloc contient un


ensemble de structures de donnes particulires appeles inode pour index node .
Un inode contient des informations sur un fichier ou un rpertoire donn sauf son
nom. Mais quelles sont les informations contenues dans un inode ? On y trouve :
Le type du fichier dcrit par le inode ( - pour un fichier ordinaire, d pour
un rpertoire, b : pour un fichier en mode bloc comme les fichiers lecteurs,
304
8 3999 TG PA 01

Systme de gestion de fichiers

c : pour les fichiers en mode caractre comme les fichiers imprimantes). Sous
UNIX, tout est vu comme un fichier mme un rpertoire.
Les droits d'accs (permissions UGO dont nous avons dj parl).
La taille du fichier.
Les UID et GID du propritaire.
Les Date / Heure de cration
Les Date / Heure de dernier accs
Un Compteur de lien
L'emplacement du fichier. En fait, il s'agit ici de reprer les blocs contenant les donnes associes au fichier ou au rpertoire considr. Il s'agit d'une liste de 13 numros de blocs. Voici la signification de ces 13 numros :
Les 10 premiers numros font rfrences des blocs contenant les donnes du
fichier ou du rpertoire. Si le fichier noccupe pas tous les numros de bloc, la
valeur est 0 pour les numros non utiliss.
Le 11e numro reprsente un numro de bloc qui contient des numros de blocs
de donnes (Un niveau dindirection).
Le 12e numro reprsente un numro de bloc qui contient des numros de blocs
contenant chacun des numros de blocs de donnes (Deux niveaux dindirection).
Le 13e numro reprsente un numro de bloc qui contient des numros de blocs
contenant chacun des numros de blocs contenant chacun des numros de blocs
de donnes (trois niveaux dindirection).
Schmatisons ce principe :

305
8 3999 TG PA 01

Squence 5

4. Les blocs de donnes : ces blocs contiennent soit les donnes dun fichier ou dun
rpertoire soit des numros dautres blocs dans le cas des indirections. Intressons
nous quelques instants au contenu des blocs de donnes associs un rpertoire. En
fait, ces blocs contiennent une liste dentres constitues dune association (Numro
de inode, nom de fichier ou de rpertoire) et ce pour chacun des fichiers ou des sousrpertoires contenus dans le rpertoire considr. Les deux premires entres sont
les rpertoires . et .. . Le numro de inode associ un nom de fichier ou de
rpertoire permet dindiquer quel inode situ, dans la table de inodes , contient le
reste des informations notamment les permissions et les numros de blocs de donnes
associs. Voici un exemple de bloc associ un rpertoire :

Maintenant voyons comment marche ce mcanisme. Pour cela, prenons un exemple.


Nous souhaitons trouver les blocs de donnes associs un fichier de nom MonFichier .
Comment allons-nous procder ?
Pour commencer, nous recherchons, lintrieur des blocs de donnes associs au rpertoire contenant le fichier de nom MonFichier , le numro dinode associ celui-ci. Une
fois que ce numro est repr, il ne nous reste plus qu nous rendre dans la table des inodes afin de consulter les informations de linode portant ce numro et nous obtenons ainsi
les numros des blocs de donnes du fichier MonFichier . Un schma ? Trs bien voil.

306
8 3999 TG PA 01

Systme de gestion de fichiers

Voil, le mcanisme est trs simple. Voyons ce qua ajout LINUX avec le systme de
fichiers ext2fs . Son fonctionnement de fond est le mme que ce que nous venons de
dcrire prcdemment. Voyons les ajouts. En fait, une partition est dcoupe en groupes
de blocs de mme taille. Lide des groupes de blocs est dviter que les blocs de donnes associs un fichier ou un rpertoire ne soient trop loigns les uns des autres afin
damliorer les performances de lOS. Chaque groupe de blocs se compose de six parties :
Le superbloc (voir prcdemment) ;
La liste des descripteurs de groupe contenant des informations sur chaque groupe
de blocs notamment leur localisation ;
La table d'tat d'allocation des blocs du groupe ;
La table d'tat d'allocation des inodes du groupe ;
La table des inodes (voir prcdemment) pour les inodes du groupe ;
Les blocs de donnes (voir prcdemment) du groupe.
Remarque

La table dtat dallocation des inodes du groupe reprsente une cartographie binaire des
inodes du groupe permettant ainsi de reprer lemplacement des inodes libres et des inodes
occups. Pour ce faire, chaque inode est repr dans la table par un bit. Ce bit vaut 0 si
linode considr est libre et 1 sil est occup. On parle parfois de table bitmap . La table
dtat dallocation des blocs du groupe fonctionne sur le mme principe permettant ainsi de
savoir o se trouvent les blocs libres et les blocs occups.
Cela nous donne

Le superbloc et la liste des descripteurs de groupe sont rpts au dbut de chaque


groupe car ce sont les lments importants sur la structure de la partition. En les dupliquant, il est toujours possible de rcuprer les informations ncessaires sur un autre
groupe de blocs.
Remarque

Le systme ext3fs qui est le successeur de ext2fs a apport, comme dans le cas de NTFS, la
journalisation des oprations effectues sur le file system mais fonctionne comme ext2fs.

307
8 3999 TG PA 01

Squence 5

2.

Implantation logique des donnes

2A.

Quelques remarques sur la notion de fichier


Dfinition : Un fichier est un ensemble de donnes structures stockes sur une
mmoire de masse (disque dur, disquette, bandes magntiques, etc ).
Les donnes se trouvant lintrieur dun fichier peuvent tre :
Structures en fiche (fiche client, fiche produit ). Chaque fiche se compose de
champs dfinis l'aide d'un langage de programmation (langage C, Visual Basic,
Delphi, etc) ou d'un logiciel de gestion de base de donnes. (SGBD). Un SGBD
(Systme de Gestion de Bases de Donnes) est, comme son nom l'indique, une application permettant de structurer et grer des donnes se rapportant un certain
domaine d'tude afin de pouvoir dans un deuxime temps faire des traitements
dessus. A la diffrence du langage C o le dveloppeur doit mettre en place tout le
code ncessaire pour traiter ses fiches, le SGBD contient de fait des fonctionnalits
prvues cet effet. Dans les SGBD, on trouve Access, Oracle, Informix, MySQL, SQL
Server ; etc.
Une succession de donnes de diffrentes natures. Ces dernires peuvent permettre
de mmoriser des donnes de configuration comme pour un pilote de priphrique
par exemple ou pour un matriel quelconque comme un robot de fabrication dans
une usine. Attention, il faut obligatoirement connatre l'ordre d'criture des donnes afin de pouvoir les relire dans le mme ordre par la suite. Nous ne pouvons
pas, et nous ne devons pas, lire une donne de type "entier" si la donne lire dans
le fichier est de type "caractre". Pourquoi ? En fait, le systme lit ou crit dans le
fichier un certain nombre d'octets qui dpendent de la nature de l'information
lue ou crite. Si je dois lire une valeur numrique code sur deux octets et que le
programme lit un caractre qui lui est cod sur un octet, le systme va lire un seul
octet au lieu de deux. Le deuxime octet non lu sera lu lors de la prochaine lecture
de donnes et donc il sera associ avec un ou plusieurs octets qui n'ont aucun lien
avec lui. Les informations rcupres seront errones dans ce cas.
Structures en caractres (Fichier texte) ou en valeurs numriques (fichier de mesures chimiques ou de relevs mto). Ce type de fichier contient un ensemble de
donnes de nature unique.
En conclusion, Il est impossible de trouver un fichier contenant des informations places
dans un ordre quelconque car pour accder aux donnes, il faut pouvoir les lire dans le
mme ordre que lordre dcriture. Cela ncessite de toujours connatre la structure dun
fichier avant de lutiliser, ou du moins, savoir comment localiser les donnes lintrieur.

2B.

Les diffrents modes dorganisation internes des fichiers


Lorganisation dtermine la faon dont les enregistrements sont stocks et retrouvs
dans le fichier. Elle est choisie par le programmeur au moment de la conception de lapplication et elle est gre par lapplication en collaboration avec le systme dexploitation. Un fichier ne change pas dorganisation au cours de sa vie.
Pour accder aux donnes contenues dans un chier, il existe diffrentes mthodes que
nous allons maintenant mettre en avant.

308
8 3999 TG PA 01

Systme de gestion de fichiers

2B1. Les fichiers accs squentiel


Dfinition : un fichier accs squentiel est un fichier dans lequel on ne peut lire
une donne ou un enregistrement (une fiche) quaprs avoir lu les donnes ou les
enregistrements prcdents.
Exemple : une bande vido est accs squentiel. En effet, on ne peut visualiser une
squence dun film quaprs avoir fait dfiler les squences prcdentes.
Avantage : Ce mode daccs autorise des enregistrements de tailles diffrentes. En
effet, tout le monde na pas un nom ayant la mme longueur (mme chose pour une
adresse ou un nom de ville). Cette organisation permet de prendre uniquement la place
ncessaire dans le fichier. Au niveau des langages de programmation, les diffrentes
donnes des champs dune fiche seront dlimites par des guillemets ou spares par
une virgule ou une tabulation. Cela permet au programme, lors dune opration de
lecture, de savoir o commence linformation dun champ dune fiche et o elle se termine. De mme, chaque fiche est spare de la suivante par un retour chariot. Le mode
squentiel implique un dplacement dans le fichier donne par donne et non pas fiche
par fiche car ces dernires sont de tailles diffrentes.
Exemple : Voici un fichier squentiel grant des employs avec le Nom, Prnom, Age,
Salaire
"TARTEMPION","Albert",30,3000
"DUPOND","Albert",25,1700
"TARLOWSKI","Alain",35,1800
"TARLOWSKI","Maxence",25,1600
"TARLOWSKI","Valentin",23,1500
"TARLOWSKI","Clment",19,1400
Inconvnients :
Nous ne pouvons pas nous placer directement sur une donne. Il faut lire les prcdentes avant.
L'ajout de donnes se fait forcment en fin de fichier.
Les mises jour de donnes ncessitent gnralement la r-criture complte du
fichier puisque nous prenons uniquement la place ncessaire. Ainsi si l'information
mise jour est plus longue ou plus petite cela pose un problme surtout dans le
premier cas. En effet, il est impensable de dcaler des donnes vers le haut ou vers
le bas dans un fichier accs squentiel puisque l'on ne peut se positionner un
endroit du fichier qu'en faisant chaque fois un dplacement depuis le dbut. Cela
ncessiterait une succession de dplacements impensables.

2B2. Les fichiers accs direct


Dfinition : un fichier accs direct est un fichier dans lequel chaque enregistrement a toujours la mme taille et porte un numro relatif son emplacement dans
le fichier. Cela autorise un accs direct la fiche souhaite grce ce numro.
En fait, le fichier est dcoup en lments de mme taille ce qui permet un dplacement
direct sur une fiche donne en calculant le nombre doctets qui sparent cette fiche du
dbut du fichier. Cela est rendu possible par le fait que nous connaissons la taille des
lments prcdents.
Inconvnient : comme toutes les ches ont toujours la mme taille, cela implique que
certains champs contiennent des donnes noccupant pas tout lespace disponible. Nous
avons donc de lespace perdu.
309
8 3999 TG PA 01

Squence 5

Avantage : le temps daccs aux informations souhaites est rduit car nous nous
positionnons directement sur la che souhaite. De plus une mise jour peut se faire
directement dans le chier en cours car comme une che prend toujours toute la place
qui lui est attribue, mme si les donnes quelle contient sont plus courtes que la taille
attribue, il ne sera jamais ncessaire de dcaler les ches suivantes.
Remarque

Avec ce mode daccs, pour supprimer une fiche, il est possible de ne pas la retirer physiquement du fichier mais simplement de la marquer comme tant supprime en remplaant
la valeur de lun des champs par un caractre particulier. Cela permet de rcuprer ultrieurement cet emplacement pour une nouvelle fiche. Cette stratgie doptimisation est rendue
possible par le fait que lon remplace une fiche par une fiche de la mme taille.

2B3. Les fichiers en mode squentiel index


Dfinition : un fichier en mode squentiel index est un fichier de donnes auquel on
associe un autre fichier appel index , construit partir de certains champs des
enregistrements du fichier de donnes principal. Ce fichier index est toujours tri.
Cela offre deux possibilits pour accder aux donnes soit squentiellement sur le
fichier de donnes lui-mme soit en mode direct par lintermdiaire de lindex.
Cette organisation permet un accs rapide aux donnes car le fichier Index de petite
taille est toujours tri par rapport un ou plusieurs champs des enregistrements du
fichier principal. Ces derniers sont appels les champs dindex.
Un fichier dindex se compose de deux parties :
Les champs d'index
La localisation de la fiche dans le fichier principal. En fait, il s'agit de son numro de
fiche relatif son emplacement dans le fichier.
Exemple : Nous allons mettre en place un index sur les champs Nom + Prnom

Dans notre exemple, lindex est tri par rapport aux champs Nom+Prnom . Pour chaque valeur dindex, on mmorise la position de la fiche correspondante dans le fichier

310
8 3999 TG PA 01

Systme de gestion de fichiers

de donnes.
dans le fichier de donnes les informations seront toujours places dans lordre de

O saisie et cela ne changera jamais car trier ce genre de fichier peut prendre beaucoup
de temps alors que conserver un fichier dindex tri est plus simple. Il y a moins
dinformation trier.
Remarque

Pour rechercher une fiche, il faut consulter dabord les fichiers dindex pour trouver dune
manire optimise le numro de la fiche souhaite. Puis nous nous positionnons sur la fiche
dans le fichier de donnes. Cette action est ainsi moins performante que dans le cas des
fichiers accs direct car il faut passer par une structure intermdiaire mais le problme
est compens par le fait que le fichier dindex est tri.
Quelles cls choisir ? En fait, le choix des champs est important. Seuls les champs qui
contiennent des donnes susceptibles dtre utilises pour accder aux enregistrements
seront ventuellement indexs. Il ne faut pas indexer tous les champs car cela engendre
de nombreux fichiers dindex ce qui nest pas forcment mieux.
Un index peut admettre des doublons ou non. Un index sans doublon interdit la prsence
de plusieurs enregistrements portant un mme valeur dindex.

311
8 3999 TG PA 01

Вам также может понравиться