Vous êtes sur la page 1sur 189

Systme dexploitation Open Source

Wassima AKHRIF wakhrif11@gmail.com

Contenu du cours
Prsentation de Linux. Commandes de base. Administration des utilisateurs et des groupes. Les droits daccs. Les packages. Gestion du rseau. Les scripts Linux

Sommaire:
1 2

Introduction Partitionement disque Dure

INTRODUCTION
Rappel Systme Dexploitation

Dfinition dun systme dexploitation: Un systme dexploitation est un ensemble de programmes qui coordonnent le fonctionnement des diffrents composants matriels et logiciels dun systme informatique. Exemple de OS: Windows, Unix, Mac OS, Ms Dos

INTRODUCTION
Quest quun logiciel Libre

Un programme informatique, que ce soit un noyau ou un logiciel, est constitu de nombreuses lignes de code, crites dans un langage de programmation (le langage C dans le cas du noyau Linux). Ce code n'est gnralement pas utilisable en tant que tel. Il faut passer par la phase de compilation qui transforme le code source en programme excutable, souvent appel binaire. Il suffit d'avoir le binaire pour utiliser le programme. Quand on achte un logiciel (Microsoft Office par exemple) ou un systme d'exploitation (Windows par exemple), on a un CD qui contient le binaire, mais pas les sources. Il est donc impossible de savoir comment le programme est conu. Par consquent, on ne peut pas modifier le programme. On peut seulement l'utiliser et ventuellement le copier l'identique.

INTRODUCTION
logiciel Libre / logiciel propritaire

Les logiciels propritaires sont donc les logiciels dont une licence, souvent payante, ne donne qu'un droit limit d'utilisation. On n'a la plupart du temps accs qu'aux binaires de ces logiciels. Certains logiciels propritaires sont gratuits, on les appelle alors des freewares. (Windows est un OS propritaire dont le code source est jalousement gard par Microsoft. Imaginez que c'est un peu comme le Coca-Cola : personne ne connat la recette de fabrication (y'a bien des gens qui essaient d'imiter, mais bon ). On ne peut donc pas le modifier ou regarder comment il fonctionne l'intrieur.) Les logiciels libres sont les logiciels que l'ont peut librement utiliser, changer, tudier et redistribuer. Cela implique que l'on ait accs leur code source (d'o le terme quivalent OpenSource).

INTRODUCTION
Historique

UNIX est un systme d'exploitation, cr en 1969 par Ken Thompson et Dennis Ritchie. Sa conception a t particulirement soigne, et apportait plusieurs innovations, notamment le choix d'utiliser plusieurs outils simples et spcialiss, plutt que des logiciels complexes tout faire.Il est l'un des systmes d'exploitation les plus populaires au monde, en raison du grand nombre d'architectures qu'il supporte . Project GNU: est un project lanc par Richard Stallman, un chercheur du MIT. Le but est de dvellopper un OS complet, libre et qui se base sur Unix afin de contrer le dvellopement croissant des logiciels propriaitaires( le prix Unix devenait de plus en plus payant). Cependant, en 1991, le projet GNU n'avait toujours pas de noyau et tournait sur des Unix propritaires.(Stallman avait crer les programmes de base:(programme de copie de fichier, suppression de fichier, diteur de texte).

INTRODUCTION
Historique

En 1991, Linus Torvalds, un tudiant de luniversit de Helsinki, dveloppe un noyau en s'inspirant des principes du systme d'exploitation UNIX. Le OS prend le nom de Linux ( en rfrence son crateur). Project LINUX

Project GNU

GNU/LINUX Le projet GNU (programmes libres) et Linux (noyau d'OS) ont fusionn pour crer GNU/Linux.

INTRODUCTION
Historique

Le projet GNU (programmes libres) et Linux (noyau d'OS) ont fusionn pour crer GNU/Linux.

INTRODUCTION
Les distributions de Linux

Il existe une trs grande varit de distributions, ayant chacune des objectifs et une philosophie particulire. Les lments diffrenciant principalement les distributions sont : la convivialit (facilit de mise en uvre). l'intgration (taille du parc de logiciels valids distribus). la notorit (communaut informative pour rsoudre les problmes), l'environnement de bureau (Gnome, KDE, ...). Le point commun est le noyau ( kernel) et un certain nombre de commandes.

INTRODUCTION
Les distributions Commerciales

Il Red Hat: http://www.redhat.com/ La plus populaire. Fiable, sre, conviviale et facile installer, prise en charge par tous les fournisseurs de logiciel et de matriel. Suse (Novell): http://www.suse.com/ L'alternative principale. Facile installer, conviviale et stable. Obtiens le support des fournisseurs de logiciel et de matriel. Mandriva (anciennement Mandrake): http://mandrivalinux.com/ Conviviale, facile installer, plus innovante, mais moins stable. Cible principalement les utilisateurs individuels. Peu pris en charge par les fournisseurs de logiciel et de

INTRODUCTION
Les distributions Commerciales

Fedora Core: http://fedora.redhat.com/ Stable, sre, conviviale, facile installer. Sortie frquente de nouvelles versions compltes. Ubuntu Linux: http://ubuntu-linux.org/ La distribution communautaire qui progresse le plus. Bas sur Debian mais avec une version stable tout les 6 mois. Conviviale pour les utilisateurs. Bonne pour les dbutants. Debian: http://debian.org/ Trs stable et sre, mais plus difficile configurer et installer. Conviviale pour les dveloppeurs mais pas encore pour les utilisateurs. Version stables pas assez frquentes (tous les 2 ou 3 ans). La meilleure pour les serveurs, mais pas pour les dbutants. Mandriva Community: http://mandrivalinux.com/ Facile installer, sre, conviviale, sortie frquente de versions compltes, mais moins stable (pas assez de tests et de prise en compte des retours des utilisateurs et testeurs)..

PARTITIONEMENT DISQUE DURE


Systmes de fichiers

Systmes de fichiers: cest une selon un certain format.

subdivision du disque dur

Systmes de fichiers Linux


Ext2 : c'est le systme de fichiers qui a longtemps t utilis sous Linux. Il a t dvelopp par un franais (Rmy Card) et prsente la particularit de ne pas se fragmenter. Ainsi, sous Linux et depuis longtemps, il n'y a pas besoin de faire de dfragmentation. Ext3 : l'ext3 est trs proche de l'ext2, une diffrence majeure prs, la journalisation. En effet, ext2 n'tait pas journalis, et en cas de crash disque on risquait plus facilement une perte de donnes. Ce n'est plus le cas avec l'ext3. Concrtement, un systme de fichiers journalis enregistre dans un journal (une sorte de mmoire tampon) ce qui doit tre crit sur le disque dur. Au cas dun crash disque , il va vrifier le contenu du journal, si celui ci est plein, il va le transfrer dans le disque dur- donc evite la perte de donnes. A noter que l'ext2 et l'ext3 sont parfaitement compatibles entre eux, dans un sens comme dans l'autre.

PARTITIONEMENT DISQUE DURE


Systmes de fichiers sous Linux

SWAP: Cette partition permet dtendre la mmoire virtuelle. Si il ny a plus assez de mmoire vive (RAM), le noyau indiquera aux diffrents programmes en cours dexecution dutiliser la Swap la place de la RAM

PARTITIONEMENT DISQUE DURE


Appellation des disques Dures

Lappellation " la Linux" est un peu plus complexe que celle de Windows. C: D: E: hda hdb hdc sda

Windows

Linux

PARTITIONEMENT DISQUE DURE Appellation des disques Dures

Lappellation " la Linux" est un peu plus complexe que celle de Windows.

hd[a-d] #
h : la premire lettre indique si le disque est de type IDE ou SCSI (un type de connexion diffrent la carte mre). Si c'est une IDE, la lettre est un h, si c'est un SCSI (ou un S-ATA), la lettre est un s. d :cette lettre ne change pas ( drive). [a-d] :indique les differents disques durs ,cest a,b,c ou d. hda: 1er disque dur/ hdb: 2me disque dur/hdc le 3me . # :est un numro qui permet de numroter les partition. exemple: hda1: 1er partition hda hdb10: 10me partition hdb

INSTALLATION DE FEDORA

Les phases principales de linstallation dune machines Gnu/Linux sont les suivantes :
1. 2. 3. 4. 5. 6. 7. 8. Amorage de linstallation Partitionnement du disque dur Installation du chargeur de boot Configuration du rseau Dtermination du fuseau horaire Initialisation du mot de passe root Choix et installations des logiciels Paramtrages post-installation

INSTALLATION DE FEDORA
Vrification du disque Commenons par insrer le DVD dans le lecteur et redmarrer le PC. Ce dernier va alors booter partir du DVD et va afficher lcran daccueil de linstallation de Li-nux qui contient les options suivantes : Install or upgrade an existing system : cest loption par dfaut. Elle permet dinstaller ou mettre jours le systme existant en mode graphique. Install or upgrade an existing system (text mode) : dans le cas ou vous avez un problme avec votre carte graphi-que, vous pouvez utiliser cette option pour une installation/mise jour en mode textuel. Rescue installed system : cette option peut tre utile pour rparer un systme dj install. Boot from local drive : cette option permet de dmarrer le PC depuis le mdia local. Si au bout de 60 secondes aucune touche nest tape, le systme va choisir automatiquement loption par dfaut (installation en mode standard). Pour procder linstallation, tapez entrer. Vous pouvez aussi, si vous voulez, procder linstallation en mode textuel (option 2). Le systme va alors charger le programme dinstallation de Linux en mmoire et vous demande de tester lin-tgrit du mdia dinstallation. Le systme va ensuite afficher une b-ite de dialogue de bienvenue. Deux interfaces classiques vont ensuite vous demander de choisir la langue et le type du clavier.

INSTALLATION DE FEDORA
Vrification du disque

21

Installation de Fedora
Choix du partitionnement
Lassistant vous propose le choix entre un partitionnement automatique et un partitionnement manuel

Le partitionnement par dfaut va adopter la structure suivante :

 /boot : partition sur laquelle sont installes les informations ncessaires au dmarrage,  / : partition sur laquelle est installe le systme,  SWAP : partition dont le systme se sert pour dcharger la mmoire (RAM) lorsqu'elle atteint un certain niveau.

INSTALLATION DE FEDORA
Vrification du disque

Le partitionnement personnalis, o vous pouvez choisir les partitions que vous souhaitez crer/formater/supprimer.

 /boot partition sur laquelle va se lancer Fedora (Optez pour une taille d'environs 100Mo): (partitiontion o sont install les informations ncessaires au dmarrage).  / partition sur laquelle est installe le systme. Variez la taille de cette partition en fonction de votre disque dur mais sachez qu'une installation complte du DVD/CD prendra environ 9 Go.  SWAP partition qui permettra dallger la mmoire vive son dimensionnement suit la rgle 2n*RAM pour des machines taille mmoire jusqu3 Go.  /home Partition sur laquelle sont conserves les donnes de l'ensemble des utilisateurs.

INSTALLATION DE FEDORA
Installation du GRUB

GRUB (Grant Unified Boot loader). GRUB est ce quon appelle un chargeur de dmarrage, en dautres termes un programme qui permet de choisir et de lancer un systme dexploitation. Si vous navez quun seul disque, a priori, les options par dfauts conviennent. L'installation du chargeur de demarrage. C'est une tape importante, donc soyez prudents avec ce que vous faites. GRUB sert lancer le systme, c'est lui qui va vous demander de choisir entre Fedora et Windows par exemple, ou entre diffrentes version de Fedora. Je vous conseille de laissez les options par dfaut puis continuez.

INSTALLATION DE FEDORA
Configurer le Rseau

Lassistant dinstallation dtecte toutes les cartes rseau de la machine. Par dfaut lassistant propose une configuration par DHCP des interfaces. votre carte rseaux est dtecte et configure automatiquement. Laissez les paramtres par dfaut et validez.

INSTALLATION DE FEDORA
Configurer le Rseau

Pour configurer manuellement une interface il suffit de la slectionner et de cliquer sur le bouton Editer . Le nom de la machine est aussi configurable manuellement ainsi que La passerelle par dfaut et les serveurs DNS.

INSTALLATION DE FEDORA
Configurer le fuseau horaire

Il suffit tout simplement de pointer sur votre zone gographique sur carte du globe prsente.

Une fois pointe dessus Casablanca/Maroc est affich sur le rectangle

INSTALLATION DE FEDORA
Choix du mot de passe Root

Ltape suivante permet dattribuer un mot de passe lutilisateur de la machine dau moins 6 caractres.

root

Lutilisateur root est un super utilisateur qui sert administrer le systme, son usage doit tre rserv des cas bien particuliers car cet utilisateur possde les pleins pouvoirs sur lensemble de votre systme. utiliser des combinaisons de majuscules, miniscules, chiffres, caractres spciaux Nutiliser pas des mots et des noms

INSTALLATION DE FEDORA
Recommandation choix du mot de passe

il doit possder au moins 7 caractres et contenir au moins une lettre majuscule, un chiffre et un caractre de ponctuation. il ne doit pas contenir des donnes relatives votre identit comme votre nom dutilisateur. il ne doit pas appartenir des dictionnaires. il ne doit pas contenir des rptitions de caractre. il doit tre suffisamment simple pour sen rappeler

INSTALLATION DE FEDORA
Slection des logiciels installer

L'cran Paramtres par dfaut de l'installation de paquets apparat et dtaille l'ensemble de paquets par dfaut dfinis pour votre installation de Fedora. L'installation de Fedora pr-slectionne les logiciels les plus adapts une utilisation de type station de travail. Pour ajouter ou supprimer d'autres logiciels, slectionnez les lments appropris depuis la liste .

pour avoir plus de choix de logiciels intgrer lors de linstallation

30

Installation de Fedora
Raliser des oprations de Post-installation Aprs la fin de linstallation et du redmarrage de la machine un assistant De 1er dmarrage apparat pour ajuster certains paramtres
Licence : Demande la confirmation dacceptation des termes de licence du produit. Pare-feu : Permet au root dactiver le firewall sur certains services ( web, mail, ftp, nfs SELinux : Il sagit de lactivation dun mcanisme de renforcement de scurit au niveau des accs aux programmes et applications Date et Heure : Permet de synchroniser votre machine avec un serveur de temps Ajouter un utilisateur : Jusqu prsent le seul utilisateur dclar au niveau De la machine est le root , cette tape vous permet de rajouter dautres utilisateurs. Carte son : Permet de configurer votre carte son

INSTALLATION DE FEDORA
Page dacceuil de lassistant de 1re configuration

Apres la fin de linstallation et du redmarrage de la machine un assistant de 1er dmarrage apparat pour ajuster certains paramtres.

INSTALLATION DE FEDORA
Page dacceuil de lassistant de 1re configuration

Licence : Demande la confirmation dacceptation des termes de licence du produit. Pare-feu : Permet au root dactiver le firewall sur certains services ( web, mail, ftp, nfs SELinux (Security Enhanced Linux) : Il sagit de lactivation dun mcanisme de renforcement de scurit au niveau des accs aux programmes et applications. Date et Heure : Permet de synchroniser votre machine avec un serveur de temps. Ajouter un utilisateur : Jusqu prsent le seul utilisateur dclar au niveau de la machine est le root , cette tape vous permet de rajouter dautres utilisateurs. Carte son : Permet de configurer votre carte son.

INSTALLATION DE FEDORA
Mise jour post installation Une fois votre distribution Gnu/Linux oprationnelle, vous pourrez votre choix installer les diffrentes mises jour des diffrents paquetage installs. Les mises jour peuvent se faire manuellement par lutilisateur en tlchargeant les nouvelles versions des paquetages et les installer par la suite. Sinon chaque distribution dispose de son propre systme de mise jour automatique configurable graphiquement ou lanc par ligne de commandes.

La distribution Fedora dispose du systme yum . Yum permet linstallation, la suppression et la mise jour de vos programmes ainsi que du systme dexploitation. Si par contre votre systme automatique de mise jour nest pas actif, vous Pouvez toujours lancer la mise jour manuellement : Soit en mode graphique en choisissant : Applications Outils Systme Mise jour logiciels Soit en mode console par le biais de la commande : su c 'yum update ; saisissez le mot de passe root quand le systme vous le demande ????

Connexion au systme

INSTALLATION DE FEDORA
Prsentation du KDE KDE ( Kool ou kommon Desktop Environment) est un puissant environnement graphique de bureau. KDE :est un bureau graphique bas sur X-Window. Il se compose dun ensemble doutils vous permettant dexploiter graphiquement votre ordinateur: gestionnaire de fentres,bureau,gestionnaire de fichiers ,menu,espaces de travail virtuels Il existe d'autres alternatives de bureaux graphiques comme GNOME (Gnu Network Object Model. Le KDE propose: Un bureau (Desktop). Une barre de tches (tableau de bord, commande"kicker"). Un gestionnaire de fichiers (commande "konqueror").  Un gestionnaire de configuration (commande "kcontrol"). konqueror permet une gestion de fichiers plus convivial que les lignes de commandes et peut tre galement utilis comme navigateur internet

INSTALLATION DE FEDORA
Prsentation KDE

FONCTIONEMENT DE BASE LINUX

NOTIONS DE SHELL

Le shell est un programme qui va faire le lien entre le noyau UNIX et l'utilisateur = interprteur de commandes interactif Le shell est un interprteur de commandes qui invite lutilisateur saisir une commande et la fait ensuite excuter

invite ("prompt")

le shell est prt recevoir des commandes rentres au clavier

LINVITE DE COMMANDES
P

pippo@localhost :~$
pippo : le premier lment est votre pseudonyme. localhost : a c'est le nom de l'ordinateur sur lequel vous tes en train de travailler. La ligne d'invite de commandes se lit donc pippo chez localhost . En d'autres termes, je suis identifi en tant que pippo sur la machine localhost. : : c'est un sparateur. ~ :c'est le dossier dans lequel vous vous trouvez actuellement., le symbole ~ signifie que vous tes dans votre dossier personnel, ce qu'on appelle le "Home" sous Linux. C'est l'quivalent du dossier "Mes documents" de Windows. $ : ce dernier symbole est trs important, il indique votre niveau d'autorisation sur la machine. Il peut prendre 2 formes diffrentes : $ : signifie que vous tes en train d'utiliser un compte utilisateur "normal", # : signifie que vous tes en mode super-utilisateur,

LINVITE DE COMMANDES
Invite de commande suivie de la commande que jai tape ls Rponse de lordinateur cette commande

pippo@localhost :~$ ls Desktop Examples Images

Cela signifie que le rpertoire actuel est constitu de 3 dossiers : Desktop Examples et Images. En gnral, le systme colore les lments pour que l'on puisse distinguer facilement les dossiers des fichiers. Si vous n'avez aucune rponse, c'est que vous tes dans un dossier qui ne contient aucun fichier ou dossier.

LES PARAMETRES
P Les paramtres sont des options que l'on crit la suite de la commande.

pippo@localhost :~$ Commande Paramtre


Exemples de paramtres:

pippo@localhost :~$ ls -a

HISTORIQUE DES COMMANDES


P Pour retrouver les commandes quon a dj tap, sans devoir les rcrire nouveau, on utilise les flches haut ( ) ou ( ) de notre clavier.

Si on dsire remonter des commandes qui remontent trs longtemps, inutile de se forcer taper sur la flche haut pour arriver la commande souhaiter. Dans ce cas, on utilise la commande history .

Raccourcis Utiles
P  : Effacer le contenu de la console .

 :Message EOF( fin de fichier) la console( possde la mme fonction que la commande exit .     :Ramne le curseur au dbut de la commande. :Supprime tout ce qui est gauche du curseur. :Supprime tout ce qui est droite du curseur. :Supprime le dernier mots situ gauche du curseur.

Organisation des dossiers


La racine
un "gros dossier de base qui contient tous les autres dossiers et fichiers". Sous Windows, il y a en fait plusieurs racines. "C:\" est la racine de votre disque dur Sous Linux, il n'y a qu'une et une seule racine : "/".

Architecture des dossiers


Sous Windows, un dossier peut tre reprsent comme ceci : "C:\Program Files\Winzip". il n'y a pas de "C:" sous Linux, la racine (le dbut) s'appelant juste "/".

ARBORESCENCES DES FICHIERS

Le systme de fichiers sur Linux est similaire ce que l'on retrouve dans Windows, i.e. une structure hirarchique dont une racine et des rpertoires qui s'y rattachent. Contrairement au systme MS-DOS, qui contient plusieurs racine :A: ,C: ,D: , Sous Linux, il y a une seule racine (root) :le slash "/" . Par exemple, Le CD-ROM est atteint par le rpertoire /cdrom. Chaque Utilisateur possde un rpertoire, dit de connexion (home directory),ou il peut agir en toute libert et y crer sa propre arborescence, par exemple: /home/mehdi/

ARBORESCENCES DES FICHIERS


/ ( root)

bin dev home tmp root lib var

Plusieurs rpertoire sont rattach la racine. pippo mehdi

ARBORESCENCES DES FICHIERS


/ : Rpertoire Racine: contient les rpertoires principaux. /bin : (Commande de base du systme) (contient des xecutables essentiels au systme, employs par tous les utilisateurs ( par exemple, les commandes ls,rm,cp,chmod,mount, ).  /etc :(contient les commandes et les fichiers ncessaires ladministrateur du sytme (fichiers passwd,group,inittab,ld.so.conf,lilo.conf)/ fichiers de configuration de lordinateur. / boot: (Images, initrd et fichiers de configuration du noyau) ( contient les fichires permettant Linux de dmarrer). / dev : (contient les points dentre des priphriques)  /lib: (contient des bibliothques partages essentielles au systme lors du dmarrage)/bibliotques de base du systmes ( partages)  /mnt : (contient les points de montage des partitions temporaires(cdrom,disquette): /mnt/usbdisk/, /mnt/windows/ /opt: (contient des pakages dapplications supplmentaires)/ ( outils spcifiques installs par ladministrateur.

ARBORESCENCES DES FICHIERS

/root: (rpertoire de ladministrateur root) /tmp: (contient les fichiers temporaires) /usr: (Hirarchie secondaire)/ programmes utilisateurs ordinaires, non essentiels au systmes: /usr/lib, /usr/bin /sbin: (contient les binaires systme essentiels (par exemple la commande adduser)/programmes dadministration du systme./ commandes rserves ladministarteur. /home: (dossiers de travail des utilisateurs. Ex:/home/pippo)/ Rpertoire utilisateur /var: (donnes variables( dynamiques)

ARRET ET REDEMARRAGE DU SYSTEME

halt : permet darrter le systme.

Reboot : permet de redmarrer le systme.

Larrt du systme est une opration qui est du ressort de ladministrateur. On peut la realiser uniquement sur le compte root.

Il est galment possible que votre gestionnaire de bureau vous donne le moyen darrter lordinateur par lintermediare de linterface graphique.

COMMANDES DE BASES : Rprtoires Commande ls


La commande ls ( list): Affiche la liste des fichiers dans le rpertoire courant, en ordre alphanumrique, sauf ceux qui commencent par le caractre . ( sauf les fichiers cachs) pour cacher un fichier sous linux, on le prcde dun . ) ls [options] [noms]
noms du ficher quon veut lister. Si ce paramtre est absent, ls affichera les fichiers du rpertoire courant.

Exemple : ls -l

/home/pippo

Commande options noms

COMMANDES DE BASES : Rpertoires Commande ls


Les principales options:  ls -a ( all: tous) Affiche tous les fichiers (y compris les fichiers .*)  ls -l (long) Affichage en format long (type, date, taille, propritaire, permissions)  ls -t (temps) Affiche les fichiers les plus rcents en premier.  ls -d (directory) Affiche du nom du rpertoire et non de son contenu. ls -S (size: taille) Affiche les fichiers les gros en premier.  ls -r ( reverse: invers) Affiche en ordre inverse.  ls -ltr (les options peuvent tre combines) Format long, les fichiers les plus rcents la fin.  ls -h: afficher la taille en Ko, Mo, Go...

COMMANDES DE BASES : Rpertoires Commande cd


La commande cd( change directory) permet de changer le rpertoire de travail . ( permet de naviguer dans les rpertoires) cd [rperoire] Exemple :
Si rpertoire nest pas prcis, alors le nouveau rpertoire sera le rpertoire de connexion ($ home)( home cest votre dossier personnel).

Si on veut se positioner dans le rpertoire /etc, on fera ceci: pippo@localhost :~$ cd /etc pippo@localhost :/etc$

COMMANDES DE BASES : Rprtoires Commande cd

 cd ou cd $home: Permet de se placer dans le rpertoire personnel de lutilisateur (home)  cd.. : Ramne dans le rpertoire parent.( remonter dun rpertoire dans larborescence)  cd rep : va dans le rpertoire rep partir du rpertoire o vous tes.

cd /usr/bin: A va dans le rpertoire bin en crivant tout larboresence.  cd - : une bonne astuce pour revenir dans le rpertoire do vous veniez prcdemment.

COMMANDES DE BASES : Rprtoires Commande cd


Remarque: La commande cd, comme toutes les commandes utilisant des rpertoires, permet de spcifier deux types de chemins: Les chemins Relatifs: dpendent du dossier auquel vous vous trouvez, et utilisent notamment le rpertoire '..' (rpertoire pre). Exemple:cd ../. Les chemins Absolus: ils faut spcifier toute larborescence depuis la racine . Exemple: cd /home/rep1 Les chemins absolus commenent toujours par la racine (/). Vous devez faire ensuite la liste des dossiers dans lequels vous voulez entrer.

Oprations de base sur les rpertoires


Les chemins relatifs :Un chemin relatif est un chemin qui dpend du dossier dans lequel vous vous trouvez.

Oprations de base sur les rpertoires

Oprations de base sur les rpertoires

Oprations de base sur les rpertoires


Les chemins absolus :
les chemins absolus fonctionnent quel que soit le dossier dans lequel on se trouve. Un chemin absolu est facile reconnatre : il commence toujours par la racine (/). Vous devez faire ensuite la liste des dossiers dans lesquels vous voulez entrer. Par exemple, supposons que je sois dans /home/mateo21 et que je souhaite aller dans /usr/games. Avec un chemin absolu :

Oprations de base sur les rpertoires


Les chemins absolus :

Oprations de base sur les rpertoires


Les chemins absolus et chemins Relatifs:
Si on voulait utiliser le chemin relatifs, il aurait fallut quon crive:

Oprations de base sur les rpertoires


Les chemins absolus et chemins Relatifs:

Ici, comme c'est un chemin relatif, on part du dossier dans lequel on se trouve (/home/mateo21) et on indique la machine le chemin suivre partir de l pour aller dans le dossier qu'on veut.

Oprations de base sur les rpertoires


Retour au Repertoire home:
Si vous voulez retourner dans votre rpertoire home personnel, plusieurs solutions s'offrent vous :

il suffit d'crire le chemin absolu en entier.

COMMANDES DE BASES : Rpertoires Commande pwd


La commande pwd (print working directory): Affiche le rpertoire courant ("rpertoire de travail ) pwd
La commande pwd naccepte pas doption.

Exemple : pippo@localhost :~$ pwd /usr/lib/news/bin pippo@localhost :~$cd .. pwd /usr/lib/news

La commande pwd): peut etre utilise lorsquon dsire obtenir un chemin absolu sur le rpertoire courant. Cette commande est galement utilise par les scripts pour dterminer le rpertoire partir duquel ils sont excuts.

COMMANDES DE BASES : Rpertoires Commande du


La commande du (disk usage utilisation du disque ) : Affiche les informations sur la taille quoccupe les dossiers sur votre disque. Exemple : pippo@localhost :~$ cd /usr/news pippo@localhost : /usr/news$ du

 du -h :Affiche la taille en Ko, Mo, Go.  du a : (du ah) Affiche la taille des dossiers ET des fichiers.  du - s : Affiche juste lespace total occup par le dossier, et donc naffice pas lespace des sous-dossiers. ( pour plus de lisibilit du sh, je le combine h)

COMMANDES DE BASES : Rpertoires Commande mkdir


La commande mkdir ( make directory )( permet de crer un rpertoire sil nexiste pas. On peut aussi utiliser loption -p pour crer un rpertoire mme si son rpertoire parent nxiste pas. Si lun des rpertoires intermedaires nexiste pas, la commande mkdir retourne un code derreur (exit status) sans crer le status ( sauf si loption p est spcifie) mkdir [-p] nouveau_rpertoire Exemple : Si on veut crer le rpertoire /tmp/Ista/Ntic mais le rpertoire tmp/Ista/ nexiste pas, on devrait normalement faire ceci: pippo@localhost :~$ mkdir /tmp/Ista/ pippo@localhost :~$ mkdir /tmp/Ista/Ntic Si on essaie de le crer, on reoit le message suivant: mkdir: cannot create directory /tmp/Ista/ntic: No such file or directory. On devra faire:~$ mkdir -p /tmp/Ista/Ntic

COMMANDES DE BASES : Rpertoires Commande rmdir


La commande rmdir (remove directory) permet de supprimer le rpertoire spcifi sur la ligne de commande (rpertoire). Si il existe des fichiers ou des sous rpertoires, la commande retournera un code derreur (exit status). (Pour supprimer un rpertoire, il faut quil soit vide) rmdir [-p] [-s] rpertoire -p : permet de dtruire tous les sous rpertoires vides. -s : mode silencieux ( aucun affichage) rpertoire : reprsente le nom du rpertoire dtruire. Cest un argument obligatoire. Exemple: ~$ rmdir /tmp/Ista/Ntic ~$ cd /tmp ~$ rmdir p Ista/Ntic rmdir: Ista/Ntic: Whole path removed Nota: voir aussi la commande: ~$ cd Ista rm r: pour supprimer des Ista: does not exist rpertoires contenants des ~$ fichiers.

COMMANDES DE BASES : Gestions de Fichiers 1 Commande cp


La commande cp ( copy) permet de copier le contenu dun fichier dans un autre. cp [-i] [-p] fichier1 fichier2 cp [-i] [-p] [-r] source1 [source2...] rpertoire Si destination est un fichier cp fichier1 fichier2 : Effectue une copie de fichier1 en un nouveau fichier appel fichier2.  Si destination est un rpertoire. cp fichier1 repertoire : Effectue une copie de fichier1 dans le rpertoire appel repertoire. cp fichier1 fichier2 fichier3 repertoire : Copie tous les fichiers vers le rpertoire de destination appel repertoire.  cp -i : (i:interactif) Demande de confirmation lutilisateur dans le cas o le fichier de destination existe dj.  cp r rep_orig rep_dest: (r:rcursive) copie du rpertoire tout entier copier de manire rcursive un rpertoire et tout ce quil contient. Si cp-p fichier1 fichier2 : (p : preserve) Copier le fichier1 en prservant tous les attributs du fichier initial.

COMMANDES DE BASES : Gestions de Fichiers 1 Commande mv


La commande mv( move) : dplace ou renomme les fichiers. mv [-i] source1 [source2...] destination mv dplace les fichiers fichiers 1,fichiers 2, etc dans destination. Si destination est un fichier -> alors mv a pour action de renommer fichier1 en destination. mv fichier1 fichier2  Si destination est un rpertoire -> alors mv dplace fichier1 dans ce repertoire . mv fichier1 repertoire.  mv -i : (i:interactif) Demande de confirmation avant lcrasement du fichier.

COMMANDES DE BASES : Gestions de Fichiers 1 Commande rm


La commande rm (remove) : Efface les fichiers ou les rpertoires . rm [-i] source1 [source2...] rm : supprime les fichiers ou rpertoires spcifis sur la ligne de commande. Exemple  rm fichier1 : destruction du fichier fichier1 .  rm fichier1 fichier2 : destruction des fichiers fichier1 et fichier2.  rm fic* :Effacement de tous les fichiers qui commencent par fic . Option [-i] : demande de confirmation avant crasement

COMMANDES DE CONSULTATIONS : Fichiers 2 Commande cat


La commande cat (catenate concatner : joindre des ficiers squentiellement) : Affiche des fichiers et /ou concatne les fichiers spcifis sur la ligne de commande. cat [fichier...] Quand elle est appele sans options e sans nom de fichier, la commande cat rpte sur la sortie standard ce qui est saisi sur lentre standard. Exemple ~$ cat Fruits banane Cerise Orange

COMMANDES DE CONSULTATIONS : Fichiers 2 Commandes more / less


La commande more : Affiche des fichiers page par page . more [fichier...] La commande less : Sa fonction est similaire la commande more Affiche des fichiers page par page , mais elle permet en plus de revenir en arrire: B , de se dplacer vers le haut ou vers le bas avec les flches de directions less [fichier...]

Commandes de consultation de fichiers


cat nom_fichier : afficher le contenu d'un fichier texte l'cran (sans pouvoir arrter le dfilement) more nom_fichier : afficher le contenu d'un fichier texte l'cran en arrtant le dfilement chaque page (espace pour descendre d'une page, entre pour descendre d'une ligne, q pour quitter) less nom_fichier : pareil que more, mais dispose d'un peu plus d'options (entre autre peut revenir en arrire : b pour revenir d'une page, y pour revenir d'une ligne, il est aussi possible de se dplacer vers le haut ou vers le bas avec les flches de direction)

Commandes de consultation de fichiers


cat nom_fichier : afficher le contenu d'un fichier texte l'cran (sans pouvoir arrter le dfilement) more nom_fichier : afficher le contenu d'un fichier texte l'cran en arrtant le dfilement chaque page (espace pour descendre d'une page, entre pour descendre d'une ligne, q pour quitter) less nom_fichier : pareil que more, mais dispose d'un peu plus d'options (entre autre peut revenir en arrire : b pour revenir d'une page, y pour revenir d'une ligne, il est aussi possible de se dplacer vers le haut ou vers le bas avec les flches de direction)

COMMANDES DE CONSULTATIONS : Fichiers 2 Commandes head / tail


La commande head : Affiche les n premires lignes dun fichier, alors qu tail affiche les dernires lignes dun fichier. Si n nest pas prcis, il prend par dfaut la valeur 10. head [-n] [fichier...] tail [-n/+n] [fichier...]  -n :Nombre de lignes afficher depuis le dbut / la fin de fichier .( - n suivi du nombre de lignes, par exeple n 3)  +n : Affichage partir de la ligne numro n .

Commandes de consultation de fichiers


head nom_fichier : afficher uniquement le dbut du fichier -n suivi d'un nombre: permet d'afficher le nombre de lignes que vous voulez. Par exemple, si vous ne voulez que les 3 premires lignes, tapez : head n 3 nom fichier tail nom_fichier : afficher uniquement la fin du fichier sort nom_fichier : Tri par ordre alphabtique des lignes d'un fichier texte.

COMMANDES DE CONSULTATIONS : Fichiers 2 Commande touch


La commande touch : est utilise pour changer les dates daccs et de modifications dun fichier ( do le on touche le fichier pour faire croire lordinateur quon vient de le modifier alors quon na rien chang.

Commandes de gestion de fichiers


touch nom_fichier : crer un ficher texte vide rm nom_fichier : supprimer un ficher (rm pour remove) rm -i nom_ficher : supprimer un fichier avec demande de confirmation (i pour interactive) rm -r nom_rpertoire : supprimer un rpertoire et tout ce qu'il contient (r pour recursive) mv fichier_source fichier_destination : renommer ou dplacer un fichier (mv pour move) mv -i fichier_source fichier_destination : renommer ou dplacer un fichier avec demande de confirmation si un fichier porte dj le nom du fichier destination (i pour interactive)

COMMANDES DE CONSULTATIONS : Fichiers 2 Commande Sort


La commande sort : Trie les lignes du fichier par ordre alphabtique. sort [fichier...] Mais les options suivantes modifient les critres:  sort r Fichier : ( reverse :inverse) trie les lignes du fichier en ordre inverse. sort n Fichier : Effectue un trie numrique.

COMMANDES Gestions de Fichiers Systme de fichiers


Sous les systmes UNIX tout lment est reprsent sous forme de fichier. (Un priphrique, un cran, une imprimante, un rpertoire. TOUT EST FICHIER) Un rpertoire est un fichier qui contient la liste des fichiers senss tre stocks dans ce rpertoire. L'ensemble des fichiers est architectur autour d'une unique arborescence dont la base, appele racine, est note /. La liste des noms de fichiers est stocke un autre endroit que leur contenu.

Chaque contenu de fichier se voit attribuer un numro d'identification appel inode.

COMMANDES Gestions de Fichiers Inodes


A tout fichier est associ une structure de donnes ( sur le disque) appelle Inode ( Information node). Dans chaque inode se trouvent diffrentes informations: Type de fichier ( fichier standard, lien symbolique, rpertoire ) Les droits daccs ( utilisateurs, groupes, ) Le proprietaire (UID) Le groupe proprietaire ( GID) Taille du fichiers en octets Dates Pour connatre le numro d'inode d'un fichier, vous devez taper la commande suivante : ls i nom_du fichier ls li :permet dafficher, pour chaque fichier, le numro dinode. ls ali :permet de voir en plus des fichiers

COMMANDES Gestions de Fichiers Inodes

Un fichier est rpre de manire unique par:  le systme de fichier auquel il est attach Son inode

COMMANDES DE GESTIONS DE FICHIERS Liens Physiques/ Liens Symboliques/


Un lien est un couple ( nom_de_fichier, numro dinode). On peut crer 2 type de liens: Liens Physiques ( hard link) Cration dun nouveau nom pour le mme inode. Impossible de faire un lien physique vers un rpertoire: le systme de fichiers doit tre arborescent.( seules les feuilles peuvent tre partags, car le systme de fichiers est un graphe acyclique) Impossible de faire un lien physique vers un autre volume (partition) Liens Symboliques ( soft link) cest des fichiers spcial contenant le chemin daccs un autre fichier ( correspond aux raccourcis de Windows). Cration dun nouvel inode de type lien symbolique.( -> possde sa propre inode) Le bloc de donnes contient une chaine de caractres reprsentant le chemin (relatif ou absolu) vers un fichier. Possibilit de lien symbolique vers un rpertoire. Possibilit de lien symbolique vers un autre volume ( partition).

COMMANDES DE GESTIONS DE FICHIERS Liens Physiques/ Liens Symboliques/

Liens Physiques  Mme inode Nom diffrent Mme Partition

Liens Symbolique  Cre un nouvel inode

COMMANDES DE GESTIONS DE FICHIERS Commandes ln


La commande ln : permet de crer des entres multiples dans larborescence dun systme de fichiers pour un mme fichier. ( permet de crer des liens entre fichiers). Sans option, elle permet de crer des liens physiques. ln Nom-fichier Nom_du_lien_hard Avec loption s elle permet de crer des liens symboliques ln -s Nom-fichier Nom_du_lien_soft . Rappel: Pour supprimer un lien rm Nom_du_lien

COMMANDES DE GESTIONS DE FICHIERS Exemple : (diffrence entre liens physique et liens symboliques
1. 2. 3. 4. Cration dun Rpertoire TESTS .Une fois dans le dossier tests, crer un fichier fichier1 vide de 0bytes Crer un lien physique fichier2 , qui partagera le mme inode (le mme contenu) que fichier1 Crer un lien symbolique fichier 3 , en pointant vers le nom du fichier1 ( et non vers linode).

1re colonne de la commande ls indique : numro inode. 3 me colonne: le nombre de liens dures( nombre de fichiers partageant le mme inode) 6 me colonne: dimension du fichier ( on remarque que le lien symbolique est un fichier sur le disque de 8bytes.

COMMANDES DE GESTIONS DE FICHIERS Exemple : (diffrence entre liens physique et liens symboliques

l : link ( lien)

Le fichier dorigine et le lien ont le mme type de fichier fichier rgulier indiqu par le tiret en tte des permissions, alors que le liens symbolique a un type diffrent (l: lien ). Le fichier dorigine et le lien physique ont le mme horodatage( alors que le lien symbolique affiche lheure et la date de sa cration. Enfin on remarque, la fin de la ligne du lien symbolique, une flche en direction du chemin du fichier vers le lien dur.

COMMANDES DE GESTIONS DE FICHIERS Liens Physiques/ Liens Symboliques/

Schma qui permet de comprendre les liens symboliques et les liens physiques. Liens physiques: Bien quils conomisent toujours de la place, les liens physiques sont indiscernables des fichiers dorigine

COMMANDES DE GESTIONS DE FICHIERS Liens Physiques/ Liens Symboliques/


Liens physiques:  Bien quils conomisent toujours de la place, les liens physiques sont indiscernables des fichiers dorigine. Si vous supprimer le fichier dorigine, cela naffecte pas le contenu du lien physique. Le contenu est supprim quand il ny a plus aucun fichier ( lien physique) qui y fait rfrence. LiensSymbolique  La suppression du fichier, ne supprime pas le fichier rfrenc par le lien!

Commandes de gestion de fichiers


ln fichier_existant lien : crer un lien dur entre les deux fichiers (ln pour link) ln -d rpertoire_existant lien : crer un lien dur entre les deux rpertoires (d pour directory) ln -s fichier_existant lien : crer un lien symbolique entre deux fichiers (s pour symbolic) cp -l fichier_source fichier_destination : copier un fichier et faire un lien dur entre la copie et sa source (l pour link) cp -s fichier_source fichier_destination : copier un fichier et faire un lien symbolique entre la copie et sa source (s pour symbolic link)

COMMANDES DE RECHERCHE: Fichiers 3 Commandes find


La commande find : Permet de rechercher des fichiers dans larborescence partir du point spcifi.( recherche des fichiers dans une hirarchie de rpertoires. )

Commandes de recherche
find recherche les fichiers actuellement prsents La commande find s'utilise de la faon suivante : find "o" "quoi" "que faire avec" (seul le paramtre "quoi" est obligatoire) O : c'est le nom du dossier dans lequel la commande va faire la recherche. Tous les sous-dossiers seront analyss. Quoi : c'est le fichier rechercher. On peut rechercher un fichier par son nom, mais aussi en fonction de sa date de dernire cration, de sa taille, etc. Que faire avec : il est possible d'effectuer des actions automatiquement sur chacun des fichiers trouvs . Par dfaut, la commande find affiche les rsultats trouvs et ne fait rien d'autre avec.

Commandes de recherche
Par nom

Par taille Par date


-type d : pour rechercher uniquement des rpertoires (directories).

les fichiers qui font plus de 10 Mo


-atime, indique le nombre de jours qui vous sparent du dernier accs un fichier.

Supprimer les fichiers trouvs

Critres de recherche de noms de fichiers


Modles de noms de fichier
* : remplace une chane vide ou de longueur variable ? : remplace un caractre unique quelconque [] : reprsente une srie ou une plage de caractre [!] : inverse la recherche Exemples
a* : les fichiers dont le nom commence par a a?? : fichiers en trois lettres, commenant par a [aA]* : fichiers dont le nom commence par un a minuscule ou majuscule. [a-m]* : fichiers dont le nom commence par une lettre de la plage a-m.

Commandes de recherche
find nom_repertoire - name nom_fichier : rechercher dans le rpertoire et tous ses sous-rpertoire le fichier (ou les fichiers) et afficher son emplacement. grep mot nom_fichier : rechercher dans un fichier texte le mot voulu et affiche la ligne o il se trouve grep -l mot nom_fichier : rechercher dans un ou plusieurs fichiers texte le mot voulu et affiche le nom des fichiers qui contiennent le mot (utile pour une recherche sur plusieurs fichiers, voir caractres gnriques en fin de liste) grep -c mot nom_fichier : donne le nombre de fois o le mot voulu a t rencontre dans le fichier.

Commandes de recherche
sed -e " s/texte/remplacement/options " Par exemple : sed -e "s/bonjour/bonsoir/g" test.txt > modif.txt permet de remplacer bonjour par bonsoir dans le texte du fichier test.txt, et d'enregistrer le rsultat dans le fichier modif.txt g permet d'effectuer un remplacement global (au lieu de ne remplacer que la premire occurrence du texte rencontre dans chaque ligne)

Oprations de base sur les fichiers

Caractres gnriques

le caractre ? remplace un seul caractre, et le caractre * remplace n'importe quelle suite de caractres. Exemples d'utilisation frquente des caractres gnriques : find /home/yolande -name logo* : afficher tous les fichiers (et leur emplacement) qui commencent par logo et qui se trouvent dans le rpertoire /home/yolande ou l'un de ses sous-rpertoires cd /ho* le shell ira directement dans le rpertoire /home/, car le caractre gnrique * peut tre remplac par la squence de caractres me . cd /?ome et dans ce cas le caractre gnrique ? sera remplac par h .

Notions d'identifiant et de groupe

La gestion des utilisateurs et des droits d'accs


adduser :Ajouter un utilisateur par exemple crer un compte utilisateur "ernest" : [root@mistra /]# adduser ernest Le compte est cr, c'est--dire qu'un rpertoire ernest a t cr dans le rpertoire /home et l'utilisateur ernest a t ajout dans le fichier de configuration /etc/passwd. Dterminer un mot de passe pour l'utilisateur ernest l'aide de la commande passwd: [root@mistra /]# passwd ernest passwd vous demande de rentrer deux fois le mme password.

La gestion des utilisateurs et des droits d'accs


su : devenir root jusqu' ce qu'on tape la commande exit (ncessite le mot de passe root) su nom_d'utilisateur : devenir un autre utilisateur (ncessite le mot de passe de l'utilisateur) adduser nom_d'utilisateur : ajouter un utilisateur (il faut tre root) passwd nom_d'utilisateur : changer le mot de passe de l'utilisateur (il faut tre root) userdel nom_d'utilisateur : supprime l'utilisateur (il faut tre root) userdel --remove-home nom_d'utilisateur : supprime l'utilisateur et son rpertoire personnel avec tout ce qu'il contient (il faut tre root)

102

Utilisateurs
Chaque utilisateur qui utilise le systme doit tre connu de celui-ci celuipar un nom et, ventuellement, un mot de passe. Un utilisateur doit appartenir un ou plusieurs groupes d'utilisateurs pour tre autoris utiliser le systme. Il existe plusieurs mthodes d'identification et de contrle des utilisateurs, nous ne parlerons ici que de la mthode la plus simple mettant en oeuvre les fichiers /etc/passwd et /etc/group. Les utilisateurs et les groupes sont reprs dans le systme par des numros : uid pour le numro d'utilisateur (User IDentifier) et gid pour le numro de groupe (Group IDentifier).
Le numro est unique pour un utilisateur ou un groupe donn.

L'identification d'un utilisateur s'effectue dans le fichier /etc/passwd.

103

Hirarchie de comptes
Root
super utilisateur les permissions d accs ne sont pas appliques sur lui il peut faire tous compte pour l administrateur du systme

bin, daemon, lp, sync, news, ftp


comptes utilisateur utiliss par diffrentes applications et dmons ne peuvent pas tre utiliser comme login

comptes ordinaires

104

Enregistrer un utilisateur /etc/passwd


Un utilisateur est caractris par une ligne dans le fichier /etc/password. Une ligne est forme par les champs suivants : login:passwd:uid:gid:comment:home:shell
login : Il s'agit du nom de l'utilisateur. C'est un alphanumrique de 8 caractres maximum. passwd : Il apparat dans ce fichier sous forme code. uid : Il s'agit d'un numro unique de l'utilisateur. Compris entre 0 et 65535. Les

100 premiers nombres sont par convention rservs au systme et ne correspondent pas des utilisateurs normaux. gid : Numro de groupe. Chaque utilisateur appartient un groupe principal. Il pourra galement appartenir des groupes secondaires. Cette notion de groupe interviendra au niveau des permissions sur les fichiers. comment : Nom complet de l'utilisateur. home : Chemin complet de la directory attribue l'utilisateur shell : Chemin complet du shell, le programme qui interagit avec l'utilisateur et qui permet de taper des commandes (csh, sh, bash, tcsh, ...).

Notion d'identifiant
Tous les identifiants sont dfinis dans le fichier /etc/passwd: $ cat /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin: daemon:x:2:2:daemon:/sbin: adm:x:3:4:adm:/var/adm: lp:x:4:7:lp:/var/spool/lpd: shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt nobody:x:99:99:Nobody:/: www:x:500:501:Serveur www:/home/www:/bin/nologin dp:x:501:234:DUCROT Patrick:/home/dp:/bin/bash pierre:x:502:501:DUVAL Pierre:/home/duval:/bin/bash

Le fichier /etc/passwd
login mot de passe identifiant numrique
l'identifiant numrique de son groupe principal

son nom complet ou un commentaire le chemin de son rpertoire personnel

107

/etc/shadow
Le fichier /etc/passwd est public (toute personne qui a un compte sur la machine peut le lire). Pour contrecarrer cette faille, certains systmes ont introduit le fichier /etc/shadow
lisible uniquement par root contient les mots de passe des utilisateurs, qui disparaissent alors de /etc/passwd. Si on ajoute un utilisateur la main, cela implique d'diter les 2 fichiers.

108

/etc/shadow
Une ligne /etc/shadow est compose des champs suivants:
Nom de login mot de passe crypt Nombre de jours couls depuis le 1er janvier 1970 jusqu'au dernier changement de mot de passe Nombre de jours durant lesquels le mot de passe est encore valide Nombre de jours aprs lesquels le mot de passe doit tre chang Nombre de jours avant l'expiration du mot de passe impliquant l'avertissement de l'utilisateur Nombre de jours aprs l'expiration provoquant la desactivation du compte Numro du jour depuis le 1er janvier 1970 partir duquel le compte a t dsactiv Champs rserv

Le fichier mots de passe


Le fichier /etc/passwd doit tre lisible par tous. Par mesure de scurit, les mots de passe sont stocks dans le fichier /etc/shadow accessible au seul administrateur: # cat /etc/shadow root:$1$XnR8T7M4$sA4gQkXpxehU7AO4XV7z0/:11327: 0:99999:7:-1:: bin:*:10915:0:99999:7:: daemon:*:10915:0:99999:7:: adm:*:10915:0:99999:7:: lp:*:10915:0:99999:7:: shutdown:*:10915:0:99999:7:: halt:*:10915:0:99999:7:: nobody:*:10915:0:99999:7:: dp:$1$DuNQiY7n$67tnNC2dIG3Dj/HpEj3PY/:11327:0:99 999:7:-1::

Le fichier /etc/shadow

111

/etc/shadow
Exemple : kmaster:$1$zBvl.scX$hkqgDvBu40EqpAEwZ fZZQ0:11493:0:99999:7:::
le mot de passe en cours a t mis en place le 11493e jour aprs le 1/1/1970 (date de rfrence), il pourra nouveau tre chang 0 jour aprs cette date il devra obligatoirement tre modifi avant le 99999e jour aprs la date de cration (autant dire qu'il n'expire jamais...).

Notion de groupe
Les systmes Unix dfinissent une notion de groupe; les groupes sont stocks dans le fichier /etc/group permettant d'associer un nom de groupe (gname) un numro de groupe (gid) ainsi que la liste de ses membres. Un utilisateur appartient un groupe principal (dfini dans le fichier /etc/passwd) et ventuellement des groupes secondaires.

113

LE FICHIER /etc/group
- Une ligne contient quatre champs, spars par deux points (:) Nom du groupe : - Nombre maximum de caractres : 8. - Il est unique sinon conflit avec la commande newgrp. 2) Mot de passe : - Champ gnralement vide. - Lorsqu il existe, il permet d'augmenter la scurit du systme. - Il est demand lorsqu'un utilisateur essaie de changer de groupe.

114

LE FICHIER /etc/group
3) Numro du groupe (GID) : - Lien entre les fichiers /etc/group et /etc/passwd. - Il est appel numro de groupe primaire (NGP) dans le fichier /etc/passwd, . - Chaque NGP possde une entre dans le fichier /etc/group - C est cet identifiant qui est connu du systme, et non le nom du groupe, qui n'est utilis que pour l'affichage.

115

LE FICHIER /etc/group
4) Les membres - Chaque groupe comprend une liste des membres, spars chacun par une virgule. - La commande newgrp permet chaque membre de changer de groupe Intrts - Accs des fichiers communs un autre groupe. - Un utilisateur peut appartenir plusieurs groupes (groupes secondaires) (secondary group set).

116

Le fichier /etc/group
Le fichier de dclaration des groupes /etc/group contient une ligne par groupe dans un format similaire au fichier /etc/passwd. Une ligne de ce fichier comporte les champs suivants, spars par des caractres `:' :
nom du groupe mot de passe du groupe numro du groupe (gid) liste des utilisateurs appartenant au groupe spars par des virgules

Par exemple :
etudiants:*:400:said,karim,rachida

Le fichier /etc/group

La gestion des utilisateurs et des droits d'accs


groupadd nom_du_groupe : ajouter un groupe (il faut tre root) groupdel nom_du_groupe : supprime le groupe (il faut tre root) Usermod -g nom_du_groupe nom_d'utilisateur : Modifier le groupe principal dun utilisateur adduser nom_d'utilisateur G nom_du_groupe : ajouter un utilisateur un groupe (il faut tre root)

La gestion des utilisateurs et des droits d'accs


linux permet de spcifier les droits qu'ont les utilisateurs sur un fichier. Pour voir ces droits, il suffit d'utiliser la commande ls -l : [delcros@mistra delcros]$ ls -l perso -rw-r--r-- 1 delcros delcros 9 Jul 19 12 : 39 perso Le premier tiret signifie que perso est un fichier. Si la place du premier tiret on observait un "d" cela signifierait qu'en ralit le fichier est un rpertoire. Si la place du premier tiret on observe un "l", cela signifie que le fichier est un lien.

Exemple d'affichage de droits

Permissions d'accs aux fichiers


Les droits d'accs sont scinds en trois catgories d'utilisateurs:  les droits du propritaire (user)  les droits des membres du groupe (group)  les droits de tous les autres (other) Pour chaque catgorie, on peut attribuer les droits suivants:
la lecture ("read", r); l'criture ("write", w); l'excution ("execute", x).

Si la place d'un des caractres nous ne voyons qu'un tiret "-", c'est que le droit n'est pas autoris.

Permissions d'accs aux fichiers

Le changement des droits


chmod : changer les droits d'accs d'un fichier (il faut tre root ou propritaire du fichier) On utilise le signe + pour ajouter un droit, - pour en enlever un, avec les lettres r, w, x (lecture, criture, excution): chmod -w nom_fichier : enlever les droits d'accs en criture sur le fichier pour tout le monde Pour appliquer les changements seulement certains "niveaux d'apartenance", il faut utiliser les lettres u pour user (propritaire du fichier), g pour group (utilisateurs appartenant au groupe du fichier), et o pour other (tous les autres) comme ceci : chmod ug +wx nom_fichier : ajouter, pour le propritaire et les membres du groupe, les droits en criture et en excution sur le fichier

124

Modification des droits daccs


chmod modification_des_droits fichier1 [fichier2 ]
Vous pouvez utiliser des +, - ou = pour ajouter, supprimer ou fixer des droits l'une ou l'autre des catgories u, g, o ou a tous (a) en prcisant le type de droit d'accs, r, w ou x. chmod g+w fic1 chmod o-x rep chmod u+rx,g-w fic2 chmod u=rwx,g=rx,o=- fic chmod a+r fic

125

Modification des droits daccs


Si le changement de droits s'applique un rpertoire, vous pouvez changer tous les droits des fichiers et rpertoires inclus dans ce rpertoire via l'option -R.
Exemple:

Le changement des droits


Si nous souhaitons dfinir d'un seul mouvement toutes les permissions d'un fichier : [delcros@mistra delcros]$ chmod u=rwx,g=rw,o=r linux-test Il existe une autre faon d'indiquer les permissions : On utilise un nombre de 3 chiffres (le 1er pour le-la propritaire, le 2e pour les membres du groupes, et le 3e pour tous les autres). Les chiffes veulent dire : 1 : droit en excution 2 : droit en criture 4 : droit en lecture : chmod 764 linux-test

Le changement des droits

128

Modification des droits daccs


chmod nombre_en_base_8 fichier1 [fichier2 ] chmod utilise le codage binaire, fond sur l'association de valeurs numriques aux diffrentes permissions :
lecture : 4, criture : 2, excution : 1, pas de permission : 0.

129

Modification des droits daccs


Chaque triplet se code par l'addition de 4, 2, 1, ou 0.
Pour un rwx il faudra ajouter 4+2+1=7, pour r-x 4+0+1=5 etc.

La commande chmod permettant de positionner rwxr-x--- sur fic1 la syntaxe suivante : chmod 750 fic1

130

Valeur par dfaut des droits daccs


umask nombre_en_base_8 Par dfaut unix affecte les droits max sur les fichiers normaux et les rpertoires :
Rp 777 (rwxrwxrwx) Fichier normal 666 (rw-rw-rw-)

Les droits effectifs sont obtenus par :


droits_max - masque

Exemple
Si on souhaite un accs en lecture/criture pour le propritaire et en lecture seule pour le groupe et le reste de monde, on utilise 022 comme masque

131

Changement de propritaire et de groupe


Sans les uid et les gid les droits daccs nauraient aucun sens. La commande chown permet de changer le propritaire
chown utilisateur fichier1 [fichier2 ]

La commande chgrp permet de changer le groupe


chgrp groupe fichier1 [[fichier2 ]

132

Droits daccs tendus


Set User ID et Set Group ID bit
Si le SUID est plac sur un programme, celui-ci se voit affect, le temps de son traitement, le numro dutilisateur du propritaire du fichier programme, avec tous les droits daccs correspondants. De la mme faon, si le SGID est positionn, le numro de groupe normale est remplac par le numro de groupe du propritaire du fichier programme.

133

Droits daccs tendus


Dfinition du SUID et du SGID bit
Chmod u+s fichier_programme Chmod g+s fichier_programme Ou Chmod 4755 fichier Chmod 2755 fichier

134

Numros didentification rel et effectif


Les numros dutilisateur ou de groupe dun processus sont hrits du parent (numros rels). Si vous utilisez un SUID ou un SGID bit, les numros dutilisateur et de groupe sen trouvent modifis (numros effectifs).

135

Droits daccs tendus pour les rpertoires : Sticky bit


Un utilisateur qui a le droit dcrire dans un rpertoire peut supprimer tous les fichiers de ce rpertoire. Si le Sticky bit est positionn, seul le propritaire pourra supprimer un fichier du rpertoire.
chmod u+t rep chmod 1777 rep

Le changement
de propritaire

chown options proprietaire:groupe fichier(s) Exemples: chown pierre exemple chown pierre:prof exemple chown R pierre * Qui peut utiliser la commande chown ?
de groupe chgrp options groupe fichier(s) Exemple: chgrp prof test

Quelques commandes
Connatre son uid, son gid et ses groupes secondaires grce la commande id: $ id uid=501(dp) gid=234(prof) groups=234(prof),100(users) Connatre des informations sur un utilisateur: $ finger dp Login: dp Name: DUCROT Patrick Directory: /home/dp Shell: /bin/bash On since Wed Jan 26 16:22 (CET) on pts/1 25 days 15 hours idle On since Wed Jan 26 16:22 (CET) on pts/0 No mail. No Plan.

Extraire, trier et filtrer des donnes

grep : filtrer des donnes


rechercher dans un fichier texte le mot voulu et affiche la ligne o il se trouve
Syntaxe : grep [option] modle_de_critres [fichier1 ]

Les options du grep les plus utiles sont :


i : pour ne pas tenir compte des majuscules/minuscules, v : toutes les lignes ne contenant pas le critre, n : pour avoir les numros de ligne, E : pour les expressions rgulires plus compliques, c : la commande ne retourne que le nombre de lignes trouves r

: rechercher dans tous les fichiers et sous-dossier

grep : filtrer des donnes


Le modle de critres peut contenir les caractres spciaux suivants : [] : Plage de caractres permis cet emplacement [^] : Plage de caractres non permet cet emplacement .: Un caractre quelconque (y compris un espace) * : Signe de rptition. Agit sur le caractre plac devant le * $ : Matrialise une fin de ligne | : ou ^ : dbut de ligne

grep : filtrer des donnes


liste des lignes commenant par ! Dans le fichier fichier1 : grep "^!" fichier1 recherche de STOP avec le numro de la ligne : grep -n -i stop fichier1 liste de tous les fichiers qui n'ont pas "image" ou "son" dans leur nom : ls | grep -vE "(image|son)" liste des lignes contenant "image" ou "son" dans tous les fichiers du rpertoire courant : grep -E "(image|son)" * Liste des lignes contenant un nombre compris entre 0 et 4 : grep -E [0 4] fichier1 Liste des lignes contenant "alias" ou "Alias" : grep -E [Aa] lias fichier1

sort : trier les lignes


sort nom_fichier : Tri par ordre alphabtique des lignes d'un fichier texte. -o : crire le rsultat dans un fichier -r : trier en ordre inverse -n : trier des nombres -t :dfinit le caractre sparateur -u :n'affiche qu'une seule ligne quand plusieurs lignes sont identiques -k :indique la position de la cl de tri (numro partir de 1)

Exemple: sort -n -t":" -k 3 /etc/passwd

wc : compter le nombre de lignes


Affiche le nombre de lignes, de mots et doctets dun fichier

-l : compter le nombre de lignes -w : compter le nombre de mots -c : compter le nombre d'octets -m : compter le nombre de caractres

uniq : supprimer les doublons


Supprimer les lignes en double dans un fichier.(nous devons travailler sur un fichier tri ) -c : compter le nombre d'occurrences -d : afficher uniquement les lignes prsentes en double

cut : couper une partie du fichier

1.

Couper selon le nombre de caractres


Par exemple, si vous souhaitez conserver uniquement les caractres 2 5 de chaque ligne du fichier, vous taperez :

2.

Pour conserver du 1er au 3me caractre :

3.

pour conserver du 3me au dernier caractre :

cut : couper une partie du fichier


Couper selon un dlimiteur
Soit le fichier notes.csv suivant :
Ces colonnes contiennent, dans l'ordre : Le prnom La note Un commentaire

nous souhaitons extraire de ce fichier la liste des prnoms. -d : indique quel est le dlimiteur dans le fichier -f : indique le numro du ou des Pour avoir les champs nr1 champs prnom et le et nr3 (le couper commentaire) :

La commande split

Cette commande permet de dcouper un fichier en plusieurs morceaux. Syntaxe: split -n fichier fichiers_resultat Exemple: split -10 exemple petitfichiers Cette exemple va crer les fichiers petitfichiersaa, petitfichiersab, contenant le contenu du fichier exemple par tranche de 10 lignes.

La commande comm
La commande comm permet d'extraire les lignes communes et les lignes uniques de 2 fichiers pralablement tris. Syntaxe: comm [-123] fichier1 fichier2 Exemple:

$ comm -12 carnet1 carnet2 marcel:13:0466342233:Marseille 13 les lignes uniques

La commande diff
Cette commande permet de rechercher des diffrences entre 2 fichiers. Syntaxe: diff -options fichier1 fichier2 Exemples d'options: -b ne pas tenir compte des diffrences concernant des espaces blancs -B ne pas tenir compte des diffrences concernant des lignes blanches Exemple: $ diff carnet1 carnet2 2,3c2,3 < maurice:29:0298334432:Crozon < robert:75:0144234452:Paris --> myriam:30:0434214452:Nimes > olivier:29:0298333242:Brest

Les flux de redirection

> et >> : rediriger le rsultat dans un fichier


> : rediriger le rsultat de la commande dans le fichier de votre choix

> (appel chevron) redirige la sortie de la commande dans un fichier appel "eleves.txt" qui vient d'tre cr

Attention : si le fichier existait dj il sera cras sans demande de confirmation !

Le double chevron >> sert lui aussi rediriger le rsultat dans un fichier, mais cette fois la fin de ce fichier.

2>, 2>> et 2>&1 : de donnes diffrents : erreurs rediriger les les commandes produisent 2 flux
La sortie standard : pour tous les messages (sauf les erreurs). La sortie d'erreurs : pour toutes les erreurs.

Il est aussi possible d'utiliser 2>> pour ajouter les erreurs la fin du fichier 2>&1 : redirige les erreurs au mme endroit et de la mme faon que la sortie standard. il n'est pas possible d'crire : 2>>&1

< et << : lire depuis un fichier ou le clavier

La console vous propose alors de taper du texte. crire des nombres, un par ligne (en appuyant sur la touche Entre chaque fois Lorsque vous avez fini, tapez FIN pour arrter la saisie. Le mot FIN est-il obligatoire ? vous pouvez utiliser le mot que vous voulez. Par exemple :

Un tube (pipe) | : chaner les commandes


Un tube permet dtablir une liaison directe entre la sortie d'une commande et l'entre d'une autre commande.

On peut crire cette liste trie dans un fichier :

Commande tee
Avec lutilisation dun tube, le rsultat de la premire commande nest pas accessible. Pour avoir une copie, on peut utiliser la commande tee. Le rsultat de la premire commande est sauvegard dans un fichier dont le nom est pass en argument. Exemple
ls | tee espion | wc l Le rsultat de la commande ls est enregistr dans le fichier espion

Automatisation de tches

date : rgler l'heure


Personnaliser l'affichage de la date

Modifier la date

Attention, il faudra tre root pour modifier la date

Automatisation de tches
Effectuer de tches des temps diffrs: De manire rptitive (commande crontab) Ponctuellement (commande at) Ces tches peuvent de toute nature (sauvegarde, ...) et sont souvent dcrites dans des scripts shell.

La commande at
La commande at excute une commande un moment donne. Exemple: La cration du rpertoire docs dans votre rpertoire 15h30 $ at 1530 at> mkdir /home/<moncompte>/docs at> <Ctrl^D> Si je veux excuter la commande demain 14h17 Et si je veux excuter la commande le 15 novembre 14h17

Excuter une commande aprs un certain dlai


pour excuter la commande dans 5 minutes : ce qui signifie "Dans maintenant (now) + 5 minutes". Les mots-cls utilisables sont les suivants : minutes hours (heures) days (jours) weeks (semaines) months (mois) years (annes) excutera les commandes dans 2 semaines

atq et atrm : lister et supprimer les jobs en attente


atq Visualisation de ses tches en attente ou de toutes les tches en attente pour l'administrateur.

atrm num
Destruction d'une tche en attente (num est le numro de la tche supprimer obtenu grce la commande atq).

Ecriture d'une crontab


L'utilisateur doit crire une "crontab" pour dcrire les tches qu'il souhaite automatiser. Le format d'une "crontab" est une commande par ligne; une ligne est compose de: minute heure jour_mois mois jour_semaine commande

minute: 0-59 heure: 0-23 jour_mois: 1-31 mois: 1-12 jour_semaine: 0-6 (0 = dimanche)

Archiver et compresser

Compression avec Gzip et bzip2


La compression d'un fichier se fait de manire suivante: gzip fichier gzip renomme le fichier compress en fichier.gz . La compression d'un fichier avec bzip2 utilise la mme syntaxe bzip2 renomme le fichier compress en fichier.bz2 . La dcompression d'un fichier se fait l'aide de la commande suivante : gunzip fichier.gz ou bunzip2 fichier.bz2
gzip et bzip2 ne permettent de compresser qu'un seul fichier la fois.

tar : assembler des fichiers dans une archive

1. 2.   

Tar : permet d'assembler des fichiers dans un seul fichier avant de les compresser.

Runir les fichiers dans un seul gros fichier appel archive. On utilise pour cela le programme tar. Compresser le gros fichier ainsi obtenu l'aide de gzip ou de bzip2. La syntaxe de tar est trs simple : tar options archive [fichiers] Les options de tar que vous utiliserez le plus souvent sont les suivantes : cvf pour crer une archive ; tvf pour lister le contenu d'une archive ; (ls) xvf pour restaurer le contenu d'une archive Pour archiver le contenu du rpertoire courant dans le fichier archive.tar : tar cvf archive.tar * :

tar : assembler des fichiers dans une archive


La commande tar ne compresse pas automatiquement les fichiers. Vous pouvez compresser les fichiers tar avec : tar -czvf foo.tar x Les fichiers tar compresss se voient attribuer l'extension .tgz et sont comprims avec gzip. Pour dcompresser un fichier tar, entrez : tar -xzvf foo.tgz

Les processus

ps : liste des processus statique


ps :permet d'obtenir la liste des processus qui tournent au moment o vous lancez la commande

PID : c'est le numro d'identification du processus. Chaque processus a un numro unique qui permet de l'identifier. TTY : c'est le nom de la console depuis laquelle a t lanc le processus. TIME : la dure d'excution du processus. CMD : le programme qui a gnr ce processus.

ps sans arguments affiche seulement les processus lancs par le mme utilisateur

ps : liste des processus statique


ps ef:permet dobtenir la liste de tous les processus lancs par tous les utilisateurs sur toutes les consoles ps -u UTILISATEUR : lister les processus lancs par un utilisateur

ctrl+c & kill : arrter un processus


Ctrl + C : arrter un processus lanc en console kill : tuer un processus kill -9 vous demandez Linux de tuer le processus sans lui laisser le temps de s'arrter proprement killall : tuer plusieurs processus

Montage du lecteur de CD-ROM


comment puis-je lire un CD-ROM ou une disquette Crer un point de montage :crer un rpertoire o l'on pourra chaque fois qu'on le souhaite regarder le contenu d'un CD-ROM : [root@mistra /]# mkdir /mnt/cdrom Monter le cdrom : La premire chose connatre est le nom du fichier spcial qui correspond votre cdrom, que l'on trouve dans le rpertoire /dev, le disque dur s'appelera normalement hda et le cdrom hdb : [root@mistra /]# mount /dev/hdb /mnt/cdrom
Dmonter un cdrom : umount [root@mistra /]# umount /mnt/cdrom

L'diteur vi
Lanons Vi : [root@mistra /root]# vi vi comprend deux modes : un mode "commande" et un mode "insertion", aprs le lancement de vi nous sommes en mode commande : appuyez sur la touche "Echap" puis sur "a". Vous voyez en bas de l'cran apparatre la ligne "-- INSERT --". Nous pouvons commencer notre texte : Nous sortons du mode texte en appuyant nouveau sur la touche "Echap". La mention "-- INSERT --" disparat, nous sommes en mode commande Tapez maintenant " :w linux-test" Si vous souhaitez quitter sans enregistrez les dernires modifications, il vous faudra passer en mode commande et taper " : q!".

L'diteur vi
D'autres commandes vi. A permet d'ajouter du texte la fin de la ligne. i permet d'ajouter du texte avant le curseur. o permet d'ajouter une ligne en dessous du curseur. O permet d'ajouter une ligne au dessus du curseur. le retour chariot permet d'aller la ligne suivante. dd permet de supprimer la ligne courante. X permet de supprimer le caractre avant le curseur. u permet d'annuler la dernire commande effectue

Les shells sous unix


Au dmarrage d'une session, un utilisateur peut taper et faire excuter des commandes lignes grce un shell. Les shells standards Bourne Shell (/bin/sh) Il s'agit du shell UNIX d'origine. Le nom du programme est (sh) et il est connu comme tant le shell bash des systmes Linux. C-Shell (/bin/csh) Ce shell est rarement utilis car il est assez complexe. Korn Shell (/bin/ksh) Ce shell a t crit par David Korn. Il combine les fonctions interactives qui ont fait le succs du shell C avec la syntaxe de programmation conviviale du shell Bourne. Bourne Again Shell (/bin/bash) ce shell est une extension amliore du shell Bourne On peut trouver une liste des shells autoriss sur une machine dans le fichier /etc/shells

Les scripts shells

Les scripts shells


Le shell peut tre utilis pour excuter des commandes contenues dans un fichier texte. Les scripts peuvent tre crs avec un diteur de texte. Il est conseill de positionner le droit d'excution sur les fichiers scripts. Il est galement conseill de prciser sur la 1re ligne du script sous quel shell les commandes doivent tre excutes. Syntaxe: #!/bin/sh L'excution d'un shell script se fait: en tapant son nom (si le script dispose du droit x); exemple: script en prfixant par le nom du shell; exemple: sh script en prfixant par . ; exemple: . script

Les commandes d'entre/sortie


La commande echo permet d'afficher une chane de caractres ou le contenu de variables sur la sortie standard. Exemple: echo "La variable vaut $nom" La commande read permet de lire une ligne de caractres partir de l'entre standard et place les diffrents mots dans les variables transmises en argument. Exemple: #!/bin/bash echo entrez deux nombres: read nombre1 nombre2 echo La somme vaut $(($nombre1 + $nombre2))

Les variables
On peut crer des variables V par affectation et les utiliser avec $ V Exemple: #!/bin/bash pays=Maroc echo La variable pays vaut $pays Il existe aussi des variables dfinies automatiquement. Ce sont les paramtres entrs au lancement du script Exemple:

#!/bin/bash pays=$1 #$1 est le premier paramtre, $2 le deuxime etc... echo La variable pays vaut $pays Il existe deux autres variables automatiques: $# qui est le nombre de paramtres et $0 qui est le nom du programme.

Les chanes de caractres


Si l'on veut obtenir la longueur d'une chane de caractres contenue dans une variable, on utilisera cette syntaxe : ${#variable} La syntaxe qui permet d'extraire la chane de caractres principale, en supprimant le prfixe de la valeur des variables : ${variable#prfixe} ou ${variable##prfixe} Exemple: si la variable VAR contient la chane de caractres abbbc, la commande suivante : echo ${VAR#a*b} affichera la chane de caractres bbc, car le plus petit prfixe correspondant au motif a*b est ab. echo ${VAR##a*b}utilisera le prfixe le plus long, savoir abbb. Le rsultat de cette substitution sera donc la chane de caractres c.

Les chanes de caractres


Le shell fournit une syntaxe similaire pour extraire des suffixes de la valeur des variables echo ${VAR%b*c} affichera la chane de caractres abb, alors que la commande : echo ${VAR%%b*c} n'affichera que a. Le shell fournit une syntaxe pour remplacer une chane de caractres contenues dans des variables : ${variable/motif/remplacement} Exemple: si la variable VAR contient la chane de caractres abab, la commande suivante : echo ${VAR/b/d} affichera la chane de caractres adab. Ce remplacement n'est donc effectu qu'une seule fois. Si l'on veut que toutes les occurrences du motif soient remplaces par la chane de remplacement, il suffit de doubler le premier / : ${variable//motif/remplacement}

La commande test ou [ ]
Cette commande permet de tester l'existence et le status d'un fichier. Test de fichier:

La commande test
test de chanes de caractres

Ces tests peuvent tre combins: ! ngation logique -a et logique -o ou logique Exemple: test -r essai -a -s essai

La commande test
Les diffrents oprateurs de comparaisons numrique sont:

Exemple: #!/bin/bash if (test $1 -gt $2) then echo $1 est plus grand que $2 elif [ $1 -lt $2 ] then echo $1 est plus petit que $2 else echo $1 gale $2

La commande test
La structure while Syntaxe: while liste de commandes do liste de commandes Done
Exemple

#!/bin/bash i=0 while [ $i -lt 100 ] do i=$(($i+1)) echo $i done

La commande test
La structure for
Syntaxe: for nom in liste do liste de commandes Done Exemple

#!/bin/bash for fichier in * do if [ -f $fichier ]; then echo "$fichier est un fichier ordinaire" fi done

grep : filtrer des donnes


grep mot nom_fichier : rechercher dans un fichier texte le mot voulu et affiche la ligne o il se trouve -i : ne pas tenir compte de la casse (majuscules / minuscules) -n : connatre les numros des lignes -v : inverser la recherche : ignorer un mot (Si vous voulez connatre toutes les lignes qui ne contiennent pas un mot donn) -r : rechercher dans tous les fichiers et sous-dossier
l : pour lister seulement les fichiers et non pas les lignes contenant recherche, la chane

Les commandes tail,head


La commande tail affiche la dernire partie dun fichier. Syntaxe tail [- nombre] [fichier] Nombre : dfinit le nombre de lignes afficher. Par dfaut cest 10 Exemple :tail 5 timbre affiche les 5 derniers

lignes du fichier timbre la commande head ralise la mme chose que tail mais elle affiche les premires lignes du fichier au lieu d'afficher les dernires. .

Programmes utilitaires et filtres commande cut


Cette commande permet de dcouper un fichier en plusieurs champs. Syntaxe: cut [-dx] fslection_de_champ [fichier ..] Exemples d'options: - x dsigne le caractre de sparation de champs -f indique la liste des champs (par numro) afficher Exemple: cut -d":" -f1,5 /etc/passw

Programmes utilitaires et filtres sort


Les options utils:
d : tri ascii n : tri numrique b : ignore les espaces placs en dbut de champs f : aucune diffrence nest faite entre majuscules minuscules r : inverse lordre de tri, donc tri dcroissant tc : le caractre c est dfini comme caractre sparation entre les champs dune ligne

et

de