Post on 03-Oct-2015
description
Linux LPI niveau 1
M.EL FARM.EL FAR
1
Linux LPI niveau 1
- Module 00 : Historique
- Module 01 : Introduction au systme linux
- Module 02 :GNU et commandes Unix
2
le systme GNU/Linux a vu le jour en 1991 par un tudiant finlandais, Linus Torvalds.
Linux a su garder, au fil de ses volutions, l'hritage des tous premiers systmes Unix.
historique
premiers systmes Unix.
Paralllement cela, une philosophie nouvelle est apparu concernant le partage des connaissances, protge par une licence qui garantirait la transparence des fichiers sources et la possibilit de les modifier.
3
1983 : R. Stallman fonde la Free Software Foundation
Il dcrit dans le Manifeste GNU les quatre liberts fondamentalesque doit respecter un logiciel pour tre qualifi de logiciel libre (freesoftware en anglais) :
libert d'excution : tout le monde a le droit de lancer leprogramme, quel qu'en soit le butlibert de modification : tout le monde a le droit d'tudier le
Logiciel libre
libert de modification : tout le monde a le droit d'tudier leprogramme et de le modifier, ce qui implique un accs au codesource
libert de redistribution : tout le monde a le droit de rediffuser leprogramme, gratuitement ou non
libert d'amlioration : tout le monde a le droit de redistribuerune version modifie du programme
4
GNU's Not Unix : le systme dexploitation GNU a dvelopp un systme complet de logicielles libres qui a une compatibilit ascendante avec UNIX
Licence GNU/General Public License (GPL) :- Une modification d'un logiciel sous GPL doit forcment tre
GNU
- Une modification d'un logiciel sous GPL doit forcment treredistribue en GPL.- Promouvoir le logiciel libre- lutilisation du logiciel a des fin lucratives - Les logiciels sous licence GPL restent la proprit de leur auteurs personne ne peut sapproprier tout ou partie des droits dauteurs
5
1991 : Linus Torvalds (Finlandais) dveloppe un noyau s'inspirant d'unix : linux. Il le met trs vite sous licence GPL, rejoint par de nombreux dveloppeurs.
Naissance de linux
Succs : qualit technique du noyau + nombreuses distributions qui facilitent l'installation du systme et des programmes
6
- Le noyau est la couche de base dun systme dexploitation. Cest le noyau qui gre la mmoire, laccs aux priphriques(disque dur, carte son, carte rseau, etc...), la circulation des donnes sur le bus, les droits daccs, les multiples processus quicorrespondent aux multiples tches que lordinateur doit excuter en mme temps, etc...
Noyau linux
- Ce noyau de systme dexploitation a loriginalit dtre multi-utilisateurs et multi-tches et de fonctionner sur de nombreuses plates-formes (Intel, Apple, Sparc, etc...)
- Avec un simple noyau, on ne peut rien faire ! Le noyau Linux vient donc lintrieur de distributions.
7
- Distribution linuxun noyau Linuxdes programmes, en majorit libres (un navigateur Web, un lecteur de Mail, un serveur FTP, etc...)une mthode pour installer et dsinstaller facilement ces programmesun programme d'installation du systme d'exploitation
Qu'est-ce qu'une distribution linux ?
un programme d'installation du systme d'exploitation
- Quelques distributions :debian, redhat, mandrake/mandriva, knoppix, gentoo
Quelle distribution est installe sur votre machine ?
8
Aujourdhui, le succs de Linux sexplique par la qualit technique du noyau, mais aussi par la prsence de nombreuses distributions Linux qui facilitent linstallation du systme et des programmes.
Il sexplique surtout par son appartenance au monde du libre qui lui apporte une grande rapidit et qualit de dveloppement.
Le succs de linux
apporte une grande rapidit et qualit de dveloppement.
Le nombre dutilisateurs de Linux est aujourdhui estim plusieurs millions !
9
Atelier
Module 2 10
Module 01 : Introduction au systme linux
Module 1 11
Le systme de fichiers
/
bin boot dev etc home lib mnt proc sbin sys tmp usr var
Module 1 12
/boot: Contient les fichiers relatifs au boot loader
/bin : Contient les binaires (excutables) vitaux pour l'utilisateur
/dev : fichiers des pilotes de priphriques
Le systme de fichiers
Module 1
/etc : configuration systme propre la machine
/home : rpertoire personnel des utilisateurs
/mnt : Contient les dossiers pour les points de montage temporaires
/proc : Contient les informations sur le noyau
13
/root : Rpertoire personnel de root
/sbin : excutables systme essentiels
/tmp : Contient les dossiers et fichiers temporaires. Le dossier est vid chaque dmarrage
Le systme de fichiers
Module 1
vid chaque dmarrage
/usr : Contient tout ce qui n'est pas vital au systme (voir ci-dessous)
/var : Contient des fichiers qui changent frquemment, tel que : les logs, les mail, queues d'impression... (voir ci-dessous)
14
Le rpertoire "/usr" contient certains dossiers dj prsents dans "/" (bin, sbin, lib, tmp) Mais ceux-ci ne sont pas ncessaires au fonctionement minimal du systme.
Hirarchie usr
Module 1
On va donc y trouver les fichiers relatifs aux programmes tierce partie, par exemple le navigateur web ou les lecteurs multimdias
15
Hirarchie usr
Rpertoire Description
/usr/bin Contient les binaires pour l'utilisateur
/usr/doc Contient la documentation des programmes installs (hors manpages)
/usr/lib Contient les librairies partages/usr/lib Contient les librairies partages
/usr/man Contient les manpages (pages de manuel)
/usr/sbin Contient les binaires pour l'administrateur
/usr/src Contient les sources du noyau
/usr/X11R6 Contient les fichiers du serveur X
/usr/include contient tous les "headers" ncessaires la programmation dans les diffrents langages
Module 1 16
Un fichier variable est un fichier dont le contenu va changer frquemment et sans l'intervention directe de l'homme (ex : fichier de log).
Ils sont opposs aux fichiers statiques, fichiers dont le contenu ne
Hirachie var
Module 1
Ils sont opposs aux fichiers statiques, fichiers dont le contenu ne varie pas (ex : fichier de configuration)Le dossier "/var" contient tous les fichiers variables.
17
Hirachie var
/var/log Contient tous les fichiers de log
/var/mail Contient les boites aux lettres de chaque utilisateur
Module 1
/var/mail Contient les boites aux lettres de chaque utilisateur
/var/run Contient les fichiers des PID des deamons
/var/spool Contient les queues en cours (envoi de mail, impression, crontab)
18
Les systmes Unix/Linux furent l'origine conus pour fonctionner en mode texte, sans interface graphique.
Bien qu'aujourd'hui de nombreuses interfaces graphiques permettant
Les terminaux
Module 1
Bien qu'aujourd'hui de nombreuses interfaces graphiques permettant de configurer le systme ont t dveloppes, il demeure totalement administrable en ligne de commande (CLI - Command Line Interface), cette mthode restant la plus simple et la plus puissante
19
Cette ligne de commande est accessible via les terminaux qui jouent le rle d'interface utilisateur/machine et fonctionnent avec un interprteur de commandes : le shell.
Il est possible de se connecter sur plusieurs terminaux via la combinaison des touches Alt+Fn o Fn est une touche de fonction
Les terminaux
Module 1
combinaison des touches Alt+Fn o Fn est une touche de fonction (Ex : F1,F2...).
Note : Depuis un environnement graphique, il est possible de revenir sur un terminal via la combinaison des touches Ctrl+Alt+Fn. Pour revenir au mode graphique, il faut en gnral utiliser la combinaison Alt+F7.
20
Le rle du Shell est d'assurer la correspondance entre ce que l'utilisateur tape et le systme. Il en existe de nombreuses versions. Le plus connus d'entre eux, bash est celui que nous utiliserons pendant ce cours.
Le Shell
Module 1
Chacun des shells existant dispose de ses propres avantages et points faible. L'intrt d'avoir un shell plutt qu'un autre dpend des fonctionnalits offertes par celui-ci, et donc de l'utilisation que l'on souhaite en avoir.
21
Le tableau suivant vous prsente les principaux Shells ainsi que leurs caractristiques
Nom Description
bash (Bourne Again Shell) offre l'dition de la ligne de commande et le rappel des commandes prcdentes
csh (C Shell) dvelopp Berkeley, compatible avec le shell Bourne. Pas d'dition de la ligne de commande ni d'historique des commandes(Korn Shell) offre l'dition de la ligne de commande (touches ksh (Korn Shell) offre l'dition de la ligne de commande (touches compatibles Emacs)
sh le shell original, pas d'dition de la ligne de commande.
tcsh version amliore du csh, avec un support de l'dition de la ligne de commande avec correction des commandes tapes
zsh shell similaire au Korn shell, avec plus de dynamisme lors des affichages et gre la non redondance des commandes.
22
Le compte utilisateur classiqueLe compte root (Administrateur)Un symbole de l'invite de commande vous permet de dterminer le type de compte que vous utilisez.
Module 1
Accs simple utilisateur :user@localhost $
Accs root :root@localhost #
23
Module 02 : GNU et commandes Unix
1- Unix et Linux
2- Travailler en ligne de commande2- Travailler en ligne de commande3- Excution de flux de textes en utilisant des filtres 4- Gestion de base des fichiers5- Expressions rgulires 6- Effectuer les modifications de base des fichiers avec vi 7- Utiliser les streams, pipes, et redirections 8- Crer, surveiller et terminer des processus 9- Modifier les priorits des processus
Module 2 24
Objectifs:A lissue de ce module, vous serez capable de :
- Utiliser les commandes de base- Utiliser les commandes de base
- Utiliser le help a laide de la commande man
Module 2 25
Le format des commande se base sur:command option(s) argument(s)
-Pour afficher les information du systme
# uname -a Afficher toutes les informations dcrites ci-dessus
Commandes de base
-m, --machine Afficher le type (matriel) de machine.
-n, --nodename Afficher le nom d'hte de la machine sur le rseau.
-r, --release Afficher le numro de version du systme d'exploitation
Module 2 26
-Pour Afficher ou configurer la date et l'heure du systme# date
Pour afficher la date de l'avant-veille : date --date '2 days ago'
Commandes de base
Pour afficher la date du jour venir dans 3 mois plus un jour : date --date '3 months 1 day'
Pour afficher le calendrier # cal
Module 2 27
- Pour effacer le terminale :# clear
-Pour excuter deux commande une aprs lautre: # date ; uname -sr
Commandes de base
# date ; uname -sr
Module 2 28
Les caractres de contrle sur le clavier
Module 2 29
La commande man affiche toute la documentation relative une commande (syntaxe, utilisation, options...). les pages de manuel se trouvent dans le rpertoire /usr/man, mais peuvent galement se trouver en d'autres endroits plus spcialiss
Utilisation de la commande man
La syntaxe utiliser est : man nom_de_la_commande
Exemples :$ man man$ man cat
Module 2 30
La documentation est clase en 8 sections numrotes de 1 8 :1.commandes UNIX2. appels systme3. sous-programmes de bibliothques4. format de fichiers UNIX: a.out, dir, fs5. "divers" (table ASCII ...)6. jeux7. fichiers spciaux
Classement en sections
7. fichiers spciaux8. administration (dmarrage, gnration...)
chercher la page voulue : # man 1 ls# man 5 passwd
Module 2 31
La documentation man est limite puisqu'il faut connatre le nom de la commande.On peut avoir une bauche de la solution en faisant une recherche par mot-clef. Pour cela,on utilise la commande apropos, dont la syntaxe est la suivante :
Commande apropos
on utilise la commande apropos, dont la syntaxe est la suivante :apropos mot-clef
Exemple : apropos editor ou apropos lock
Module 2 32
Prsentation Des Commandes Correspondantes Aux Rpertoires, Fichiers
Objectifs:A lissue de ce module, vous serez capable de :
- Utiliser les commandes relatives aux rpertoires
- Utiliser les commandes sur les fichiers
Module 2 33
Si vous tes en administrateur systme la commande par cd ~vous placera dans le rpertoire /root.
Dans le cas o je suis (je suis logg en tant qu'utilisateur usera) je vais automatiquement me retrouver dans le rpertoire de
Dans quel rpertoire suis-je actuellement ? (pwd)
je vais automatiquement me retrouver dans le rpertoire de l'utilisateur usera qui se trouve dans /home/usera.Les rpertoires des utilisateurs sont tous sous /home.
Module 2 34
- pour connatre le chemin du rpertoire o l'on se trouve est d'utiliser la commande pwd :# pwd
Pour changer de rpertoire courant : # cd rpertoire
les commandes relatives aux rpertoires
# cd rpertoire
Le symbole (~) reprsente votre rpertoire d accueil
Le symbole (..) reprsente le rpertoire parent.
Le symbole (.) reprsente le rpertoire courant.
Module 2 35
- Pour lister le contenu du rpertoire:# ls
Demandons par exemple uniquement les noms des fichiers commenant par la lettre "l" :
les commandes relatives aux rpertoires
commenant par la lettre "l" :$ ls l*
$ ls -l permet de lister les attributs des fichiers
$ ls a liste tous les fichiers du rpertoire, y compris les fichiers cachs
Module 2 36
pour Afficher les fichiers par date, c'est--dire en les classant du rcent au plus ancien:ls -t
pour Afficher les fichiers par type :
les commandes relatives aux rpertoires
pour Afficher les fichiers par type :ls -F
Pour Afficher rcursivement le contenu dun rpertoire :ls -R
Module 2 37
La commande file
La commande file permet dafficher le type du fichier (excutable, rpertoire, ASCII, )
$ file /bin/ls
les commandes relatives aux rpertoires
$ file /bin/ls$ file /etc/passwd$ file /usr
Module 2 38
- pour Visualiser le contenu de fichiers:
# cat permet de lire des fichiersUne option utile de cat est -n qui permet de numroter les lignes
# more a l'avantage d'afficher le fichier page par page. Pour
les commandes sur les fichiers
# more a l'avantage d'afficher le fichier page par page. Pour passer d'une page l'autre, tapez sur la touche ESPACE.
# less affiche ligne par ligne sur un cran le contenu des fichiers.
Module 2 39
-Vous pouvez utiliser la commande head simplement pour afficher le dbut d'un fichier# head filename
Il est possible de spcifier le nombre de lignes supplmentaires
les commandes sur les fichiers
Il est possible de spcifier le nombre de lignes supplmentaires en entrant# head n filename
Module 2 40
les commandes sur les fichiers
La commande tail permet d'afficher les dernires lignes d'un fichier
# tail -n filename
L'option -f demande tail de ne pas s'arrter lorsqu'elle a affich L'option -f demande tail de ne pas s'arrter lorsqu'elle a affich les dernires lignes du fichier et de continuer afficher la suite du fichier au fur et mesure que celui-ci grossit jusqu' ce que l'utilisateur interrompe la commande avec la combinaison de touches d'interruption Ctrl-c.
Module 2 41
- Pour afficher le nombre :de lignes , mots et caractres :# wc
les commandes sur les fichiers
Module 2 42
Commandes De Gestion De Rpertoires Et De Fichiers
Objectifs :A lissue de ce module, vous serez capable de :
- Copier dplacer et crer les fichiers et les rpertoires
-Renommer & supprimer les fichiers et les rpertoires
- Utiliser les liens symboliques
Module 2 43
- Pour copier un fichier :# cp file1 file1_copie
- Pour copier un rpertoire:# cp rep1 rep1_copie
Copier les fichiers et les rpertoires
Module 2 44
-Pour dplacer un fichier : # mv file1 to destination./
-Pour dplacer un rpertoire :# mv rep1 to destination./
Dplacer et renommer les fichiers et les
rpertoires
# mv rep1 to destination./
-Pour renommer un fichier ou un rpertoire :# mv file1 my_file1#mv rep1 my_rep1
Module 2 45
- pour crer un fichier :
# touch file_name
- Pour crer un Repertoire
Crer les fichiers et les rpertoires
- Pour crer un Repertoire # mkdir rep1
# mkdir -p rep2 /rep1
# mkdir rep3 rep4 rep5
Module 2 46
-Pour supprimer un fichier :# rm filename
-Pour supprimer un rpertoire vide :# rmdir rpertoire
Supprimer les fichier et les rpertoires
# rmdir rpertoire
-Pour dtruire tous les sous-rpertoires, leurs contenus et le rpertoire lui-mme. :# rm -r rpertoire
Module 2 47
Les liens sont des fichiers spciaux permettant d'associer plusieurs noms (liens) un seul et mme fichier
On distingue deux types de liens :
Les liens symboliques reprsentant des pointeurs virtuels (raccourcis) vers des fichiers rels. En cas de suppression du lien
Utilisation des liens symboliques et physiques
(raccourcis) vers des fichiers rels. En cas de suppression du lien symbolique le fichier point n'est pas supprim.
Les liens physiques (aussi appeles liens durs ou en anglais hardlinks) reprsentent un nom alternatif pour un fichier
Module 2 48
- Pour crer un lien symbolique :# ln -s source_file target_file
Les liens physiques sont cres l'aide de la commande ln (sans l'option -s) selon la syntaxe suivante :
Utilisation des liens symboliques et physiques
# ln nom-du-fichier-reel nom-du-lien-physique
Module 2 49
Atelier
Module 2 50
Les Commandes De Recherche DeRpertoires Et De Fichiers
Objectifs :A lissue de ce module, vous serez capable de :
- Copier dplacer et crer les fichiers et les rpertoires
-Renommer & supprimer les fichiers et les rpertoires
- Utiliser les liens symboliques
Module 2 51
# grep -option pattern file_name
Ex1:- pour chercher tous les lignes qui contiennent le mot rootDans le fichier /etc/group# grep root /etc/group
Rechercher dans le contenu des fichiers
Ex2: pour chercher tous les linges qui ne contiennent pas le mot root dans le fichier /etc/group# grep -v root /etc/group
Module 2 52
Ex3:- pour chercher les noms des fichiers qui contient le mot root# grep -l root group passwd hosts
Ex4: pour compter le nombre de linges qui contiennent le mot
Rechercher dans le contenu des fichiers
Ex4: pour compter le nombre de linges qui contiennent le mot root dans le fichier /etc/group# grep -c root /etc/group
Module 2 53
Utilisation des expressions de metacaractres avec grep
Module 2 54
- Find scrute rcursivement larborescence du system de fichier en recherchant tous les fichier galant une expression boolenne reprsentant un critre de recherche
La commande de recherche de fichiers : find
Module 2 55
- Ex1: pour chercher un fichier nommer test dans votre rpertoire daccueil # find ~ -name test
-Ex2: pour chercher et supprimer un fichier nommer test dans
Exemples de la commande find
-Ex2: pour chercher et supprimer un fichier nommer test dans votre rpertoire daccueil# find ~ -name test -exec rm {} \;
Ex3: pour chercher tous les fichiers qui ont t modifier il y a deux jours dans votre rpertoire courant # find . -mtime +2
Module 2 56
La commande sort trie les lignes dun ou plusieurs fichiers de texte. Par dfaut, le tri se fait suivant lordre lexicographique.
Un certain nombre doptions sont fournies pour modifier lordre du tri :
la commande sort
-n pour tri numrique, -r pour tri invers,-k x pour tri partir du champ x,-t c pour utiliser le sparateur de champs
Module 2 57
Quelques exemples de la commande sort :
$ ls -l | sort -n -k5$ sort -n -k3 /etc/passwd
la commande sort
$ sort -n -k3 /etc/passwd
Module 2 58
Ce filtre limine les lignes dupliques depuis un fichier tri. On le voit souvent dans un tube combin avec un sort
cat liste-1 liste-2 liste-3 | sort | uniq > liste.finale# Concatne les fichiers liste,
la commande uniq
# Concatne les fichiers liste, # les trie, # efface les lignes doubles, # et enfin crit le rsultat dans un fichier de sortie.
Module 2 59
La commande cut permet d'afficher des zones spcifiques d'un fichier.Par exemple : # cut -c1 /etc/passwdaffichera la premire colonne du fichier /etc/passwd. Il existe d'autres spcifications
la commande cut
d'autres spcifications
On peut galement spcifier un sparateur de champs avec l'option -d. Par exemple : # cut -d: -f6 /etc/passwdaffichera le 6eme champ du fichier /etc/passwd, dont le sparateur de champs est le caractre double point (``:'').
Module 2 60
61
Le systme de fichiers
Accs aux fichiers rglement (sauf: tous les droits pour root)
3 types dutilisateurs: propritaire (user) personnes du mm groupe (group)
-- fichiers fichiers --
personnes du mm groupe (group) les autres (others)
3 types de permissions lecture (r) criture (w) excution (x)
afficher le contenuModifi er
excuter
fichier
afficher le contenucrer/supp fichiers
traverser
rpertoire
Le systme de fichiers
Affichage des caractristiques: ls -l
-- fichiers fichiers --
group
-rw-r--r-- 1 user1 staff 58K 16 Jul 09:19 tp1.tex
nb liens propritaire
groupe
taille date nom
-rw-r--r--
type
user
group
others
Le systme de fichiers
Changer les permissions: chmodchmod |nnn classe:
u : userg : groupo : others
-- fichiers fichiers --
chaque perm = 1 valeur:r 4w 2x 1o : others
a : all op:
= : affectation- : suppr.+ : ajout
perm:r : lecturew : criturex : excution
exemples:chmod u=rwx,g=rx,o=r tp1.texchmod a+x script.shchmod 755 script.sh
df. des permissions (par addition) pour chaque classe
x 1rien 0
Atelier
Module 2 65