Utilisation des systèmes d’exploitation des ordinateurs...
-
Upload
nguyencong -
Category
Documents
-
view
221 -
download
0
Transcript of Utilisation des systèmes d’exploitation des ordinateurs...
1
IUT La Rochelle2010-2011
Utilisation des systèmes d’exploitation des ordinateurs
Module : I1
Linux
SGI-IRIX Solaris
2
IUT La Rochelle2010-2011
Diplôme national : PPN, Universitaire, Technologique
♠ Connaissances et compétences générales
♠ Enseignements technologiques
Le DUT
Enseignements (heures) S1 S2 S3 S4 TotalCœur de compétences
UE1 : Formation scientifique et humaine 210 180 180 570UE2 : Informatique et électronique 180 150 120 450UE3 : Télécommunications et réseaux 120 180 180 480UE4 : Projets professionnels
Modules complémentaires
Répartition par UE en fonction du parcours 30 270 300
Total heures encadrées 510 510 510 270 1800
3
IUT La Rochelle2010-2011
Unité d’enseignement : UE2, Informatique et électronique
Matière : Informatique
Volume horaire : 30 heures
Semestres : S1/S2
Objectifs :Comprendre le rôle des SE et connaître les systèmes de fichiers des ordinateurs
Compétences minimales :
♠Ouvrir une session à partir de différents systèmes d’exploitation.
♠Organiser et manipuler des fichiers (modes texte et graphique) en tenant compte
des droits d’accès.
♠ Démarrer et contrôler l’exécution d’une application.
♠ Initialiser des variables d’environnement et automatiser des commandes dans un
script.
Programme Pédagogique National
4
IUT La Rochelle2010-2011
Pré-requis : Bac ou équivalent
Contenu :
♠ Commandes systèmes
♠ Répertoires et fichiers
♠ Notion d’utilisateur et droits
♠ Variables d’environnements
♠ Scripts élémentaires
♠ Utilisation des outils informatiques de base
Prolongements possibles :Module IC-1
Module TR-C9
Mots-clés : Système d’exploitation, Commandes système, Scripts
Programme Pédagogique National
5
IUT La Rochelle2010-2011
Nombre d'heures : 29
Période : [ semaine 35, semaine 42 ]
Intervenants : Laurent Demay, Jamal Khamlichi, Jean-Luc Sabourin, Christophe Sempé
La note :Semaine temps coefficient
1 contrôle de synthèse : 42 2h 50%
1 contrôle oral sur machine : 42 15mn à 20mn 40%
Assiduité [35, 42] 10%
Fonctionnement
6
IUT La Rochelle2010-2011
Clavier SourisImprimanteAppareil photo
Carte réseauCarte Wifi
PDA Modem
Haut parleurs
Carte son
Alimentation
Disque durLecteur DVD ÉcranCarte graphique
Mémoire
Processeur
Les composants d'un ordinateur
7
IUT La Rochelle2010-2011
Un système d'exploitation est un logiciel assurant le bon fonctionnement d'un ordinateur.
Il offre à l'utilisateur une vue plus abstraite et plus simple que la vue matériel.
Définition d'un SE
© S. Krakoviak
8
IUT La Rochelle2010-2011
Principaux systèmes d'exploitations
Année Nom Famille Éditeur Matériel supporté
1977 VMS DEC VAX, DEC Alpha, HP
81-1990 DOS IBM Compatible PC
1981 Solaris Unix Sun machines de Sun
1984 Mac OS Apple Apple Macintosh
1986 AIX Unix IBM PS/2, RS/6000, PowerPC
1986 Irix Unix SGI Machines de SGI
1987 Minix A.Tanenbaum Compatible PC, m68k, SPARC
1989 Symbian Symbian ltd Nokia, Siemens, Samsung, ...
1991 Linux Unix Communautaire Nombreux
1991 Windows NT Windows Microsoft Compatible PC
1994 FreeBSD Unix Communautaire Nombreux
1995 Windows 95 Windows Microsoft Compatible PC
1996 Windows CE Windows Microsoft x86, MIPS, ARM
9
IUT La Rochelle2010-2011
Principaux systèmes d'exploitations
Année Nom Famille Éditeur Matériel supporté
1999 Mac OS X Unix Apple PowerPC de Apple
2000 Windows 2000 Windows Microsoft Compatible PC
2001 Mac OS X(Puma) Unix Apple PowerPC de Apple
2001 XP Windows Microsoft Compatible PC
2002 Mac OS X(Jaguar) Unix Apple PowerPC de Apple
2003 Mac OS X(Panther) Unix Apple PowerPC de Apple
2005 Mac OS X(Tiger) Unix Apple PowerPC de Apple
2007 Vista Windows Microsoft Compatible PC
2007 Mac OS X(Leopard) Unix Apple PowerPC de Apple
2009 Mac OS X(Snow) Unix Apple PowerPC de Apple
2009 Seven Windows Microsoft Compatible PC
10
IUT La Rochelle2010-2011
réseau
ordinateur
Systèmed'exploitation
Systèmed'exploitation
Systèmed'exploitation
ordinateur ordinateur
Système de communication
interlogiciel
applications
Logi
ciel
sM
atér
iels
Transfert de bits
Instructions machine
Processus, mémoire, fichiers
Transport de messages
J2EE, Net, ...
WebTélé achatTéléphone
mailnewsftp...
services
Place d'un SE dans un système informatique
11
IUT La Rochelle2010-2011
Caractéristiques d'un système d'exploitation
♠ Plusieurs utilisateurs peuvent, simultanément ou non , utiliser
l'ordinateur.
♠ Plusieurs programmes (appelés tâches ou processus) peuvent
s'exécuter simultanément en temps partagé.
♠ Les processus sont indépendants les uns des autres (sécurité
du système)
♠ Les processus peuvent communiquer les uns avec les autres
(en local ou en réseau).
♠ Les données sont organisées grâce au système de gestion de
fichiers (SGF).
12
IUT La Rochelle2010-2011
Linux
Le pourquoi♠ Prix
♠ Accès facile aux programmes sources
♠ Système ouvert
♠ Plusieurs logiciels libres
♠ Avoir la conscience tranquille parce qu'on est dans la légalité
Succès♠ Tout le système est écrit dans un langage haut niveau C/C++
♠ Interface simple d'utilisation
♠ Multi-utilisateurs et multi-tâches
♠ L'architecture de la machine est invisible pour l'utilisateur
13
IUT La Rochelle2010-2011
Linux
Points faibles♠ Fragilité du SGF.
♠ La gestion de la création des processus est parfois lourde.
♠ Les libraires statiques sont consommatrices de la mémoire.
♠ Au départ inadapté pour le temps réel mais des solutions sont
proposées : RTLinux, RTAI, μCLinux…Points forts♠ Système ouvert.
♠ Enrichissement constant.
♠ Des souplesses dans les Entrées/Sorties.
♠ Communication facile entre systèmes et entre utilisateurs.
♠ Un langage haut niveau pour communiquer avec le noyau.
♠ Parallélisme.
14
IUT La Rochelle2010-2011
Linux
Architecture du système♠ L'architecture globale du système est en couche
♠ Chaque couche est construite pour être utilisée sans connaître
les couches inférieures
Noyau
Matériel
Applications
ls
SHELL
make
cp
mkdirg++
web mail
openOffice
Utilisateur Utilisateur
UtilisateurUtilisateurVCL
15
IUT La Rochelle2010-2011
Architecture du noyauC'est une architecture logicielle, son but est de simplifier
La compréhension du système.
Linux
Matériel
Contrôle Matériel
ContrôleursCaractères | Bloc
Cache
Système deGestion des Fichiers
Interface appels-système
Gestion mémoire
Ordonnanceur
Communicationinterprocessus
Système degestion des processus
bibliothèques
Niveau matérielNiveau noyau
Niveau noyauNiveau utilisateur
Applications/utilisateurs
16
IUT La Rochelle2010-2011
Notion d'utilisateur
♠ La notion d'utilisateur permet au système de limiter l'accès à certains
ressources dans un but de sécurité.
♠ L'administrateur (root sous UNIX) est le super-utilisateur de la machine.
Il peut tout configurer : ajout, modification, suppression, …
♠ Certains utilisateurs peuvent avoir des droits privilégiés.
unUtilisateur
univ-lr
17
IUT La Rochelle2010-2011
♠ L'authentification (ouverture d'une session) permet de vérifier l'identité
de l'utilisateur.
♠ Il faut avoir un nom d'utilisateur (login) et un mot de passe (passwd)
valide pour être authentifié.
♠ L'authentification peut-être :
✔ Locale (propre à un ordinateur donnée).
✔ Globale (dans un système d'ordinateurs interconnectés).
L'authentification
18
IUT La Rochelle2010-2011
OS : Operating System
♠ Un OS est l'ensemble des programmes qui
fournissent un environnement d'exécution uniforme
(indépendant du matériel) pour d'autres programme.
♠ La majorité des OS proposent une interface
graphique qui permet d'utiliser les programmes avec
une souris ou un écran tactile.Matériel
OS
Applications
Utilisateurs
Invite de commandes
♠ C'est la version « mode texte » du SE qui permet d 'exécuter des
processus.
19
IUT La Rochelle2010-2011
Interpréteur de commande
♠ Le programme qui est exécuté pour réaliser l'invite de commande
(prompt) est un interpréteur de commandes (shell).
♠ Le shell attend que l'utilisateur tape une commande au clavier,
analyse la chaîne et affiche son résultat à l'écran.
Windows :commande.com (MSDOS, W95, W98)cmd.exe (NT, W2000, XP, 7)
UNIX, Linux : bash, sh, ksh, zsh, ...
C:\Users\jamal> dirjamal@Se > ls
20
IUT La Rochelle2010-2011
Format d'une commande
♠ Une commande (dans la plupart des cas) est formée de deux parties
séparées par un espace :
✔ Le nom de la commande.
✔ Le(s) argument(s) séparé(s) par des espaces.
Exemples.
C:\Users\Jamal>dirLe volume dans le lecteur C s'appelle OS Le numéro de série du volume est 969A-83B7
Répertoire de C:\Users\Jamal
27/04/2010 16:05 <REP> .27/04/2010 16:05 <REP> ..27/04/2010 15:59 <REP> .rurple17/05/2010 07:42 <REP> Desktop29/04/2010 07:16 <REP> Documents29/04/2010 07:16 <REP> Pictures
1 fichier(s) 156 octets 15 Rép(s) 113 465 561 088 octets libres
Windows
Jamal@Se >ls -l -a Reptotal 8drwxr-xr-x 2 jamal users 4096 mai 28 11:55 .drwxr-xr-x 2 jamal users 4096 mai 28 12:30 ..-rwxr-xr-x 1 jamal users 250 mai 30 10:55 ff-rwxr-xr-x 1 jamal users 30 juin 28 23:55 test
Jamal@Se >
Linux
21
IUT La Rochelle2010-2011
Demande d'aide sur une commande
Windows
♠ Sous Linux/UNIX, deux choix pour avoir l'aide sur une commande :✔ man cmd ✔cmd --help♠ Sous Windows :✔ c'est la commande helpC:\Users\Jamal>help dirAffiche une liste de fichiers et de sous-répertoires dans un répertoire.DIR [lecteur:][chemin][nom_de_fichier] [/A[[:]attributs]] [/B] [/C] [/D] [/L] [/N] [/O[[:]tri]] [/P] [/Q] [/R] [/S] [/T[[:]heure]] [/W] [/X] [/4] [lecteur:][chemin][nom_de_fichier] Spécifie le lecteur, le répertoire et/ou fichiers à lister. /A Affiche les fichiers dotés des attributs spécifiés. attributs D Répertoires R Lecture seule H Caché A Archive S Système I Fichiers indexés sans contenu L Points d'analyse - Préfixe de négation /B Utilise le format abrégé (noms des fichiers)....
22
IUT La Rochelle2010-2011
Demande d'aide sur une commande
Jamal@Se >man 1 ls User Commands LS(1)NAME ls - list directory contentsSYNOPSIS ls [OPTION]... [FILE]...DESCRIPTION List information about the FILEs (the current directory by default). Sort entries alphabetically if none of -cftuvSUX nor --sort. Mandatory arguments to long options are mandatory for short options too. -a, --all do not ignore entries starting with . -A, --almost-all do not list implied . And ..
…Jamal@Se >cp --helpUsage: cp [OPTION]... [-T] SOURCE CIBLE ou: cp [OPTION]... SOURCE... REPERTOIRE ou: cp [OPTION]... --target-directory=REPERTOIRE SOURCE...Copier la SOURCE vers la DESTINATION, ou de multiples SOURCES vers un REPERTOIRE.Les arguments obligatoires pour les options de formes longues le sont aussi pour les options de formes courtes. -a, --archive same as -dR --preserve=all ...
Linux
Numéro du manuel
Commande
23
IUT La Rochelle2010-2011
Demande d'aide sur une commande
♠ Format :ls [OPTION] … [FILE] …cp [OPTION] … SOURCE CIBLE
Les mots entre crochets ([]) indiquent que les mots sont optionnels.
Les … indiquent que l'on peut ajouter d'autres arguments.
♠ 8 manuels (UNIX/Linux)
manuel 1 : Les commandes utilisateurmanuel 2 : Les appels systèmesmanuel 3 : Les fonctions des bibliothèquesmanuel 4 : Fichiers spéciauxmanuel 5 : Format des fichiers et protocolesmanuel 6 : Commandes des jeuxmanuel 7 : Les pilotesmanuel 8 : Commandes d'administration
24
IUT La Rochelle2010-2011
Quelques propriétés de BASH (Bourne-Again SHelll)
♠ Pour séparer des commandes sur une même ligne, on utilise le
caractère ; ls -l; pwd
♠ Le caractère \ permet de passer à la ligne sans avoir terminé la
commande.ls -l /home/jdupont\/Se/TP01
♠ Quelques mots sont réservés : ! case do done elif else esac fi for function if in select then until while { } time [[ ]]
25
IUT La Rochelle2010-2011
Système de Gestion de Fichiers
♠ C'est une structure de données permettant de stocker les informations
et de les organiser dans des fichiers sur ce que l'on appelle des
mémoires secondaires (disque dur, disquette, CD-ROM, clé USB,
disques SSD, etc.).
♠ Les fonctions d'un SGF sont la manipulation des fichiers, l'allocation
de la place, la localisation des fichiers, la sécurité et le contrôle des
fichiers.♠ Quelques systèmes de fichiers :
✔ FAT32, VFAT, NTFS✔ EXT4, ✔ HFS, ReiserFS✔ VMFS, ISO 9660✔ NCP, NFS, SMB
26
IUT La Rochelle2010-2011
Système de Gestion de Fichiers
♠ Dans un SGF, on a toujours une structure arborescente avec des
répertoires (directory) et des fichiers (file).
♠ Un fichier contient des données numériques avec un format
dépendant du programme utilisé pour le créer.
♠ Un répertoire peut contenir des fichiers et/ou des répertoires.
♠ La racine est le répertoire le plus haut dans l'arborescente.
✔ / (slash) sous Linux/UNIX
✔ La lettre du lecteur sous Windows, par exemple c:
27
IUT La Rochelle2010-2011
Windows
/
ls
bin etc home usrlib
cp
ps
group
invitejojo
Se
f1.txt
Prog
p.cpp
Doc
p.txt
lib
lib
passwd
f1.txt
Linux
Système de Gestion de Fichiers
28
IUT La Rochelle2010-2011
SGF : Les noms de fichier
♠ Les noms de fichier s'écrivent avec les lettres de l'alphabet, mais
certains caractères sont interdits suivant le shell utilisé.
✔ Sous Windows : / \ : * ? " < > |✔ Sous Linux/UNIX : /
Les caractères spéciaux / * ? < > |' ` " doivent être précédés
par le caractère \♠ Sous Windows, le SGF ne fait pas la différence entre majuscule et
minuscule dans un nom de fichier (cours.doc et COURS.doc sont deux
fichiers identiques).
♠ Sous Linux/UNIX le SGF fait la différence entre majuscule et minuscule
(Tp1.doc et tp1.doc sont deux fichiers différents).
29
IUT La Rochelle2010-2011
SGF : Les noms de fichier
♠ L'extension d'un fichier (fin du nom après le .) permet de l'associer à
une application.
✔ .doc (MS Word)
✔ .pdf (Adobe Acrobat)
✔ . html (Navigateur Web)
♠ Lorsqu'un nom de fichier contient des espaces, on doit les protéger
pour que le Shell puisse les interpréter et ne pas les confondre pas
avec un argument.
✔ Sous Windows, il faut utiliser "✔ Sous Linux/UNIX, on peut utiliser " ou '
Exemples :
✔dir "C:\Mes Documents\Se\TD 1.doc"
✔ ls -l "/home/invite/Se/TD 1.doc"
30
IUT La Rochelle2010-2011
SGF : Nom absolu et nom relative
♠ Le nom absolu d'un fichier ou d'un répertoire est obtenu avec le nom de
tous les répertoires à «traverser» depuis la racine jusqu'au fichier ou
répertoire désiré.
♠ Le caractère de séparation des noms de répertoire à utiliser dans le
nom absolu est :
✔ / (slash) sous Linux/UNIX
✔ \ (anti-slash) sous Windows
✔ désigne aussi la racine de l'arborescence sous Linux/UNIX ou du
lecteur courant sous Windows.
♠ Exemples
✔ Linux : /home/invite/Se/f1.txt✔ Windows : C:\TEMP\Plugin.ice
31
IUT La Rochelle2010-2011
SGF : Nom absolu et nom relative
♠ Un nom de fichier qui ne commence pas par / est relatif. Il est interprété
en partant du répertoire courant.
♠ Le répertoire courant est initialement votre répertoire personnel (home)
ou le répertoire dans lequel vous vous trouvez.
♠ Exemples :
Si on se trouve dans /home/invite
✔ Prog/p.cppest un nom relatif
✔ /home/invite/Prog/p.cpp est un nom absolu
♠ Le répertoire courant est noté .
♠ Le répertoire parent est noté ..
♠ Le répertoire personnel (home) est noté ~
32
IUT La Rochelle2010-2011
SGF : Nom absolu et nom relative
♠ Pour faciliter la gestion et pour ne pas être embêté par des fichiers ou
des répertoires qu'il n'est pas important de les voir constamment.
Linux/UNIX vous permet d'appliquer le concept d'invisibilité sur les noms
des fichiers ou des répertoires.
♠ Pour qu'un fichier ou répertoire sot invisible, il suffit que son nom
commence par un point (.), par exemple .bashrc .profile .KDE
♠ Il faut ajouter une option à la commande ls pour les afficher à l'écran.
♠ Ce principe s'applique sur tous les types de fichiers. Un répertoire ou un
lien (symbolique ou non) peut être aussi invisible.
33
IUT La Rochelle2010-2011
Quelques commandes
♠ Afficher le nom du répertoire de travail en cours.✔ pwd [option]
♠ Changer le répertoire de travail.✔ cd [répertoire]
♠ Afficher des informations sur l'utilisateur✔ id [option] … [utilisateur]
Jamal@Se >iduid=1000(Jamal) gid=100(users) groupes=33(video)Jamal@Se >mkdir TestJamal@Se >
♠ Créer le(s) répertoire(s) s'il(s) n'existe(nt) pas.✔ mkdir [option] … répertoire …✔Sous Windows✔mkdir [lecteur:]chemin✔md [lecteur:]chemin
Jamal@Se >cd RepJamal@Se/Rep >cd ..Jamal@Se >cd .Jamal@Se >cd ~Jamal@~ >
Jamal@Se >pwd/home/Jamal/SeJamal@Se >
34
IUT La Rochelle2010-2011
Quelques commandes
♠ Afficher des informations sur une entrée dans SGF ls [options] ... [fichier] …✔ Options :✔ -l (format détaillé)✔ -a (afficher les entrées commençant par .) (all)✔ -i (Afficher le numéro d'index (inode) de chaque entrée) ✔ ...
Jamal@Se> lsfichier RepJamal@Se> ls -ltotal 4-rw-r--r-- 1 jkhamlic users 0 mai 28 11:55 fichierdrwxr-xr-x 2 jkhamlic users 4096 mai 28 11:55 RepJamal@Se> ls -l -atotal 12drwxr-xr-x 3 jkhamlic users 4096 mai 28 11:55 .drwxr-xr-x 38 jkhamlic users 4096 mai 31 08:28 ..-rw-r--r-- 1 jkhamlic users 0 mai 28 11:55 fichierdrwxr-xr-x 2 jkhamlic users 4096 mai 28 11:55 RepJamal@Se> ls -l -aitotal 12128116 drwxr-xr-x 3 jkhamlic users 4096 mai 28 11:55 . 8001 drwxr-xr-x 38 jkhamlic users 4096 mai 31 08:28 ..128117 -rw-r--r-- 1 jkhamlic users 0 mai 28 11:55 fichier128118 drwxr-xr-x 2 jkhamlic users 4096 mai 28 11:55 RepJamal@Se>
35
IUT La Rochelle2010-2011
Quelques commandes
♠ Création d'un fichier
Elle dépend de l'application, en général la commande est de la forme :
app fichier
Exemples :
✔ touch [option] ... [fichier] …
Modifie la date d'un fichier et s'il n'existe pas il sera créé.
✔ vi [option] [fichier]
✔ gedit [option] [fichier]
✔ g++ [option] [fichier]
Jamal@Se >touch f3Jamal@Se >lsFichier f3 RepJamal@Se >gedit f5
36
IUT La Rochelle2010-2011
Quelques commandes
♠ Effacement d'un répertoire
✔ Sous Linux/UNIX
rmdir [option] ... répertoire …
♠ Sous WindowsRMDIR [/S][/Q][lecteur:]cheminRD [/S][/Q][lecteur:]chemin
✔ En général il faut que le répertoire soit vide.
♠ Effacement d'un fichier
✔ Sous Linux/UNIX
rm [option] ... fichier …
Sous WindowsDEL [/P] [/F] [/S] [/Q] [/A[[:]attributs]] nomsERASE [/P] [/F] [/S] [/Q] [/A[[:]attributs]] noms
Jamal@Se >rmdir RepJamal@Se >lsFichier f3
Jamal@Se >rm f3Jamal@Se >lsFichierJamal@Se >mkdir RepJamal@Se >touch Rep/f5Jamal@Se >rm -r Rep
37
IUT La Rochelle2010-2011
Notion de droits
♠ Une entrée (fichier/répertoire) dans le SGF est une suite finie de bytes
(octets), matérialisée par des blocs disques et un inode qui contient les
propriétés de l'entrée.
Un inode contient les informations suivantes :
✔ localisation sur le disque,
✔ propriétaire et groupe propriétaire,
✔ droits d'accès,
✔ taille,
✔ date de création,
✔ ...
38
IUT La Rochelle2010-2011
Notion de droits
♠ UID et GID
✔ L'OS utilise un numéro pour identifier un utilisateur du système UID
(User-ID).
✔ Un utilisateur appartient à un groupe, ce groupe est identifié par l'OS
par un numéro GID (Group-ID).
✔ L'OS garde une liste de correspondance entre les numéros et les
noms.
♠ Un fichier ou un répertoire appartient toujours à un utilisateur, à un
groupe et les autres.
✔ L'utilisateur (u) est son propriétaire, bien souvent son créateur.
✔ Le groupe (g) un ensemble d'utilisateurs.
✔Les autres (o), tous les autres (others).
39
IUT La Rochelle2010-2011
Notion de droits
♠ 3 types de droits
✔ r : lecture (read) pour un fichier, lister pour un répertoire.
✔ w : écriture (write), modification, effacement, ...
✔ x : exécution (excute), traverser pour un répertoire
981291 d rwx r-x r-x 2 Anne ensinfo 4096 nov 6 10:49 RepSe
n° inode
Type(-, d, s, b, c, l)
droits pour le propriétaire
(r, w, x)
droits pour le groupe (r, w, x)
droits pour les autres (r, w, x)
nb de liens
propriétaire
groupe
taille
date
heure
nom
40
IUT La Rochelle2010-2011
Notion de droits
♠ Commande chmod✔ Elle permet de modifier les droits d'un fichier ou d'un répertoire.● Syntaxe 1: chmod [OPTION] … MODE[,MODE] … FILE …MODE : [ugoa...][[+-=][rwxXstugo...]...][,...]u: s'applique au propriétaire, g : s'applique au groupe, o: s'applique aux autres, a : s'applique à tous.+ : force le droit, - : annule le droit, = : fixe les droits spécifiésr : lecture, w : écriture, x : exécution (accès pour les répertoires), X : exécution pour les répertoires seulement.
● Exemple :chmod -R u+rwx,g=rx,o+rw-x /home/invite
-R pour récursive
41
IUT La Rochelle2010-2011
Notion de droits
• Syntaxe 2:chmod [OPTION] … OCTAL_MODE FILE …OCTAL_MODE : écriture en base 8 des droits par paquet de 3 bits.rw- r-- r-x110 100 101 (1 quand la lettre est présente)
421 421 421 (puissance de 2 par paquets de 3)
420 400 401 6 4 5
● Exemple :
Binaire ----- Droit ----- Octal 000 -----(---)------0 001 -----(--x)------1 010 -----(-w-)------2 011 -----(-wx)------3 100 -----(r--)------4 101 -----(r-x)------5 110 -----(rw-)------6 111 -----(rwx)------7chmod 645 fichier1
42
IUT La Rochelle2010-2011
Notion de droits
♠ Commande : umask✔ Elle permet de fixer les droits par défaut.
✔ Elle masque bit à bit les droits (mode octal) mais pris en complément
à 1.
✔Exemple : umask 022 Donne en binaire 000 010 010 Soit en complément à 1 : 111 101 101 Les droits seront donc : rwx r-x r-x✔ La commande umask n'a d'effet que sur les fichiers ou et les
répertoires qui vont être créés.
43
IUT La Rochelle2010-2011
Notion de droits
♠ Commandes : chown, chgrp✔ chown change le nom d'utilisateur d'un fichier ou d'un répertoire.
Syntaxe : chown [OPTION]...OWNER[:[GROUP]] FILE Exemple : chown jdupont invite
✔chgrp change le nom du groupe d'un fichier ou d'un répertoire.
Syntaxe : chgrp [OPTION]...GROUP FILE Exemple : chgrp -R rt1 /home/invite
✔Pour une question de sécurité, seul l'administrateur (root) peut
utiliser ces commandes.
44
IUT La Rochelle2010-2011
Salles RT
Salle Type RAM Système installé Nombre Libre service
C204 Dell GX 270 1Go ✔ Windows XP 7 Non
C205 HP 4Go ✔ Windows XP 6 Non
C206 Dell GX 270 1Go ✔ Windows 200✔ Linux : Gento
6 Non
C209 HP 4Go ✔ Windows Vista✔ Linux : Fedora 13
18 Oui
C302 Dell GX 240 1Go ✔ Windows 200✔ Linux : Gento
6 Non
C304 Dell GX 760 4Go ✔ Windows 7✔ Linux : Ubuntu
12 Non
C307 Dell GX 755 4Go ✔ Windows 7✔ Linux : Fedora 12
9 Non
C309 Dell GX 755 4Go ✔ Windows XP✔ Linux : Fedora 13
14 Oui
♠ Les autres machines connectée au réseau de l'université
♠ Wifi
45
IUT La Rochelle2010-2011
Copie, déplacer, lier
♠ Commande : cp✔ cp copie un fichier ou un répertoire en tenant compte de la valeur de
umask.
Syntaxe : cp [OPTION]... SOURCE... DEST Exemple :
Jamal@Se >ls -litotal 412455 -rwxr-xr-x 1 jamal users 250 mai 30 10:55 ff15465 -rwxr-xr-x 2 jamal users 30 juin 28 23:55 RepJamal@Se >cp ff ff1Jamal@Se >cp -r Rep Rep1Jamal@Se >ls -litotal 512455 -rwxr-xr-x 1 jamal users 250 mai 30 10:55 ff15845 -rwxr-xr-x 1 jamal users 15 sep 28 13:51 ff115465 -rwxr-xr-x 2 jamal users 30 juin 28 23:55 Rep17465 -rwxr-xr-x 2 jamal users 15 sep 28 13:55 Rep1Jamal@Se >
46
IUT La Rochelle2010-2011
Copie, déplacer, lier
♠ Commande : mv✔ mv renomme et/ou déplace un fichier ou un répertoire.
Syntaxe : mv [OPTION]... SOURCE... DEST Exemple :
Jamal@Se >ls -litotal 512455 -rwxr-xr-x 1 jamal users 250 mai 30 10:55 ff15845 -rwxr-xr-x 1 jamal users 15 sep 28 13:51 ff115465 -rwxr-xr-x 2 jamal users 30 juin 28 23:55 Rep17465 -rwxr-xr-x 2 jamal users 15 sep 28 13:55 Rep1Jamal@Se >mv ff1 ff2Jamal@Se >mv ff RepJamal@Se >ls -litotal 515845 -rwxr-xr-x 1 jamal users 15 sep 28 13:51 ff215465 -rwxr-xr-x 2 jamal users 30 juin 28 23:55 Rep17465 -rwxr-xr-x 2 jamal users 15 sep 28 13:55 Rep1
La commande mv conserve les droits et le propriétaire.
47
IUT La Rochelle2010-2011
Copie, déplacer, lier
♠ Les liens sont utiles si on souhaite qu'un fichier apparaisse dans
plusieurs répertoires, sous un nom différent ou dans plusieurs SGF.
Ceci évite une perte de place (cas d'une copie : cp).
♠ Deux types de lien sont possibles :
♠Les liens physiques associent
deux ou plusieurs fichiers à un
même espace sur le disque, les
deux fichiers sont pourtant
indépendants.
usr home
f1
etud1
f1
/
etud2Volume /usr
Volume /home
Fichier d'inode N° 321
320 -rwxr-xr-x 2 etud1 rt1 6 Sep 45 8h50 f1320 -rwxr-xr-x 2 etud2 rt1 6 Sep 45 8h50 f1
48
IUT La Rochelle2010-2011
Copie, déplacer, lier
✔ Les liens symboliques sont des fichiers de petits taille qui ont une
existence propre sur le disque dur. Ces fichiers contiennent les références
des fichiers sources auxquelles ils correspondent.
usr home
cmd
etud1
/
etud2Volume /usr
Volume /home
bin
lrwxrwxrwx 1 etud1 rt1 6 Sep 3 9:33 cmd->/usr/bin
Lien symbolique
49
IUT La Rochelle2010-2011
♠ Commande : ln✔ Sans option, elle crée un lien physique.
✔ Avec option -s, elle crée un lien symbolique.
Syntaxe : ln [OPTION]... Cible NomDuLien Exemples :
Jamal@Se >ls -litotal 212455 -rwxr-xr-x 1 jamal users 250 mai 30 10:55 essaiJamal@Se >ln essai essai1Jamal@Se >ls -litotal 212455 -rwxr-xr-x 2 jamal users 250 mai 30 10:55 essai12455 -rwxr-xr-x 2 jamal users 250 juin 30 11:30 essai1Jamal@Se >ln -s essai essai2Jamal@Se >ls -litotal 212455 -rwxr-xr-x 2 jamal users 250 mai 30 10:55 essai12455 -rwxr-xr-x 2 jamal users 250 juin 30 11:30 essai112456 lrwxrwxrwx 1 jamal users 5 juin 30 11:37 essai2->essai
Copie, déplacer, lier
50
IUT La Rochelle2010-2011
♠ Le caractère * remplace n'importe quel caractère ou chaîne de
caractères dans un nom de fichier ou répertoire.
♠ Le caractère ? ne représente qu'un seul caractère.
Exemples :✔ Cas 1 : Afficher tous les fichiers dont le nom commence par la chaîne essai et se
termine par 0 ou n caractères.✔ Cas 2 : Afficher tous les fichiers dont le nom commence par 0 ou n caractères
suivis de la chaîne ess et se termine par 0 ou n caractères.✔ Cas 3 : Afficher tous les fichiers dont le nom commence par la chaîne essai et se
termine par 1 seul caractère.
Jamal@Se >lsessai essai1 essai2 essai112 essai132 ess essai358 abessa testJamal@Se >ls essai*essai essai1 essai2 essai112 essai132 essai358 Jamal@Se >ls *ess*essai essai1 essai2 essai112 essai132 ess essai358 abessaJamal@Se >ls essai?essai1 essai2Jamal@Se >
Caractères génériques
51
IUT La Rochelle2010-2011
♠ Chaque processus possède trois flux standards utilisés pour les
échanges avec un utilisateur ou un autre processus :
✔ l'entrée standard stdin (id = 0, c'est le clavier par défaut),
✔ la sortie standard stdout (id = 1, c'est l'écran par défaut),
✔ la sortie d'erreur standard stderr (id = 2, c'est l'écran par défaut).
♠ On peut rediriger des flux afin que le processus interagisse avec un
autre processus au lieu de l'utilisateur.
♠ Rediriger la sortie standard
✔ Avec le caractère >, on redirige la sortie standard dans un fichier.
✔ Exemple : ls -l > fichier
Le résultat de la commande ls -l sera redirigé vers le fichier au
lieu d'être affiché sur l'écran.
Redirection E/S et tube.
52
IUT La Rochelle2010-2011
♠ Rediriger la sortie standard avec ajout
✔ Avec le caractère >>, on redirige la sortie standard dans un fichier
sans écrasement du contenu.
✔ Exemple : pwd >> fichier
Le résultat de la commande pwd sera ajouté au contenu du fichier
au lieu d'être affiché sur l'écran.
♠ Rediriger la sortie d'erreur standard
✔ On utilise les mêmes caractères > et >>.
✔ Exemple : pwd 2 >> fichier
S'il y a erreur, au lieu d'être affichée sur le terminal, elle sera dirigée
vers le fichier.
Redirection E/S et tube.
53
IUT La Rochelle2010-2011
♠ Rediriger l'entrée standard
✔ Avec le caractère < on redirige l'entrée standard (clavier ou fichier)
vers un fichier ou une commande.
✔ Exemple : cat < fichier
L'entrée standard sera le fichier pour la commande cat.
♠ Tube
✔ Avec le caractère | on redirige la sortie d'une commande vers
l'entrée d'une autre commande (pas de création de fichier mais
passage par une zone mémoire du système).
✔ Exemple : ls -l | wc
Le résultat de la commande ls -l sera dirigé vers l'entrée de la
commande wc.
Redirection E/S et tube.
54
IUT La Rochelle2010-2011
♠ Commande wc✔ Elle compte le nombre de lignes, de mots et d'octets dans un fichier.
✔ Syntaxe : wc [OPTION]... [FILE]...✔ Exemple :
♠ Commande sort✔ Elle permet de trier les lignes contenu dans un fichier.
✔ Syntaxe : sort [OPTION]... [FILE]...OPTION peut être :
✔-b Saute les colonnes constituées de blancs.
✔-n Trie par ordre numérique.
✔-f Aucune différentiation n'est faite entre minuscules et majuscules.
✔-b Ignore les espaces placés en début de champ.
Commande de traitement d'un fichier
Jamal@Se >wc fichier3 15 250 fichierJamal@Se/ >
55
IUT La Rochelle2010-2011
♠ Commande tr✔ Traduire, compresser et/ou éliminer des caractères de l'entrée
standard, puis écriture sur la sortie standard.
✔ Syntaxe : tr [OPTION]... SET1 [SET2]✔ Exemple : tr [:lower:] [:upper:] < /etc/passwd
Affiche en majuscule le contenu du fichier /etc/passwd.
♠ Commande grep✔ Elle cherche dans un fichier les lignes contenant un motif donné.
✔ Syntaxe : grep [OPTION]... MOTIF [FICHIER] …✔ Exemple : grep -n "jdupont" /etc/passwd
Cherche dans le fichier /etc/passwd le motif "jdupont" et
affiche les lignes où ce motif apparaisse avec leur numéro.
Commande de traitement d'un fichier
56
IUT La Rochelle2010-2011
♠ L'exécution d'un programme en mémoire est un processus.
♠ Chaque processus a un père, celui qui l’a lancé.
♠ Le premier processus init est créé avec un PID de 1 ancêtre de
tous les processus.
♠ Lors de son exécution, un processus est caractérisé par son état.
Gestion des processus
Prêt
bloqué
ÉluRéveil
En attente duprocesseur
Élection
En exécution
FinBlocage
En attente deressource
Déblocage
57
IUT La Rochelle2010-2011
♠ Commande ps✔ Elle donne des informations sur les processus comme :
UID : id de l'utilisateur qui a lancé le processus PID : numéro du processus PPID : numéro du processus père C : facteur de priorité STIME : heure de lancement du processus TTY : nom du terminal d'attachement TIME : durée de traitement du processus CMD : nom du processus
✔ Syntaxe : ps [OPTION]✔ OPTION :
Voir man TP
Gestions des processus
58
IUT La Rochelle2010-2011
♠ Exemple :[Fedora-13~]$ ps PID TTY TIME CMD 1992 pts/1 00:00:00 bash 2014 pts/1 00:00:00 ps
[Fedora-13~]$ ps -lF S UID PID PPID C PRI … TTY TIME CMD0 S 500 1992 1990 0 80 … pts/1 00:00:00 bash0 R 500 2015 1992 0 80 … pts/1 00:00:00 ps
[Fedora-13~]$ kate file.cpp &[Fedora-13~]$ ps -fUID PID PPID C STIME TTY TIME CMDInvite 1992 1990 0 09:54 pts/1 00:00:00 /bin/bashInvite 2016 1992 1 09:58 pts/1 00:00:00 kate file.cppInvite 2022 1992 0 09:58 pts/1 00:00:00 ps -f[invite@Fedora-13KDE ~]$
Gestions des processus
59
IUT La Rochelle2010-2011
♠ Commande kill✔ Elle envoie un signal à un processus.
✔ Elle est utilisée pour arrêter un processus.
✔ Un utilisateur ne peut arrêter que les processus qui lui appartiennent.
✔ Seul l'administrateur système a le droit d'arrêter un processus ne lui
appartenant pas.
✔ Syntaxe : kill [-SIGNAL] PID...SIGNAL peut être
1 (HUP) : réinitialisation
2 (INT) : interruption (Ctrl-C)
3 (STOP) : stopper (Ctrl-AlrGr \)
9 (KILL) : terminaison forcée
Gestions des processus
60
IUT La Rochelle2010-2011
✔ Exemple :
Gestions des processus
...:~> psPID TTY TIME CMD4581 pts/2 00:00:00 bash4618 pts/2 00:00:00 ps...:~>ps -fUID PID PPID C STIME TTY TIME CMDjkhamlic 4581 4580 0 06:55 pts/2 00:00:00 -bashjkhamlic 4643 4581 0 07:01 pts/2 00:00:00 ps -f...:~>ps -efUID PID PPID C STIME TTY TIME CMDroot 1 0 0 06:18 ? 00:00:01 init [5]...jkhamlic 4234 1 0 06:30 ? 00:00:00 /bin/sh /usr/ooo-2.0/program/sofficejkhamlic 4248 4234 1 06:30 ? 00:00:19 /usr/ooo-2.0/program/soffice.binjkhamlic 3903 1 0 06:20 ? 00:00:00 kdeinit Running......jkhamlic 4580 3903 0 06:55 ? 00:00:00 konsole [kdeinit] -lsjkhamlic 4581 4580 0 06:55 pts/2 00:00:00 -bashjkhamlic 4646 4581 0 07:02 pts/2 00:00:00 ps -ef...:~>kill -9 4234...:~>ps -efroot 1 0 0 06:18 ? 00:00:01 init [5]...jkhamlic 3903 1 0 06:20 ? 00:00:00 kdeinit Running...jkhamlic 4580 3903 0 06:55 ? 00:00:00 konsole [kdeinit] -lsjkhamlic 4581 4580 0 06:55 pts/2 00:00:00 -bashjkhamlic 4646 4581 0 07:02 pts/2 00:00:00 ps -ef
61
IUT La Rochelle2010-2011
♠ Lancement d'un processus en tâche de fond (background)
✔ Ceci permet d'obtenir la main pour faire autre chose.
✔ Exemple :
...:~> gedit essai &
[1] 5340
...:~>
Le shell vous donne immédiatement la main, et affiche le numéro du
PID du processus lancé.
Pour afficher les processus lancés en tache de fond, on peut utiliser
la commande jobs.
...:~> jobs
[1]+ Running gedit essai &
...:~>
Gestions des processus
62
IUT La Rochelle2010-2011
✔ On peut ramener le processus en foreground
...:~> fg %1
gedit essai
Ctrl_C
On peut aussi basculer de foreground à background.
...:~> gedit essai
Ctrl_Z
[1]+ Stopped gedit essai
...:~>bg %1
Gestions des processus
63
IUT La Rochelle2010-2011
♠ bash est un interpréteur de commande mais on peut l'utiliser comme
langage de programmation.
♠ Il est indispensable dans l'administration et l'utilisation de Linux/UNIX.
♠ Il existe d'autres versions de langage de commande(shell) : sh
(ancêtre de bash), csh (C shell), ksh (Korn shell), zsh,...
♠ Le bash manipule deux types de commandes :
✔ Commandes externes dont le code exécutable est situé sur le
disque (ls, cd, cp, cat, chmod, ...).
✔ Commandes internes dont le code fait partie du processus shell
(alias, pwd, umask, times, ...).
Les scripts
64
IUT La Rochelle2010-2011
♠ Les variables
✔ Il existe des variables dont le nom est prédéfini comme : HOME : définit le répertoire de l'utilisateurPS1 : définit l'invite du shellPATH : chemin des commandes à exécuterUSER : définit le nom de l'utilisateurHISTFILE: fichier où seront stockées les dernières commandes? : définit le code de retour de la dernière commande
✔ L'utilisateur peut définir d'autres variablesvar='Cours SE'✔ Pour visualiser le contenu d'une variable :echo $PATH
echo $var
Les scripts
65
IUT La Rochelle2010-2011
✔ Pour propager la valeur d'une variable à tous les sous shell, on
utilisera export.
✔ Exemple :Exemple :
Les scripts
Jamal@Se >a="Bonjour"Jamal@Se >echo $aBonjourJamal@Se >bashJamal@Se >echo $aJamal@Se >exitJamal@Se >export aJamal@Se >bashJamal@Se >echo $aBonjourJamal@Se >exitJamal@Se >echo $PATH/usr/bin:/bin:/usr/local/binJamal@Se >export PATH=$PATH:/opt/invite/bin
✔ Sous windows il faut utiliser set✔ Exemple :Exemple :setset PATH=C:\WINNT\system32; PATH=C:\WINNT\system32;C:\WINNTC:\WINNTsetset PATH=%PATH%;C:\Apps\Java\bin PATH=%PATH%;C:\Apps\Java\bin
66
IUT La Rochelle2010-2011
♠ Les expressions arithmétiques
Il est possible d'effectuer des calculs.
Exemple :
♠ Exécution conditionnelle ifPour séparer un cas sur valeur booléenne, on utilise l'instruction if.if [ condition ]then action1else action2fiSi la condition est vraie on exécute action1 sinon on exécute action2
Les scripts
Jamal@Se >n=5Jamal@Se >echo $((n + 1))6Jamal@Se >p=$((n * 5 / 2))Jamal@Se >echo $p12
67
IUT La Rochelle2010-2011
♠ Boucle for
Elle permet d'exécuter une ou une suite d'instructions avec une variable
parcourant une suite de valeurs.for var in .html .cpp .txt do
echo $vardone
♠ Définition de fonctionPour regrouper un nombre d'actions.
uneFonction() {
echo "Une façon d'écrire une fonction..."}
#Version 2function uneFonction {
echo "Une autre façon d'écrire une fonction..."}
Les scripts
68
IUT La Rochelle2010-2011
♠ Opérateurs de comparaison
Les scripts
Opérateur Description Exemple
Opérateurs sur des fichiers
vrai si fichier existe vrai si fichier est un répertoire vrai si fichier est un fichier ordinaire vrai si fichier est un lien symbolique vrai si fichier est lisible (r) vrai si fichier est modifiable (w) vrai si fichier est exécutable (x) vrai si fich1 plus récent que fich2 vrai si fich1 plus ancien que fich2
Opérateurs sur les chaînes
vrai si la chaîne est vide vrai si la chaîne est non vide vrai si les deux chaînes sont égales vrai si les deux chaînes sont différentes
Opérateurs de comparaison numérique
Égalité ( == )Inégalité ( != )inférieur ( < ) inférieur ou égal ( <= ) supérieur ( > ) supérieur ou égal ( >= )
-e fichier [ -e /etc/shadow ] -d fichier [ -d /bin ] -f fichier [ -f .profile ] -l fichier [ -L /lib/libc.so.6 ] -r fichier [ -r /boot/vmlinuz ] -w fichier [ -w /var/log ] -x fichier [ -x /sbin/halt ] fich1 -nt fich2 [ /tmp/foo -nt /tmp/bar ] fich1 -ot fich2 [ /tmp/foo -ot /tmp/bar ]
-z chaîne [ -z "$VAR" ]-n chaîne [ -n "$VAR" ]chaine1 = chaine2 [ "$VAR" = "Zanzibar" ]chaîne1 != chaîne2 [ "$VAR" != "Ispahan" ]
num1 -eq num2 [ $nombre -eq 27 ] num1 -ne num2 [ $nombre -ne 27 ] num1 -lt num2 [ $nombre -lt 27 ] num1 -le num2 [ $nombre -le 27 ] num1 -gt num2 [ $nombre -gt 27 ] num1 -ge num2 [ $nombre -ge 27 ]
69
IUT La Rochelle2010-2011
♠ Arguments de la ligne de commande
✔ Lorsqu'on entre une commande dans un shell, ce dernier sépare le
nom de la commande des arguments.
✔ Les programmes peuvent utiliser les arguments (options, noms de
fichiers à traiter, etc).
✔ En bash, les arguments de la ligne de commande sont stockés dans
des variables spéciales :$0, $1, ... les arguments$# le nombre d'arguments$* tous les arguments
✔Exemple : ls -i -l Rep$# = 3$0 = ls, $1 = -i, $2 = -l, $3 = Rep$* = -i -l Rep
Les scripts
70
IUT La Rochelle2010-2011
♠ Scripts shell ou fichier de commande
✔ Un script shell est un simple fichier texte exécutable et commençant #!/bin/bash✔ Exemple 1:
Écrire un fichier de commande qui liste le contenu de son paramètre
deux cas : fichier ou répertoire.
Les scripts
#!/bin/bashif [ -f $1 ]
then echo $1 est un fichier cat $1
else if [ -d $1 ] then
echo $1 est un répertoire ls -l $1fi
fi
gedit exemple1
chmod 700 exemple1./exemple1 fichou./exemple1 rep
71
IUT La Rochelle2010-2011
✔ Exemple 2:
Écrire un fichier de commande qui affiche la liste des fichiers
exécutables qui se trouvent dans le répertoire courant.
Les scripts
#!/bin/bashfor var in `ls` do if [ -x $var ]
then echo $var fi
done
gedit exemple2
chmod 700 exemple2 ./exemple2
✔ Remarques:● Pour mettre un commentaire dans un fichier script, il faut précéder
le commentaire par le caractère #● Certains caractères sont protégés. Pour les utiliser dans un script, il
faut les protéger par le caractère \echo "Le fichier n\'existe pas"
72
IUT La Rochelle2010-2011
♠ Commande find✔ Elle permet de rechercher des fichiers dans une hiérarchie de
répertoires selon certains critères.
✔ Syntaxe : find [chemin...] [expression]expression est constituée d'options, de tests et d'actions
✔Exemple : find /usr -type d -name bin -print
Cherche seulement les répertoires dont le nom est bin et les
afficher. find -name 'temp*' -print -exec rm {} \;
Cherche tous fichiers dont le nom commence par temp , affiche puis
les efface.
Autres commandes
73
IUT La Rochelle2010-2011
♠ Commande cut✔ Elle permet de couper les champs sélectionnés de chaque ligne d’un
fichier.
✔ Syntaxe : cut [OPTION]... [FILE]...OPTION peut être
-d : indique le délimiteur
-f : indique le numéro du champ
Voir man pour les autres options
✔Exemple :cut -d: -f3 /etc/passwdAffichera le 3ème champ du fichier /etc/passwd, dont le
séparateur de champs est le caractère :
Autres commandes
74
IUT La Rochelle2010-2011
♠ Commande head✔ Elle permet d'afficher les 10 premières lignes par défaut d'un fichier.
✔ Syntaxe : head [OPTION]... [FILE]...OPTION peut être :
-n : indique le nombre de ligne à afficher
Voir man pour les autres options
✔Exemple :head -3 /etc/passwdAffichera les 3 premières lignes du fichier /etc/passwd.
Autres commandes
75
IUT La Rochelle2010-2011
♠ Commande tail✔ Elle permet d'afficher les 10 dernières lignes par défaut d'un fichier.
✔ Syntaxe : tail [OPTION]... [FILE]...OPTION peut être
-n : indique le nombre de ligne à afficher
Voir man pour les autres options
✔Exemple :tail -1 /etc/passwdAffichera la dernière ligne du fichier /etc/passwd.
Autres commandes
76
IUT La Rochelle2010-2011
Éditeur vi
♠ vi est un éditeur de texte en mode texte plein écran écrit par Bill Joy
en 1976 sur une des premières versions de la distribution Unix BSD.
♠ Il est présent sur la majorité des systèmes Linux/UNIX actuels.
♠ vi est un éditeur modal, c'est-à-dire que la signification des boutons
et des touches changent selon le mode dans lequel il se trouve.
♠ En mode insertion, le texte tapé est inséré dans le document.
♠ En mode commande, de nombreuses opérations peuvent être
effectuées en série avec des séquences de touches simples, sans qu'il
soit nécessaire de maintenir les touches Alt ou Ctrl enfoncées.
♠ Pour passer à un autre mode, il faut appuyer sur la touche Echap.
♠ Utilisation : voir TP
77
Deux modes de base :✔ Mode commande✔ Mode insertion
Quand vous entrez dans vi, vous être en mode commande jusqu'à ce que vous entriez un code d'entrée de texte (comme i, a, s ou o).
En mode insertion : [Ctrl] [H] ou [<-] pour corriger.Pour changer de mode : appuyer sur la touche [Echap]
Sauvegarde :vi nomFichier : Créer un fichier de nom nomFichier.[Echap], puis :q! : Quitter le programme sans sauvegarder.[Echap], puis :wq : Sauvegarder.[Echap], puis :w! NomFichier : Remplacer le contenu de nomFichier par le fichier courant.[Echap], puis :x,y w nomFichier : Sauvegardez une partie du texte comprise entre ligne x et ligne y.
i : Insérer des caractères avant le curseur.I : Insérer des caractères avant le premier caractère de la ligne.l : Déplacer le curseur vers la droite.j : Déplacer le curseur vers le bas.k : Déplacer le curseur vers le haut.h : Déplacer le curseur vers la gauche.a : Ajouter du texte après le curseur.A : Ajouter des caractères à la fin de la ligne.o : Créer une nouvelle ligne sous le curseur.O : Créer une nouvelle ligne au-dessus du curseur.x : Supprimer le caractère qui se trouve à la position du curseur.nx : Supprimer n caractères à partir du curseur.dw : Supprimer les caractères compris entre le curseur et le début du mot suivant ou le
premier signe de ponctuation.dW : Supprimer les caractères compris entre le curseur et le début du mot suivant.ndw : Supprimer les caractères compris entre le curseur et le début du n ième mot
suivant ou le premier signe de ponctuation.dd : Supprimer la ligne courante.ndd : Supprimer les n lignes suivantes, y compris la ligne courante.D : Supprimer les caractères compris entre le curseur et la ligne courante.d0 : Supprimer les caractères compris entre le curseur et le début de la ligne courante.d1G : Supprimer toutes les lignes jusqu'au début du fichier, y compris la ligne courante.dG : Supprimer toutes les lignes jusqu'à la fin du fichier, y compris la ligne courante.u : Annuler la dernière commande exécutée ou les dernières caractères entrés.U : Annuler tous les changements apportés à la ligne courante.
Déplacement et copie de texte :(1) Appuyer sur [Echap],(2) Supprimer, à l'aide d'une seule commande de suppression, le bloc de texte à déplacer,(3) Déplacer le curseur jusqu'à la position désirée,(4) Exécuter la commande d'insertion p
Copie de texte :(1) Appuyer sur[Echap],(2) Amener le curseur jusqu'à la première ligne du texte à copier,(3) Entrer yy (ou nyy) pour copier le texte,(4) Déplacer le texte jusqu'à la position désirée,(5) Exécuter la commande d'insertion p.
Impression d'un fichier :[Echap], puis :!lp % : Imprimer le fichier en cours.[Echap], puis :!lp nomFichier : Imprimer le fichier de nom nomfichier.
Recherche d'un fichier :/ chaîne : rechercher la chaîne « chaîne » vers l'avant à partir de la position du curseur.? chaîne : rechercher la chaîne « chaîne » vers l'arrière à partir de la position du curseur.
Pour poursuive la recherche des occurrences de la « chaîne », appuyer sur n (même direction ou N (direction opposée).
Remplacement et substitution de texte :r caractères : Remplacer le caractère qui se trouve à la position du curseur par
autres caractères.s caractères [Echap] : Substituer un ou plusieurs caractères au(x) caractère(s) existant(s).ns caractères [Echap] : Substituer n caractères au(x) caractère(s) existant(s).
Modification de l'environnement vi :[Echap], puis :set all : Affichage de toutes les options par défaut.[Echap], puis :set option : Modifier une option.[Echap], puis :set nooption : Annuler la définition d'une option.
Exemple :[Echap], puis :set showmode : Affichage du mode.[Echap], puis :set noshowmode : Annuler l'affichage du mode.[Echap], puis :set wm=n : Définir la largeur de la marge de droite (zéro, par défaut).[Echap], puis :set nu : Affichage des numéros de lignes.[Echap], puis :set nonu : Annuler l'affichage des numéros de lignes.[Echap], puis :set ai : Fait commencer chaque nouvelle ligne à la même colonne que
la ligne précédente.[Echap], puis :set ic : Ne pas tenir compte des majuscules et minuscules au moment
des recherches.[Echap], puis :set sm : Affichage de la parenthèse, (l'accolade ou crochet) que vous
avez ouvert lorsque vous la fermer.
L'éditeur vi (Visual Interactive)
IUT La Rochelle2010-2011
78
IUT La Rochelle2010-2011
Notion d'installation et d'administration
♠ Les différentes étapes :✔ Inventaire sur la machine : disque, écran, carte graphique, cartes
réseaux,...
✔ Choix du nombre de SE à installer
✔ DVD ou CD du SE avec leur numéro de série si nécessaire
✔ Partitionnement du disque dur
✔ Un ordre à respecter dans le cas où il y a plusieurs SE à installer
Windows 95 ou 98
Windows NT, 2000, Xp, Vista ou Seven
Linux : Suse, Ubuntu, Fedora, Debian, Mandriva, Gentoo, ...
✔ Installation des logiciels et paquetages
✔ Gestion des utilisateurs
✔ Configuration
79
IUT La Rochelle2010-2011
Notion d'installation et d'administration
♠ Partitionnement d'un disque✔ C'est l'opération qui consiste à partager le disque en plusieurs
parties nommées partitions.
✔ Sur chacune d'elles on peut installer un SE avec son propre système
de gestion de fichiers (SGF).
✔ Pourquoi ?Comme les SE n'ont pas toujours le même SGF, on est obligé de
partitionner le disque.
Windows 98 FAT32 (File Allocation Table)
Windows NT, XP, Vista, 7 NTFS (New Technology File System)
Linux EXT4fs (... EXTended file system)
Mac OS HFSX (Hierarchical File System)
80
IUT La Rochelle2010-2011
Notion d'installation et d'administration
✔ Avantages : Avoir plusieurs SE sur le même disque.
Échange des données d'application entre différentes SE.
Quand un système est en panne, l'autre n'est pas affecté.
✔ Contraintes : Pour tenir compte du nombre de partitions et de leur taille, le
disque contient une table de partition MBR(Master Boot Record),
située au début du disque.
Chaque partition contient un secteur de démarrage Boot Sector
(BS) dont le rôle est d'accéder au SE.
Le nombre maximum de partitions primaires est limité à 4.
Une partition primaire peut contenir 64 partitions logiques.
81
IUT La Rochelle2010-2011
Notion d'installation et d'administration
✔ Structure de MBR
Programme de chargementSignature
Description de la partition 1Description de la partition 2Description de la partition 3Description de la partition 4
Code d'identification
Structure de MBR Taille enoctets
4424
161616162
N° de la tête : début
Type : FAT32, NTFS, EXT2,...
1121244
N° du secteur et du cylindre : début
N° de la tête : FinN° du secteur et du cylindre : FinDistanceTaille de la partition
Taille enoctets
État de la partition : active 80 non active 00
1
Description d'une partition
✔ Exemple de partitionnement d'un disque
Partition 1primaireNTFS
BSC:
BSD:
BS BS
Partition 2primaireFAT32
Partition 4primaire
Partition 3étendue
LogiqueNTFS
LogiqueLinux
Logiqueswap
MBR
82
IUT La Rochelle2010-2011
Notion d'installation et d'administration
♠ Outil de partitionnement d'un disque✔ Outils gratuits :
fdisk, sous Windows ou Linux, reconnait tous les systèmes de
fichiers FAT, FAT32, Ext2, Ext3, Swap Linux.
Il est inclus dans toutes les distributions Linux.
QTParted ou Gparted un clone de PartitionMagic inclus dans la
majorité des distributions Linux actuelles.
...
83
IUT La Rochelle2010-2011
Notion d'installation et d'administration
♠ Outils payants :
✔ PartitionMagic (Powerquest – Symantec), efficace avec une
interface très ergonomique. A utiliser sous Windows mais aussi à
partir d'un DVD de boot. Il permet de préserver les données
existantes (sauf mauvaises manipulations !). Il reconnait tous les
systèmes de fichiers (Windows, Linux, ...).
✔ Hard Disk Manager permet de partitionner et de cloner les
partitions avec une interface graphique.
✔ Partition Expert permet le partitionnement en préservant les
données existantes et possède une interface ergonomique sous
Windows.
✔ ...
84
IUT La Rochelle2010-2011
Notion d'installation et d'administration
♠ Virtualisation✔ Elle permet d'avoir plusieurs systèmes d'exploitation lancés en
même temps sur la même machine.
✔ Il existe plusieurs logiciels de virtualisation :
VMWARE pour Windows, Mac OS : www.vmware.com
Parallels Desktop pour Mac OS: www.parallels.com
Microsft Virtual PC pour Windows : www.microsoft.com/
VirtualBox pour Windows, Mac OS et Linux: www.virtualbox.org/
Xen pour Linux : xenfr.org/tiki-index.php
…
85
IUT La Rochelle2010-2011
Notion d'installation et d'administration
♠ Machine virtuelle✔ Elle se comporte comme un ordinateur physique et contient ses
propres CPU, mémoire , disque dur, ..
✔ Un SE est incapable de faire la différence entre une machine
virtuelle et une machine physique.
✔ Avantages des machines virtuelles
Les machines virtuelles sont compatibles avec tous les ordinateurs.
Les machines sont indépendantes les unes des autres.
Les machines virtuelles ont leur propre environnement.
Les machines virtuelles s’exécutent indépendamment du matériel.
86
IUT La Rochelle2010-2011
Notion d'installation et d'administration
✔ Il existe deux types de machines dans le monde de la virtualisation :
La machine hôte est la machine physique qui va lancer le logiciel
de virtualisation.
La machine virtuelle est celle qui est lancée par le logiciel de
virtualisation.
Machine sans virtualisation
Machine avec virtualisation
Architecture x86/x64
Système d'exploitation
Application1 Application2 Application3
Architecture x86/x64Système d'exploitation
Applicati
ons
Logiciel de virtualisation
Appl. Appl. Appl.
LinuxAppl. Appl. Appl.
Mac OSAppl. Appl. Appl.
Windows XP
machine virtuellemachine hôte
87
IUT La Rochelle2010-2011
Notion d'installation et d'administration
♠ Les grandes étapes d'installation d'une distribution Linux
✔ Test de la source d'installation : {DVD, CDROM, fichier.iso, réseau, ..}✔ Test du matériel✔ Choix de la langue✔ Choix du clavier et souris✔ Choix de type d'installation : {nouvelle, mise à jour, réparation, ...}✔ Création des partitions✔ Choix des paquetages à installer✔ Configuration du chargeur {GRUB, LILO, ...}✔ Configuration du réseau✔ Création du compte administrateur (root)✔ Choix de l'interface graphique : {KDE, Gnome, X Window, ...}✔ Création des utilisateurs✔ Mise à jour du système par Internet✔ Installation des autres périphériques { imprimantes, scanner, jeux,...}✔ Si problème d'affichage il faut installer le pilote de la carte graphique
88
IUT La Rochelle2010-2011
Notion d'installation et d'administration
♠ Gestion des utilisateurs
✔ Caractéristiques d'un compte utilisateur :
login : nom avec lequel un utilisateur peut se connecter(anne)
mot de passe : un mot de passe crypté (x)
IUD : identifiant de l'utilisateur (1001)
GID : identifiant du groupe à qui appartient l'utilisateur (100)
Commentaire : un commentaire sur l'utilisateur (Un invité)
répertoire : répertoire de connexion (/home/invite)
shell : shell de démarrage (/bin/bash)
cat /etc/passwdanne:x:1001:100:Un invité:/home/anne:/bin/bash
…
89
IUT La Rochelle2010-2011
Notion d'installation et d'administration
✔ Caractéristiques d'un compte groupe :
nom : nom avec lequel un groupe est connu sur le système (user)
mot de passe : un mot de passe crypté (x)
GID : identifiant du groupe (100)
liste : liste des membres du groupe (anne)
cat /etc/group...video:x:33:invite,anneusers:x:100:
90
IUT La Rochelle2010-2011
Notion d'installation et d'administration
✔ Fichiers
/etc/passwd : contient la base locale des comptes utilisateurs
/etc/group : contient la base locale des comptes groupes
/etc/shadow : contient les mots de passe locaux
/etc/nsswitch.conf : annuaire de recherche des comptes
:~> su - rootMot de passe ::root~ # more /etc/shadow...wwwrun:*:13843::::::
invite:
$2a$05$lXd4QA.fo2BG5/dn8vG0ZuDG9/Keb6uUVoqyzwDhCuJrNe
OeQB8ny:13843:0:99999:7:::
91
IUT La Rochelle2010-2011
Notion d'installation et d'administration
✔ Commandes
useradd, usermod, userdel : ajout, modification et
suppression d'un utilisateur
groupadd, groupmod, groupdel : ajout, modification et
suppression d'un groupe
passwd, chpassd : donner et modifier le mot de passe d'un
utilisateuruseradd -u 1001 -g users -G video, mail -c jamal
khamlichi -d /home/jkhamlic -s /bin/bash jkhamlic
✔ Utilitaires
yast : distribution SUSE
system-config-users : distribution Redhat
...
92
IUT La Rochelle2010-2011
Notion d'installation et d'administration
♠ Gestion des partitions✔Commandes
mount : monter un système de fichiers
umount : démonter un système de fichiers
du : information sur l'utilisation du disque
df : information sur la quantité d'espace occupé des systèmes
de fichiers
fdisk : manipulateur de la table des partitions pour Linux
93
IUT La Rochelle2010-2011
Notion d'installation et d'administration
@AINF39:~> su - rootMot de passe :
AINF39:~ # mount /dev/sdb1 /media/AINF39:~ # umount /dev/sdb1
AINF39:~ # du -h ...24K ./.VirtualBox/VDI56K ./.VirtualBox7,1G
AINF39:~ # df -ThSys. de fich.Type Tail. Occ. Disp. %Occ. Monté sur/dev/sda4 ext3 16G 5,0G 11G 33% /udev tmpfs 506M 88K 506M 1% /dev/dev/sda2 ext3 30G 7,3G 21G 26% /home/dev/sda1 fuseblk 80G 17G 64G 21% /windows/C/dev/sda6 vfat 20G 3,0G 18G 15% /windows/D
94
IUT La Rochelle2010-2011
Notion d'installation et d'administration
✔ Fichiers
/etc/fstab : contient la table des SF montés à la connexion.
…
@AINF39:~> cat /etc/fstab/dev/sda4 / ext3 acl,user_xattr 1 1/dev/sda2 /home ext3 acl,user_xattr 1 2/dev/sda6 /windows/D vfatusers,gid=users,umask=0002,utf8=true 0 0/dev/sda5 swap swap defaults 0 0proc /proc proc defaults 0 0sysfs /sys sysfs noauto 0 0usbfs /proc/bus/usb usbfs noauto 0 0devpts /dev/pts devpts mode=0620,gid=5 0 0none /proc/bus/usb usbfs devgid=109,devmode=664 0 0
✔ Outils
qparted : sur toutes les distributions
KDiskFree : équivalent à df avec interface graphique
...
95
IUT La Rochelle2010-2011
Notion d'installation et d'administration
♠ Gestion des applications✔ Une partie des applications se fait au moment de l'installation du
système, mais il est possible d'en ajouter d'autres.
✔ Avant de lancer l'installation d'une nouvelle application il faut connaitre:
Le nom de votre distribution
La version de votre noyau
Méthode à utiliser :
✗ Compiler les fichiers sources sur votre système
✗ Installer les fichiers binaires
✗ Utiliser le gestionnaire des applications de votre distribution
✗ Installer à partir de la ligne de commande
Télécharger la bonne version ou avoir le CD/DVD d'installation
Mot de passe du root
...
96
IUT La Rochelle2010-2011
Notion d'installation et d'administration
✔ Installation à partir des fichiers sources :
1. Télécharger la bonne version de l'application pour votre distribution
2. Décompresser l'applicationhome > tar xvzf nomLogiciel_2.2.8.tar.gz
3. Se placer dans le nouveau répertoire crééhome > cd nomLogiciel_2.2.8
4. Exécuter le script : (ceci sert à créer le fichier Makefile)
home/nomLogiciel_2.2.8 > ./configure
5. Compilation et édition des lienshome/nomLogiciel_2.2.8 > make
6. Installer l'application
home/nomLogiciel_2.2.8 > make install
7. Configurer l'application
97
IUT La Rochelle2010-2011
Notion d'installation et d'administration
✔ Remarque
Parfois, il faut être root pour pouvoir installer une application, donc
avant de commencer l'étape 3, il faut se connecter en tant que root :
home > su root
Mot de passe :
root #
98
IUT La Rochelle2010-2011
Notion d'installation et d'administration
✔ Installation à partir des paquetages binaires :
1.Télécharger la bonne version de l'application pour votre distribution
2. Installer l'application
home > rpm -ivh nomLogiciel_2.2.8.rpm
3. Configurer l'application
✔ Quelques options de la commande rpm :
rpm -i installe un paquetage
rpm -e supprime un paquetage
rpm -qa liste tous les paquetages installés
rpm -v vérifie un paquetage
rpm -qf indique à quel paquetage appartient un fichier
rpm -ql liste les fichiers d'un paquetage
99
IUT La Rochelle2010-2011
Notion d'installation et d'administration
♠ Processus de démarrage
Processus d'une session/etc/profile
if [ -f ~/.bash_profile ]
then ~/.bash_profile
else if [ -f
~/.bash_login ]
then ~/.bash_login
else ~/.profile
~/.bashrc
/etc/bashrc #activé par ~/.bashrc
Bios
Chargeur(MBR)➢ Grub➢ Lilo
(BS)NoyauLinux
(BS)NoyauWindows
initlecture du
/etc/inittabPID=1
Scripts de démarrage
/etc/rc.sysinit
100
IUT La Rochelle2010-2011
Notion d'installation et d'administration
♠ Processus de déconnexion
✔ Le fichier qui s'exécute en local est : ~/.bash_login
✔ Commandes :
shutdown : arrêt et redémarrage du système et passage
en mode maintenance
reboot : redémarrage du système
halt : arrêt du système
✔Remarques :
/etc/shutdown.allow contient la liste des utilisateurs ayant le
droit d'exécuter shutdown
Pour un shell sans connexion, le fichier ~./bashrc est exécuté.
101
IUT La Rochelle2010-2011
Notion d'installation et d'administration
♠ Quelques fichiers d'administration
✔/boot/grub/grub.conf : fichier de configuration du chargeur
✔/etc/bashrc : script exécuté à chaque ouverture d'une session
✔/etc/fstab : liste des tables des fichiers montés au démarrage
✔/etc/group : information sur les groupes d'utilisateurs
✔/etc/inittab : liste des applications lancées au démarrage
✔/etc/hosts : table de correspondance entre un nom et une
adresse IP
✔/etc/manpath.config : fichier de configuration de l'aide en
ligne
✔/etc/passwd : description des comptes utilisateurs
102
IUT La Rochelle2010-2011
Notion d'installation et d'administration
✔/etc/init.d/* : les scripts de démarrage
✔/etc/printcap : description des files d'attente d'impression
✔/etc/profile : script lancé à chaque session
✔/etc/shadow : les mots de passe et leurs paramètres
✔/etc/termcap : les séquences de contrôle des terminaux
✔/etc/X11/xorg.conf : fichier de configuration du serveur X
✔/usr/lib/X11/xinitrc : fichier de configuration pour startx
✔~/.bash_logout : script lancé à la déconnexion
✔~/.bash_profile : script lancé à l'ouverture d'une session
✔~/.bashrc : script lancé à chaque lancement de bash
✔~/.kde: répertoire de configuration de l'environnement KDE
✔~/.gnome: répertoire de configuration de l'environnement GNOME