SlideShare une entreprise Scribd logo
5
Plus lue
6
Plus lue
17
Plus lue
Présentation
de la formation
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
de la formation
Plan
• Présentation du formateur
• Qu’est ce que Linux
• Le plan de formation
• Présentation de la formation
LPIC1 / Comptia Linux+ alphorm.com™©
• Outils nécessaires
• Comment travailler
• Les références des ressources logicielles
• Les liens utiles
Présentation du formateur
• Noël Macé
• alphorm@noelmace.com
• Formateur consultant expert Unix et FOSS
• Mes références :
Mon profil Viadeo : http://fr.viadeo.com/fr/profile/noel.mace
LPIC1 / Comptia Linux+ alphorm.com™©
Mon profil Viadeo : http://fr.viadeo.com/fr/profile/noel.mace
Mon parcours : http://vizualize.me/noelmace
Mon site : http://noelmace.com
• Contacts
• Blogs
• Base de connaissance
• CV
• Etc …
Qu’est ce que Linux ?
• Un kernel
Développé par Linux Torvalds à partir de Minix
En 1991
• Un système d’exploitation
Libre et open source
LPIC1 / Comptia Linux+ alphorm.com™©
Libre et open source
Issu du projet GNU (1983)
Leader sur :
• les serveurs web (65%)
• Les systèmes embarqués
• Les super-calculateurs
Le plan de formation
• Module 1 : Présentation de Linux
• Module 2 : Commandes GNU & Unix
• Module 3 : Edition de fichiers
• Module 4 : Gestion des logiciels
• Module 5 : Configuration du matériel
• Module 6 : Gestion des fichiers
• Module 11 : Configuration réseaux
• Module 12 : Introduction au bash scripting
• Module 13 : Introduction à la gestion de bases de
données
• Module 14 : Configuration e-mail
• Module 15 : Sécurité
LPIC1 / Comptia Linux+ alphorm.com™©
• Module 6 : Gestion des fichiers
• Module 7 : Démarrage du système
• Module 8 : Configuration de l’environnement
graphique
• Module 9 : Gestion des imprimantes et
impressions
• Module 10 : Administration système
Certifications
• LPIC1 :
http://www.lpi.org/linux-
certifications/programs/lpic-1
LPIC1 / Comptia Linux+ alphorm.com™©
• Comptia Linux+ :
http://certification.comptia.org/getCertified/certifi
cations/linux.aspx
Présentation de la formation
• Orientée certification
Basée sur le parcours officiel
• Acquisition d’un grand nombre de connaissances
Pratiques
théoriques
LPIC1 / Comptia Linux+ alphorm.com™©
théoriques
Outils nécessaires
• Deux grandes familles de distribution Linux :
Debian (Ubuntu, Damn Small Linux, etc …)
Red Hat (RHEL, Fedora, Centos, Mandriva, etc …)
• Peu de ressources matérielles exigées :
Dual-boot Debian / Fedora
Ou Machines virtuels (vitualbox)
LPIC1 / Comptia Linux+ alphorm.com™©
Ou Machines virtuels (vitualbox)
Outils nécessaires (2)
OU
LPIC1 / Comptia Linux+ alphorm.com™©
OU
Comment travailler
• La pratique, toujours la pratique :
Utiliser Linux au quotidien
Être curieux !
Reproduire les opérations effectuées dans chaque vidéo
LPIC1 / Comptia Linux+ alphorm.com™©
• Se documenter
Un très grand nombre de ressources sont disponibles
Ce cours ne peu pas tout traiter
Lire le man !
Effectuer des recherches sur internet
Les références des ressources logicielles
• Linux Debian :
http://www.debian.org
• Fedora :
http://fedoraproject.org/
• Virtualbox :
LPIC1 / Comptia Linux+ alphorm.com™©
• Virtualbox :
https://www.virtualbox.org/
• Virtualboxes :
http://virtualboxes.org/
Les liens utiles
• Supports officiels et communautaires des
distributions :
Ubuntu (en)
Ubuntu-fr
Debian
Gentoo (en)
Fedora (en)
RedHat (en)
OpenSuse (en)
• Forums et irc :
forum ubuntu-fr
le forum des débutant de DLFP
linuxforums.org (en)
forum Linux de développez.com
• Autres ressources utiles :
The Linux Documentation Project
LPIC1 / Comptia Linux+ alphorm.com™©
Archlinux (en)
• Supports recommandés par LPI :
LPIC-1 & LPIC-2 free educational manuals
LPI Introduction Programme (e-book libre en Anglais)
• Examens d’entrainement :
Linux Praxis
PenguinTutor
MC MCSE
Linux Documentation by die.net
Linux Kernel Documentation
Comment ça marche
Yet Another « Guide d’installation de Linux »
Linux pas-à-pas
section Linux de developpez.com
Flashcard exchange
GO
LPIC1 / Comptia Linux+ alphorm.com™©
GO
Introduction
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Virtualbox
Plan
• Installation de virtualbox sous Windows
• Récupération de machines virtuelles
• Configuration
• Lancement de machine virtuelles
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Comment mettre en place les outils nécessaires pour ce cours
Grâce à la virtualisation
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Introduction
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Installation de Debian
Plan
• Les différentes méthodes d’installation
• Etapes de l’installation
• Paramétrage
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Comment installer Debian
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Présentation de Linux
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Qu’est ce que Linux ?
Plan
• Un peu d’histoire
Unix
GNU
Linux
• Un système hétérogène
LPIC1 / Comptia Linux+ alphorm.com™©
• Un système hétérogène
• Linux est votre ami
La naissance d’Unix
• New Ken’s System
1969
En assembleur
Inspiré de Multics
• 1971 : réécriture en C
LPIC1 / Comptia Linux+ alphorm.com™©
• 1971 : réécriture en C
• 1975 : large distribution
La « Famille » Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Gnu is Not Unix
• Lancé par Richard Stallman en 1983
Afin de développer un système d’exploitation entièrement libre
• Supporté par la FSF depuis 1985
Free Software Fondation
LPIC1 / Comptia Linux+ alphorm.com™©
Free Software Fondation
• Créer une suite complète de logiciels
Mais le noyau tarde à arriver
Projet Hurd, initié en 1990 mais toujours inabouti à ce jour
Linux, enfin
• Basé sur Minix
• fonctionne avec des composants de GNU adaptés
LPIC1 / Comptia Linux+ alphorm.com™©
• 26 août 1991 : annonce sur le forum Usenet comp.os.minix
• 1992 : passage à la licence libre GNU GPL
Un système hétérogène
LPIC1 / Comptia Linux+ alphorm.com™©
Linux est votre ami
• Modifiable
• Partageable
• « bidouillable »
• Adaptable
LPIC1 / Comptia Linux+ alphorm.com™©
• Ludique
• Simple
• Répandu
Ce qu’on a couvert
• D’où vient Linux
• Qu’est ce qu’une distribution
Les distributions majeures actuelles
Pourquoi utiliser et apprendre Linux
LPIC1 / Comptia Linux+ alphorm.com™©
• Pourquoi utiliser et apprendre Linux
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Introduction
Plan
• Pourquoi la ligne de commande ?
• Qu’est ce qu’un shell ?
• Les différents shells Unix
• Accéder au shell
LPIC1 / Comptia Linux+ alphorm.com™©
Pourquoi la ligne de commande ?
• Efficacité
• Contraintes
• « Style »
LPIC1 / Comptia Linux+ alphorm.com™©
Qu’est ce qu’un shell ?
• Interpréteur de commande
• Remplaçable
Et personnalisable
LPIC1 / Comptia Linux+ alphorm.com™©
• Interactif ou scripting
Les différents shells Unix
• Bash
Le plus répandu
• Bourne Shell
Tout premier shell Unix
Tcsh
• C shell
Plus proche de C
• Korn Shell
AIX & HP/UX
LPIC1 / Comptia Linux+ alphorm.com™©
• Tcsh
Second shell de référence
Le plus moderne
• Z Shell
Le plus innovant
Synthèse de tout les autres
Choisir un shell
• Débutant = Bash
• Déjà très familier d’autres systèmes Unix
FreeBSD : tcsh
LPIC1 / Comptia Linux+ alphorm.com™©
AIX, HP/UX, OpenBSD ou Solaris : ksh
Certains BSD et systèmes embarqués : ash
• Privilégier autant que possible le bash !
Accéder au Shell
• Démarrage en mode texte
Shell accessible directement après authentification
• Avec environnement de bureau
Basculer sur une autre console ( Ctrl + Alt + Fx)
LPIC1 / Comptia Linux+ alphorm.com™©
Basculer sur une autre console ( Ctrl + Alt + Fx)
Ou utiliser un émulateur de terminal
• Konsole, Gnome Terminal, xterm
• Terminator
Ce qu’on a couvert
• Qu’est ce qu’un shell
• Les principaux shells Unix existant
• Comment accéder à une interface en ligne de commande
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Première commande
Plan
• Invite de commande
• Syntaxe générale
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Qu’est ce que l’invite de commande
• Syntaxe générale des commandes Linux
• Ecrire une première commande
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Utiliser l’aide
Plan
• man
• Aide interne des commandes
• info
LPIC1 / Comptia Linux+ alphorm.com™©
man
• Exemples :
$ man 1 pwd
$ man man
LPIC1 / Comptia Linux+ alphorm.com™©
• Résultat :
[ ] : optionnel
< > : valeur
Pages de manuel
1. Programmes exécutables ou
commandes de l’interpréteur de
commandes (shell)
2. Appels système (fonctions fournies
par le noyau)
3. Appels de bibliothèque (fonctions
fournies par les bibliothèques des
6. Jeux
7. Divers (y compris les macropaquets
et les conventions), par
exemple man(7), groff(7)
8. Commandes de gestion du système
(généralement réservées au
LPIC1 / Comptia Linux+ alphorm.com™©
3. Appels de bibliothèque (fonctions
fournies par les bibliothèques des
pro‐grammes)
4. Fichiers spéciaux (situés
généralement dans /dev)
5. Formats des fichiers et conventions.
Par exemple /etc/passwd
(généralement réservées au
superutilisateur)
9. Sous-programmes du noyau [hors
standard]
Aide interne à une commande
• Aucun standard
• Très sommaire
• Options possibles :
LPIC1 / Comptia Linux+ alphorm.com™©
-help
--help
-h
Info
• Ensemble de pages hiérarchisées
Réparties en plusieurs niveaux ou « nœuds »
• rubriques
• Du plus général au plus particulier
• Liens
LPIC1 / Comptia Linux+ alphorm.com™©
• Liens
Marqués d’un astérisque (*)
• Exemples :
$ info
$ info cp
Info : navigation
q Quitter
espace Défilement vers le bas
return Défilement vers le haut
b Début du nœud (beginning)
e Fin du nœud (end)
LPIC1 / Comptia Linux+ alphorm.com™©
Tab Aller au lien suivant
Entrée Suivre le lien
n Nœud suivant (next)
p Nœud précédent
u Nœud de niveau supérieur (up)
l (L min) Retour à la page précédemment affichée (last)
Ce qu’on a couvert
• Comment utiliser l’aide intégrée
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Variables
Plan
• Qu’est ce qu’un variable ?
• Déclarer une variable
• Utiliser une variable
• Portée d'une variable
LPIC1 / Comptia Linux+ alphorm.com™©
• Variables d'environnement
• Variables de paramètres
Qu’est ce qu’un variable ?
• Permet d’associer une clé (son nom) à une valeur
En mémoire
• Exemple :
La variable "message" contenant la chaine de caractère "Bonjour !"
LPIC1 / Comptia Linux+ alphorm.com™©
La variable "message" contenant la chaine de caractère "Bonjour !"
• Avec bash :
aucun typage
toute valeur de variable est considérée comme une chaine de caractères
Déclarer une variable
• Sans typage, aucun besoin de déclaration spécifique
• une simple affectation suffit
signe égal
sans espace
Exemple
LPIC1 / Comptia Linux+ alphorm.com™©
• Exemple
• Attention ! le nom d'une variable est sensible à la casse
ie. "mavariable" n'est pas la même variable que "MaVariable"
$ mavariable="Bonjour"
Utiliser une variable
• nécessite le caractère $ devant le nom
remplace cette référence par la valeur de la variable
• Exemple :
$ echo $mavariable
Bonjour !
LPIC1 / Comptia Linux+ alphorm.com™©
• on peu aussi utiliser la syntaxe suivante :
Bonjour !
$ echo ${mavariable}
Bonjour !
Portée d'une variable
• Par défaut : locales
n'est définie et disponible que pour l'instance de bash
n'est pas accessible par les autres programmes
• Variables d'environnement
accessible par tout les programmes au sain d'un même environnement
LPIC1 / Comptia Linux+ alphorm.com™©
accessible par tout les programmes au sain d'un même environnement
utilisateur
ie. tout les programmes lancés
• soit par vous-même
• soit par un des programmes que vous avez lancé
Variables d'environnement
• utiliser la commande export
• Par convention, la référence est en majuscules
$ MESSAGE="Bonjour !"
$ export MESSAGE
LPIC1 / Comptia Linux+ alphorm.com™©
• Attention ! l'argument de la commande export est bien la référence (le
nom) de la variable
pas sa valeur
ne pas utiliser le caractère $
variables de paramètres
• variables locales
• utiles en scripting (vu plus loin)
• $1, $2, $3 … enregistrent les arguments passés à une commande
• $0 enregistre la commande ayant permis de lancer la programme
LPIC1 / Comptia Linux+ alphorm.com™©
• $* enregistre tout les arguments
• $# enregistre le nombre d'arguments
• etc …
Variables de paramètres: exemple
• $0 est égale à "/bin/echo"
• $1 à "-e"
• $2 à "Bonjour !"
$ /bin/echo –e "Bonjour !"
LPIC1 / Comptia Linux+ alphorm.com™©
• $2 à "Bonjour !"
• $* à "-e 'Bonjour !'"
• $# à 2
Ce qu’on a couvert
• Ce qu'est une variable
• Comment les "déclarer" et les utiliser
LPIC1 / Comptia Linux+ alphorm.com™©
• Ce qu'est un environnement utilisateur
• Comment exporter une variable vers celui-ci
• Les variables de paramètres
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Commandes internes
Plan
• Qu'est ce qu'une commande exactement ?
• Spécificités des commandes internes
• Quelques commandes internes
LPIC1 / Comptia Linux+ alphorm.com™©
Changer de répertoire
Afficher le répertoire courant
Afficher un message
Quelques autres commandes
Qu'est ce qu'une commande exactement ?
• Un programme ou une partie d'un programme
soit un fichier spécifique
• cf les .exe sous windows
• identifié grâce à la variable d'environnement $PATH
- identifie les dossiers dans lesquels sont placés les programmes disponibles
LPIC1 / Comptia Linux+ alphorm.com™©
- identifie les dossiers dans lesquels sont placés les programmes disponibles
soit un élément du shell
• c'est ce qu'on nomme les commandes internes
Spécificités des commandes internes
• n'est pas un programme à part
la documentation se trouvera donc dans celle de bash
• essentielles au système
$ man bash
LPIC1 / Comptia Linux+ alphorm.com™©
• essentielles au système
opérations de base
• peuvent parfois être remplacée par des commandes externes
afin de les améliorer ou les adapter
Changer de répertoire
• "Change directory"
• Argument [repertoire]
chemin absolu
$ cd [repertoire]
LPIC1 / Comptia Linux+ alphorm.com™©
chemin absolu
• exemple : /home/alphorm/monrep
chemin relatif
• exemple : alphorm/monrep
un caractère spécial (raccourcis)
Changer de répertoire : raccourcis
~ répertoire personnel
. répertoire courant
.. répertoire parant du répertoire courant
LPIC1 / Comptia Linux+ alphorm.com™©
.. répertoire parant du répertoire courant
- dernier répertoire dans lequel nous nous situions
Afficher le répertoire courant
• "Print working directory"
• -L
suivre les liens symboliques
$ pwd [-LP]
LPIC1 / Comptia Linux+ alphorm.com™©
suivre les liens symboliques
• -P
ne pas suivre les liens symboliques
Afficher un message
• -n
Supprime le retour chariot (retour à la ligne) final
• -e
$ echo [-neE] [arguments ...]
LPIC1 / Comptia Linux+ alphorm.com™©
• -e
affiche les séquences d'échappement
• -E
Désactive l’interprétation des séquences d’échappement.
séquences d’échappement
a alerte (avertisseur sonore)
b retour arrière (backspace)
c suppression du retour-chariot final
f saut de page
n nouvelle ligne
r retour-chariot
LPIC1 / Comptia Linux+ alphorm.com™©
r retour-chariot
t tabulation horizontale
v tabulation verticale
 backslash
nnn le caractère dont le code ASCII octal vaut nnn (un à trois chiffres)
xnnn le caractère dont le code ASCII hexadécimal vaut nnn (un à trois chiffres)
Quelques autres commandes
• exec [commande [arguments]]
Permet de lancer un programme en remplacement du shell
• set [arg1 [arg2 [arg3 ...]]]
• Permet d’affecter aux variables de paramètres de bash des valeurs
déterminées.
LPIC1 / Comptia Linux+ alphorm.com™©
déterminées.
• time commande
Permet de lancer une commande, et d’afficher le temps qui aura été
nécessaire à son exécution
• exit / logout
stopper l’exécution de bash.
Ce qu’on a couvert
• Comment les commandes sont reconnues par le bash
• Ce qu'est une commande interne
• Les séquences d'échappement essentielles
• Plusieurs commandes internes essentielles
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Astuces
Plan
• Les astuces à connaitre pour bien utiliser le terminal
LPIC1 / Comptia Linux+ alphorm.com™©
Démonstration
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Comment utiliser le terminal à son maximum
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Gestion basique de fichiers
Plan
• Nommage
• Chemins d'accès
• Globbing
• Commandes essentielles
LPIC1 / Comptia Linux+ alphorm.com™©
Nommage
• Max 255 caractères
• sensibles à la casse
• Se limiter aux caractères spéciaux suivants :
LPIC1 / Comptia Linux+ alphorm.com™©
point (.)
délimiteurs (- et _)
espace (avec échappement ou quotes)
tilde en fin de fichier (indique un fichier de sauvegarde automatique)
Chemins d'accès
• le délimiteur est le slash (/)
• Racine unique : le dossier /
LPIC1 / Comptia Linux+ alphorm.com™©
• Deux types de chemins :
absolu
relatif
Globbing
• Remplacer des chaines de caractère par des jockers ("wildcards")
? n'importe quel caractère
* n'importe quelle chaine de caractère
[…] l'un des caractères entre les crochets
LPIC1 / Comptia Linux+ alphorm.com™©
[a-f] n'importe quel caractère entre "a" et "f"
Commandes essentielles
• cp [OPTION]... SOURCE CIBLE
copier des fichiers et des répertoires
• mv [option...] source cible
déplacer ou renommer des fichiers
rm [options] fichier...
LPIC1 / Comptia Linux+ alphorm.com™©
• rm [options] fichier...
supprimer des fichiers
• touch [-acm][-tdate] [–] fichier...
créer un fichier vide ou modifier son horodatage
Commandes essentielles (2)
• ls [options] [fichier...]
Afficher le contenu d’un répertoire
• mkdir [options] repertoire...
Créer des répertoires
rmdir [options] repertoire(s)
LPIC1 / Comptia Linux+ alphorm.com™©
• rmdir [options] repertoire(s)
Supprimer un répertoire vide
• ln [options] source [lien]
créer un lien
Ce qu’on a couvert
• Les conventions à respecter pour nommer un fichier
• Comment accéder à un fichier
• Ce qu'est le globbing
• Ce qu'est un lien (symbolique ou matériel)
LPIC1 / Comptia Linux+ alphorm.com™©
• L'horodatage Linux
• Les commandes essentielles
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
flux, pipes et redirections
Plan
• Fluxs
• Pourquoi les fluxs
• Redirections
• Pipe
LPIC1 / Comptia Linux+ alphorm.com™©
• utilisation et substitution d'arguments
Fluxs
1. entrée standard (stdin)
2. sortie standard (stdout)
3. erreur standard (stderr)
LPIC1 / Comptia Linux+ alphorm.com™©
Pourquoi les fluxs
• Rappel : philosophie Unix
• Collaboration entre les programmes
LPIC1 / Comptia Linux+ alphorm.com™©
• Texte = simple et standard, donc universel
Redirections
> stdout vers nouveau fichier
>> stdout à la suite d'un fichier
2> stderr vers noueau fichier
2>> stderr à la suite d'un fichier
&> stdout + stderr
LPIC1 / Comptia Linux+ alphorm.com™©
< stdin depuis un fichier
<< stdin à partir d'une chaine de caractères
<> stdin et stdout vers et depuis le même fichier
Pipe
• le caractère |
• stdout -> stdin
LPIC1 / Comptia Linux+ alphorm.com™©
utilisation et substitution d'arguments
• xargs
permet d’employer chaque sortie d’un programme comme argument d’un
autre
• antiquotes
LPIC1 / Comptia Linux+ alphorm.com™©
• antiquotes
permet de remplacer de manière itérative un argument par les sorties d’une
commande
Ce qu’on a couvert
• Ce qu'est un flux
• comment rediriger ces fluxs
• comment utiliser xargs et l'antiquote pour réaliser une substitution
d'arguments
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Textprocessing :
combinaison
Plan
• Concaténer des fichiers
• Fusionner les lignes de deux fichiers
• Regrouper les lignes de différents fichiers
• Regrouper les lignes de différents fichiers
LPIC1 / Comptia Linux+ alphorm.com™©
Concaténer des fichiers
$ cat [options] [fichier(s)...]
LPIC1 / Comptia Linux+ alphorm.com™©
Fusionner les lignes de deux fichiers
$ join [options] fichier_1 fichier_2
LPIC1 / Comptia Linux+ alphorm.com™©
Regrouper les lignes de différents fichiers
$ paste [options] [fichier...]
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Comment combiner des fichiers textes
par concaténation
par fusion de lignes
par regroupement
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Textprocessing :
transformations
Plan
• Les commandes utiles pour tranformer un texte
LPIC1 / Comptia Linux+ alphorm.com™©
Commandes utiles
• Convertir les tabulations en espaces
• Convertir les espaces en tabulations
• *
$ expand [-t num][fichier...]
$ unexpand [-a][fichier...]
LPIC1 / Comptia Linux+ alphorm.com™©
• Trier les lignes d’un fichier texte
• Découper un fichier
$ sort [options] [+POS1 [-POS2]] [fichier...]
$ split [options] [fichier_entrée[préfixe_sortie]]
Commandes utiles (2)
• Traduire ou éliminer des caractères
• Convertir les espaces en tabulations
• Éliminer les lignes dupliquées dans un fichier trié
$ tr [options] ENS1 ENS2
$ uniq [options] [fichier_entrée] [fichier_sortie]
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• les commandes utiles pour transformer un texte
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Textprocessing : formatage
Plan
• Les commandes utiles pour formater un texte
LPIC1 / Comptia Linux+ alphorm.com™©
Commandes utiles
• Mettre en forme des textes
• Numéroter les lignes d’un fichier
$ fmt [options] [fichier...]
$ nl [options] [fichier...]
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• les commandes utiles pour formater un texte
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Textprocessing : afficher
Plan
• Les commandes utiles pour afficher un texte
LPIC1 / Comptia Linux+ alphorm.com™©
Commandes utiles
• Afficher les premières lignes d'un fichier
• Afficher les dernières lignes d'un fichier
$ head [options] [fichier...]
$ tail [options] [fichier...]
LPIC1 / Comptia Linux+ alphorm.com™©
• Afficher un fichier page par page
$ less [fichier...]
Ce qu’on a couvert
• les commandes utiles pour afficher un texte
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Textprocessing : résumer
Plan
• Les commandes utiles pour résumer un texte
LPIC1 / Comptia Linux+ alphorm.com™©
Commandes utiles
• Supprimer une partie de chaque ligne d'un fichier.
• Afficher le nombre d'octets, de mots et de lignes d'un fichier
$ cut [options] [fichier...]
$ wc [options] [fichier...]
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• les commandes utiles pour résumer un texte
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Expressions régulières
Plan
• Qu'est ce qu'une expression régulière ?
• Comment écrire une expression régulière ?
• Caractères spéciaux
• Exemples
LPIC1 / Comptia Linux+ alphorm.com™©
Qu'est ce qu'une expression régulière ?
• un outil pour représenter des motifs au sain d'un texte
ie : un ensemble de chaines de caractères
cf globbing pour les noms de fichiers
• Utile pour :
LPIC1 / Comptia Linux+ alphorm.com™©
• Utile pour :
la recherche
la suppression
le remplacement
etc …
Comment écrire une expression régulière ?
• des caractères alphanumériques
exemple : Linux ou ACPI
• des caractères spéciaux
LPIC1 / Comptia Linux+ alphorm.com™©
permettant de désigner un ensemble de caractère
Caractères spéciaux
regexp
simple
[ … ] ensemble
[ x – x ] intervalle
. n'importe quel caractère
répétition
* zéro ou plus
+ un ou plus
? zéro ou un
LPIC1 / Comptia Linux+ alphorm.com™©
répétition
? zéro ou un
{n,m} de n à m fois
regexp
étendue
| ou logique
(…) sous-section
ligne
^ début
$ fin
Exemples
• lignes commençant par un nombre
• FreeBSD, OpenBSD ou NetBSD
^[0-9][0-9]*
(Free|Open|Net)BSD
LPIC1 / Comptia Linux+ alphorm.com™©
• Chaine contenant "Bonjour" puis "au revoir."
• Un mot commençant par un ou plusieurs 'a' ou 'b'
Bonjour.*au revoir.
[ab]+[a-Z]*
Ce qu’on a couvert
• Comprendre les expressions régulières
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Grep
Plan
• Pour quoi faire ?
• Syntaxe
• Demo
LPIC1 / Comptia Linux+ alphorm.com™©
Pour quoi faire ?
• rechercher
dans un fichier ou un flux
les lignes correspondant à une expression régulière
LPIC1 / Comptia Linux+ alphorm.com™©
Syntaxe
• Options
-c : afficher le décompte des lignes correspondantes
-i : ignorer la casse
$ grep [options] regexp [fichier…]
LPIC1 / Comptia Linux+ alphorm.com™©
-i : ignorer la casse
-E : utiliser la syntaxe étendue pour les expressions régulières
• identique à egrep
Démo
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Comment effectuer une recherche à l'aide d'une expression régulière
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Commandes GNU & Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
sed
Plan
• Pour quoi faire ?
• Syntaxe
• Substitution
• Drapeaux
LPIC1 / Comptia Linux+ alphorm.com™©
• Autres commandes
Pour quoi faire ?
• modifier le contenu
d'un fichier
d'un flux
ligne par ligne
LPIC1 / Comptia Linux+ alphorm.com™©
• ligne par ligne
• en fonction d'expressions régulière
Syntaxe
$ sed [options] commande [fichier…]
$ sed [options] –f script [fichier…]
• Options :
LPIC1 / Comptia Linux+ alphorm.com™©
-e : permet d'enchainer plusieurs commandes à la suite
-r : utilisation des expressions régulières étendues
-i : effectuer les modifications directement dans le fichier
Substitution
• s/modèle/remplacement/drapeau(x)
• Exemple :
$ sed s/^#$/#commentaire/ monfichier
LPIC1 / Comptia Linux+ alphorm.com™©
Drapeaux
g global toutes les occurrences
N
(nombre)
_ nième occurrence
w write écrire les modifications dans un fichier
p print afficher la ligne modifiée (avec –n)
e evaluate exécution de commande
LPIC1 / Comptia Linux+ alphorm.com™©
e evaluate exécution de commande
• Exemples
$ sed 's/A/B/g' monfichier
$ sed "s/.*5/echo '$A'/e" monfichier
$ sed 's/A/a/gw rslt' monfichier
Autres commandes
commande usage exemple
q quitter 3q
d effacer 3d
p affichage (avec –n) 3p
itexte insérer le texte 3imachin
LPIC1 / Comptia Linux+ alphorm.com™©
atexte ajouter le texte 3amachin
ctexte remplacer par le texte 3cmachin
= afficher 3=
Ce qu’on a couvert
• Comprendre les principes de base de sed.
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Edition de fichiers
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Edition de fichiers textes
Plan
• Les outils
• Emacs
• Nano
• Vim
LPIC1 / Comptia Linux+ alphorm.com™©
• La "guerre" d'éditeurs
• Un peu de sérieux
Les outils
• Graphiques
gedit sous Gnome
kate ou kedit sous KDE
mousepad sous Xfce
leafpad sous LXDE
• CLI
vim
nano
emacs
LPIC1 / Comptia Linux+ alphorm.com™©
leafpad sous LXDE
• Spécialisés
jEdit
Bluefish
etc …
Emacs
• Puissant
• Extensible
• Personnalisable
LPIC1 / Comptia Linux+ alphorm.com™©
• développé par James Gosling en 1981
• Toute une famille d'éditeurs
• Le plus courant : GNU Emacs, développé en 1984 par Richard Stallman
Démonstration
LPIC1 / Comptia Linux+ alphorm.com™©
Nano
• clone libre de Pico
• simple et efficace
minimal
LPIC1 / Comptia Linux+ alphorm.com™©
• écrit par Chris Allegretta en 1999
• contrôle par modificateurs (touche Ctrl)
Démonstration
LPIC1 / Comptia Linux+ alphorm.com™©
Vim
• la référence pour ce cours (et la LPIC)
• amélioration de vi
créé par Bill Joy en 1976
LPIC1 / Comptia Linux+ alphorm.com™©
présent sur tout les systèmes Unix depuis
modal
mais non-libre
• Braam Moolenaar en 1991
possède son propre language d'extension
Démonstration
LPIC1 / Comptia Linux+ alphorm.com™©
La "guerre" d'éditeurs
• Encore une occasion de troll o/
"Vim est un éditeur ; il ne cherche pas à inclure "tout sauf l'évier de la cuisine"
mais vous pouvez nettoyer le vôtre avec Vim."
"Emacs est un très bon système d'exploitation auquel il ne manque qu'un
bon éditeur de texte."
LPIC1 / Comptia Linux+ alphorm.com™©
• La réelle raison :
l'habitude
les réflexes conditionnés
Un peu de sérieux
• Avantages réels de Emacs
usage plus "naturel" pour un débutant
donne un style "hacker" ^^
ça fait plaisir à Stallman
• Avantages réels de Vim
LPIC1 / Comptia Linux+ alphorm.com™©
• Avantages réels de Vim
évite les troubles musculosquelettiques
plus léger, plus rapide
garanti par les standards POSIX
évite les conflits de touches de contrôle
Ce qu’on a couvert
• Les différentes solutions pour éditer du texte
• Les principaux éditeurs de texte en ligne de commande
LPIC1 / Comptia Linux+ alphorm.com™©
• Trôler en finesse
FIN
Edition de fichiers
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Vim
Plan
• Les modes
• Commandes utiles
• Vimtutor
LPIC1 / Comptia Linux+ alphorm.com™©
Les modes
Touche Mode Usage
Esc normal accéder à tout les autres
modes
i insertion ajouter du texte
: commande entrer des commandes
v visuel
LPIC1 / Comptia Linux+ alphorm.com™©
v visuel
voir démo sélection
q Ex idem que pour le mode
commande
Commandes utiles
commande usage
A ajouter en fin de ligne
u annuler la dernière opération
ctrl+r rétablir
yy copier la ligne
LPIC1 / Comptia Linux+ alphorm.com™©
yy copier la ligne
dd supprimer la ligne (couper)
p coller
x effacer le caractère
dw effacer jusqu'à la fin du mot
diw effacer le mot sous le curseur
Vimtutor
• tutorial intégré
$ vimtutor fr
LPIC1 / Comptia Linux+ alphorm.com™©
$ vimtutor fr
Ce qu’on a couvert
• Les modes de Vim
• Quelques commandes utiles
• Comment lancer le vimtutor
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Gestion des logiciels
Introduction aux packages
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Introduction aux packages
Plan
• Le concept
• Les différents types
• Les dépôts
• Les outils
LPIC1 / Comptia Linux+ alphorm.com™©
• Comparaison
Le concept
• archive
• assure la cohérence du système
• composé de :
fichiers
• exécutables ou sources
• configuration
LPIC1 / Comptia Linux+ alphorm.com™©
• documentation
• scripts (pré/post - installation
et désinstallation)
• dépendances
informations
Les différents types
• Debian : deb
• Redhat : rpm – Redhat Package Manager
• Arch : pacman (tar.gz, bz2 ou xz)
• Slackware : pkgtool (tgz ou xz)
LPIC1 / Comptia Linux+ alphorm.com™©
• Gentoo (cas particulier) : Portage (scripts ebuilds + sources)
• Puppy : pet
• etc …
Les dépôts
• évite d'avoir à chercher soit même un paquet
• met à disposition une liste de paquets
à jour
LPIC1 / Comptia Linux+ alphorm.com™©
validés
on-line (ou via un dépôt local, cd, dossier, etc …)
Les outils
• Gestionnaires de paquets
dpkg
rpm
• Gestionnaires de téléchargement et résolution de dépendances
apt – Debian & Ubuntu
LPIC1 / Comptia Linux+ alphorm.com™©
apt – Debian & Ubuntu
• outil graphique associé : synaptic
urpmi – Mandriva
Yum – Red Hat
Zypp - Suse
Comparaison
deb rpm
signature des paquets non oui
recommandations,
suggestions
oui non
programme de
vérification
non oui
LPIC1 / Comptia Linux+ alphorm.com™©
vérification
priorités oui non
• avantage de rpm : utilisé par la Linux Standard Base
• avantage de deb : meilleure adaptabilité
Ce qu’on a couvert
• Ce qu'est un paquet (ou package).
• Ce que sont les dépôts.
• Leur utilité.
• Les types d'outils disponibles.
LPIC1 / Comptia Linux+ alphorm.com™©
• Les avantages et inconvénients des formats deb et rpm.
FIN
Gestion des logiciels
RPM Package Manager
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
RPM Package Manager
Plan
• Introduction
• Commande
• Vérifier un paquet
• Installer un paquet
LPIC1 / Comptia Linux+ alphorm.com™©
• Mettre à jour un paquet
• Obtenir des informations sur un paquet
• Obtenir des informations sur un fichier
• Désinstaller un paquet
Introduction
• Gestionnaires de paquets rpm
• créé par Red Hat
en 1995
• Adopté par un grand nombre de distributions
LPIC1 / Comptia Linux+ alphorm.com™©
RHEL, Fedora & CentOS
Mandriva, Mageia & PCLinuxOS
SLES, SLED & OpenSuse
MeeGo
etc …
Commande
• Permet de :
construire
installer
$ rpm [options]
LPIC1 / Comptia Linux+ alphorm.com™©
installer
interroger
vérifier
mettre à jour
désinstaller
Vérifier un paquet
• Vérifie la correspondance entre
les métadonnées de la base et les
fichiers du paquet
taille
$ rpm -V paquet
• Options
-p : indiquer un fichier rpm au lieu
d'un nom de la base
LPIC1 / Comptia Linux+ alphorm.com™©
taille
md5
permissions
type
propriétaire
Installer un paquet
• Options supplémentaires :
-v : mode verbeux
• -vv : mode debug
$ rpm -i monpaquet.rpm
LPIC1 / Comptia Linux+ alphorm.com™©
-vv : mode debug
-h : afficher une "barre de progression"
--test : effectuer un simple test et afficher les conflits éventuels
• N'installe pas la paquet
Mettre à jour un paquet
• Identique à une installation
hormis que toutes les versions ultérieures du paquets seront supprimées
$ rpm -U monpaquet.rpm
LPIC1 / Comptia Linux+ alphorm.com™©
hormis que toutes les versions ultérieures du paquets seront supprimées
Obtenir des informations sur un paquet
• Options
-p : indiquer un fichier rpm au lieu d'un nom de la base
-l : lister les fichiers du paquet
$ rpm -qi paquet
LPIC1 / Comptia Linux+ alphorm.com™©
-l : lister les fichiers du paquet
• -s : afficher l'état (normal/non installed/replaced) de chaque fichier
-d : lister les fichiers de documentation
-c : lister les fichiers de configuration
Obtenir des informations sur un fichier
• Permet d'afficher à quel paquet correspond un fichier
$ rpm -qf /chemin_du_fichier
LPIC1 / Comptia Linux+ alphorm.com™©
Désinstaller un paquet
• Options
-v : mode verbeux
$ rpm -e paquet
LPIC1 / Comptia Linux+ alphorm.com™©
-v : mode verbeux
• -vv : mode debug
--allmatches : supprimer toutes les versions du paquet
--test : simple test
Ce qu’on a couvert
• Comment utiliser le RPM Package manager pour :
installer
mettre à jour
vérifier
désinstaller
LPIC1 / Comptia Linux+ alphorm.com™©
désinstaller
obtenir des informations
FIN
Gestion des logiciels
Yum
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Yum
Plan
• Qu'est ce que Yum ?
• Mise à jour
• Rechercher un paquet
• Informations
• Rechercher un paquet
• Administration
LPIC1 / Comptia Linux+ alphorm.com™©
• Gestion des dépendance
• Installer un paquet
• Désinstaller un paquet
Qu'est ce que Yum ?
• Gestionnaires de téléchargement et résolution de dépendances
• Créé pour Yellow Dog Linux
portage de Red Hat vers les processeurs de type Power
LPIC1 / Comptia Linux+ alphorm.com™©
• Par défaut sur :
les distributions Red Hat (Fedora, CentOS, RHEL, etc …)
Mise à jour
• en cas de premier lancement
• vérifier les mises à jour disponibles
$ yum update
$ yum update yum
$ yum check-update
LPIC1 / Comptia Linux+ alphorm.com™©
• à partir d'un fichier local
• mise à jour vers une version ultérieure de la distribution
$ yum upgrade
$ yum check-update
$ yum localupdate paquet.rpm
Rechercher un paquet
$ yum search Mot_clé
LPIC1 / Comptia Linux+ alphorm.com™©
$ yum search Mot_clé
• équivalent à rpm –qi
• version installée et disponibilité de mises à jour
Informations
$ yum info Paquet
$ yum list Paquet
LPIC1 / Comptia Linux+ alphorm.com™©
• afficher la liste des paquets fournissant une fonctionnalité ou un fichier
$ yum provides fonctionnalité
$ yum provides fichier
• afficher les paquets permettant de résoudre une dépendance donnée
• afficher les dépendances d'un paquet donné
Gestion des dépendance
$ yum resolvdep Paquet
LPIC1 / Comptia Linux+ alphorm.com™©
$ yum deplist Paquet
Installer un paquet
$ yum install Paquet
LPIC1 / Comptia Linux+ alphorm.com™©
$ yum localinstall Paquet.rpm
Désinstaller un paquet
$ yum remove Paquet
$ yum erase Paquet
LPIC1 / Comptia Linux+ alphorm.com™©
$ yum erase Paquet
• équivalent à rpm –qi
• version installée et disponibilité de mises à jour
Rechercher un paquet
$ yum search Mot_clé
LPIC1 / Comptia Linux+ alphorm.com™©
$ yum list Paquet
• nettoyer le cache
permet de libérer de l'espace disque en supprimant les rpm téléchargés
Options : headers, packages, metadata, dbcache, plugins, expire-cache,
rpmdb, all
Administration
$ yum clean option
LPIC1 / Comptia Linux+ alphorm.com™©
rpmdb, all
• Shell mode
$ yum shell
Ce qu’on a couvert
• Comment utiliser Yum pour :
installer
mettre à jour
rechercher et s'informer
désinstaller
LPIC1 / Comptia Linux+ alphorm.com™©
désinstaller
FIN
Gestion des logiciels
configuration de Yum
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
configuration de Yum
Plan
• Introduction
• Options de base
• Modifier les dépôts
• Gestion des priorités
LPIC1 / Comptia Linux+ alphorm.com™©
• Ajout de dépôt via rpm
Introduction
• Configuration par défaut :
habituellement suffisante
• Modifier les options de base
Ajouter des dépôts :
LPIC1 / Comptia Linux+ alphorm.com™©
• Ajouter des dépôts :
non officiels
plus adaptés à votre usage
offrant des programmes spécifiques
personnel
Options de base
• /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
LPIC1 / Comptia Linux+ alphorm.com™©
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=3
[comments abridged]
# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d
• configurer le niveau de verbosité (entre 0 et 10)
• exclure des paquets de l'installation et de la mise à jour
Options de base (2)
debuglevel=2
exclude=package_name [more_package_names]
LPIC1 / Comptia Linux+ alphorm.com™©
• activer / désactiver la vérification des signatures GPG (0 ou 1)
• nombre d'essais avant de retourner une erreur (0 ou plus)
gpgcheck=0
retries=0
• nombre maximum de version différentes d'un paquets installés
1 ou plus
attention : cela comprend aussi le nombre de Kernel
Prendre en compte le type d'architecture lors des maj (0 ou 1)
Options de base (3)
installonly_limit=value
LPIC1 / Comptia Linux+ alphorm.com™©
• Prendre en compte le type d'architecture lors des maj (0 ou 1)
• exclure des paquets de l'installation et de la mise à jour
ne met à jour le paquet que si un paquet plus récent pour la même
architecture (ex i386) est disponible
exactarch=1
• /etc/yum.repos.d/
Modifier les dépôts
[NomDUneEntrée]
name=Fedora $releasever - $basearch
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo
=fedora-$releasever&arch=$basearch
gpgcheck=1
LPIC1 / Comptia Linux+ alphorm.com™©
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora
enabled=1
Gestion des priorités
• /etc/yum/pluginconf.d/priorities.conf
# yum install yum-priorities
[main]
enabled=1
LPIC1 / Comptia Linux+ alphorm.com™©
• Pour chaque dépôt, dans les fichier repos
enabled=1
priority=1
Ajout de dépôt via rpm
• Télécharger le paquet
• Importer la clé GPG
• Vérifier le checksum du paquet
$ wget http://packages.sw.be/rpmforge-release/rpmforge-release-
0.5.3-1.el6.rf.i386.rpm
$ rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-
KEY.dag.txt
LPIC1 / Comptia Linux+ alphorm.com™©
• Vérifier le checksum du paquet
• Installer la paquet et tout mettre à jour
$ rpm -K rpmforge-release-0.5.1-1.el5.rf.i386.rpm
# rpm -i rpmforge-release-0.5.1-1.el5.rf.i386.rpm
# yum check-update
Ce qu’on a couvert
• Comment configurer Yum
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Gestion des logiciels
dpkg
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
dpkg
Plan
• Introduction
• La commande dpkg
• Installer un paquet
• Obtenir des informations sur un paquet
LPIC1 / Comptia Linux+ alphorm.com™©
• Obtenir des informations sur un fichier
• Désinstaller un paquet
• Administration
Introduction
• Gestionnaires de paquets deb
• créé par Ian Jackson
en 1993
un des premiers systèmes de gestion de paquets moderne complet
inspira RPM, le simplifiant
LPIC1 / Comptia Linux+ alphorm.com™©
inspira RPM, le simplifiant
• Adopté par Debian et la plupart de ses dérivés
Ubuntu, Linux Mint …
Knoppix, Damn Small Linux …
CrunchBang Linux, etc …
La commande dpkg
• Permet de :
construire
installer
$ dpkg [options] action
LPIC1 / Comptia Linux+ alphorm.com™©
installer
interroger
vérifier
mettre à jour
désinstaller
Installer un paquet
• Options supplémentaires :
-R : mode récursif
• indiquer un répertoire au lieu d'un paquet
$ dpkg -i monpaquet.rpm
LPIC1 / Comptia Linux+ alphorm.com™©
indiquer un répertoire au lieu d'un paquet
--ignore-depends=package : ignorer les informations de dépendances du
paquet
-G : ne pas installer si une version plus récente du paquet est déjà installée
-E : ne pas installer si la même version du paquet est déjà installée
--no-act : simple test
Obtenir des informations sur un paquet
• Si le paquet est installé
$ dpkg -p paquet
LPIC1 / Comptia Linux+ alphorm.com™©
• Si le paquet n'est pas installé
$ dpkg -I paquet.rpm
Obtenir des informations sur un fichier
• Afficher à quel paquet(s) correspond(ent) un (ou plusieurs) fichier(s)
$ dpkg –S pattern
LPIC1 / Comptia Linux+ alphorm.com™©
• Lister les fichiers associés à un paquet
$ dpkg –S pattern
$ dpkg –L paquet
Désinstaller un paquet
• En conservant les fichiers de configuration
Options :
• --ignore-depends et --no-act (cf installation)
$ dpkg -r paquet
LPIC1 / Comptia Linux+ alphorm.com™©
• -B : déconfiguration automatique des paquets dépendant de celui-ci
• En supprimant les fichiers de configuration
$ dpkg -P paquet
Administration
• Relancer le script de post-installation d'un paquet
• Lister tout les paquets correspondant à un expression
$ dpkg --configure paquet
LPIC1 / Comptia Linux+ alphorm.com™©
• Lister tout les paquets correspondant à un expression
• Chercher les paquets partiellement installés
$ dpkg -l pattern
$ dpkg -C
Ce qu’on a couvert
• Comment utiliser dpkg pour :
installer
mettre à jour
vérifier
désinstaller
LPIC1 / Comptia Linux+ alphorm.com™©
désinstaller
obtenir des informations
FIN
Commandes GNU & Unix
APT-CACHE
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
APT-CACHE
Plan
• Introduction à APT
• apt-cache
• Informations sur un paquet
• Statistiques
LPIC1 / Comptia Linux+ alphorm.com™©
• Gestion des dépendances
• Rechercher des paquets
Introduction à APT
• Advanced Packaging Tool
gestionnaire de paquet, téléchargement et résolution de dépendances
interface à dpkg
bibliothèque de fonctions utilisée par plusieurs programmes
• apt-get, apt-cache, aptitude, etc …
LPIC1 / Comptia Linux+ alphorm.com™©
• A l'origine uniquement destiné aux paquets deb
aujourd'hui compatible rpm
• grâce à apt-rpm
utilisé par le projet Fink
• porter les applications Unix vers Mac OS X
apt-cache
• Manipulation du cache de paquets
aucune manipulation du système
recherche dans les métadonnées
$ apt-cache [options] action
LPIC1 / Comptia Linux+ alphorm.com™©
Informations sur un paquet
$ apt-cache showpkg paquet
LPIC1 / Comptia Linux+ alphorm.com™©
Statistiques
$ apt-cache stats
LPIC1 / Comptia Linux+ alphorm.com™©
Gestion des dépendances
• Trouver les dépendances insatisfaites
• Afficher les dépendances d'un paquet
$ apt-cache unmet
LPIC1 / Comptia Linux+ alphorm.com™©
$ apt-cache depends paquet
Rechercher des paquets
• Paquets installés
• Dans les dépôts
$ apt-cache pkgnames [expression]
LPIC1 / Comptia Linux+ alphorm.com™©
$ apt-cache search [expression]
Ce qu’on a couvert
• Comment utiliser apt-cache pour recueillir des informations sur mes
paquets
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Commandes GNU & Unix
apt-get
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
apt-get
Plan
• Administration
• Installation et désinstallation
• Mise à jour
• Options
LPIC1 / Comptia Linux+ alphorm.com™©
Administration
• Mettre à jour les informations sur les dépôts
• recherche de dépendances défectueuses
$ apt-get update
LPIC1 / Comptia Linux+ alphorm.com™©
met à jour le cache des paquets
• nettoyer le référentiel local des paquets récupérés
$ apt-get check
$ apt-get clean
Installation et désinstallation
• Installer
• Désinstaller
$ apt-get install package
$ apt-get remove package
LPIC1 / Comptia Linux+ alphorm.com™©
• Récuper un paquet source
$ apt-get source package
Mise à jour
• Mettre à jour tout les packages installés
• Avec système intelligent de résolution de conflits
$ apt-get upgrade
LPIC1 / Comptia Linux+ alphorm.com™©
prend en compte les changement de dépendances
gère un système de priorités
$ apt-get dist-upgrade
Options
Option Action(s) Description
-d upgrade, dselect-upgrade,
install, source
téléchargement sans
installation
-f install, remove répare les dépendances
insatisfaites
-m upgrade, dselect-upgrade, ignorer les packages
LPIC1 / Comptia Linux+ alphorm.com™©
-m upgrade, dselect-upgrade,
install, remove, source
ignorer les packages
inaccessibles
-q / -qq toutes mode silencieux
-s toutes simulation
-y toutes répondre "yes" à tout prompt
-b source compiler après récupération
--no-upgrade install ne pas mettre à jour
Ce qu’on a couvert
• Comment utiliser apt-get pour :
installer
désinstaller
mettre à jour
LPIC1 / Comptia Linux+ alphorm.com™©
• Les options indispensables de apt-get.
FIN
Gestion des logiciels
configuration de APT
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
configuration de APT
Plan
• Introduction
• Fichier sources.list : exemple
• Adresse
• Distribution
LPIC1 / Comptia Linux+ alphorm.com™©
• Sections
Introduction
• Configuration par défaut :
habituellement suffisante
• Modifier les options de base
Ajouter des dépôts :
LPIC1 / Comptia Linux+ alphorm.com™©
• Ajouter des dépôts :
non officiels
plus adaptés à votre usage
offrant des programmes spécifiques
personnel
• /etc/apt/sources.list
Fichier sources.list : exemple
deb http://fr.archive.ubuntu.com/ubuntu/ precise main restricted
deb http://security.ubuntu.com/ubuntu precise-security main
restricted
deb http://fr.archive.ubuntu.com/ubuntu/ precise-updates main
restricted
LPIC1 / Comptia Linux+ alphorm.com™©
# Dépôts de sources (uniquement utiles pour télécharger les
sources avec apt-get source. Dans ce cas, enlever les #)
# deb-src http://fr.archive.ubuntu.com/ubuntu/ precise main
restricted
# deb-src http://security.ubuntu.com/ubuntu precise-security main
restricted
# deb-src http://fr.archive.ubuntu.com/ubuntu/ precise-updates
main restricted
• Exemple :
bloc 1 :
deb : paquets d'installation
Adresse
deb http://fr.archive.ubuntu.com/ubuntu/ precise main restricted
LPIC1 / Comptia Linux+ alphorm.com™©
• deb : paquets d'installation
• deb-src : paquets source (apt-get source)
bloc 2 : URL
• Exemple :
bloc 3 : distribution
• nom de code
Ubuntu : quantal (12.10), precise (12.04), lucid (10.04) …
Distribution
deb http://fr.archive.ubuntu.com/ubuntu/ precise main restricted
LPIC1 / Comptia Linux+ alphorm.com™©
- Ubuntu : quantal (12.10), precise (12.04), lucid (10.04) …
- Debian : lenny, squeeze, Wheezy, sid
• catégorie de version
- oldstable, stable, testing, unstable
Champs 4 : sections du dépôt
Sections
deb http://fr.archive.ubuntu.com/ubuntu/ precise main restricted
Ubuntu
Maintenus par l'équipe
d'Ubuntu
Maintenus par les
utilisateurs d'Ubuntu
Logiciels libres main universe
Logiciels non-libres ou
possiblement non-libres
restricted multiverse
LPIC1 / Comptia Linux+ alphorm.com™©
Debian
• main : paquets principaux de Debian
• non-free : paquets non libres
• contrib : paquets dépendant de paquets ne respectant pas la Debian
Policy
possiblement non-libres
restricted multiverse
Ce qu’on a couvert
• Comment configurer les dépots APT
LPIC1 / Comptia Linux+ alphorm.com™©
FIN
Configuration du
matériel
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
matériel
Introduction
Plan
• Un peu de théorie
• Qu'est ce que le BIOS ?
• IRQs
• Ports d'E/S
LPIC1 / Comptia Linux+ alphorm.com™©
• Adresses DMA
Un peu de théorie
• Générale
• Nécessaire pour comprendre ce chapitre
LPIC1 / Comptia Linux+ alphorm.com™©
Qu'est ce que le BIOS ?
• Basic Input Output System
firmware
dans la ROM de la carte mère
• EEPROM (electronically erasable programmable read-only memory)
• ie. mémoire flash
LPIC1 / Comptia Linux+ alphorm.com™©
• ie. mémoire flash
permet le démarrage du système
• Historiquement également destiné à gérer les E/S
offre des informations au kernel sur le matériel
IRQs
• Interruptions matérielles
déclenchées par les périphériques
afin de prendre la main sur le processeur
• suspend le travail en cours
exemple : entrée clavier
LPIC1 / Comptia Linux+ alphorm.com™©
exemple : entrée clavier
• chaque périphérique dispose d'un numéro d'interruption
gérées par le contrôleur d'IRQ
x86 : de 0 à 15 (plus pour les x86_64)
permet de définir les priorités
Ports d'E/S
• espace mémoire fixe et unique
allouée à un périphérique
permettant la communication entre le CPU et le périphériques
LPIC1 / Comptia Linux+ alphorm.com™©
• Exemple : le port d'E/S du port série un (COM1 sous windows,
/dev/ttyS0 sous Linux) est 0x03f8
Adresses DMA
• Direct Memory Access
système d’accès direct à la mémoire par les périphériques
afin d’en disposer comme d’une zone de tampon
• Espace unique
LPIC1 / Comptia Linux+ alphorm.com™©
• Espace unique
permet d'alléger la charge système
en évitant tout mécanisme de pooling
Ce qu’on a couvert
• Quelques prérequis théoriques nécessaires pour la configuration
matérielle sous Linux
LPIC1 / Comptia Linux+ alphorm.com™©
Configuration du
matériel
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
matériel
procfs
Plan
• Introduction
• Objectif
• Alimentation
processeur(s)
• Processeur(s)
• IRQs
• Mémoire
• Kernel
LPIC1 / Comptia Linux+ alphorm.com™©
zones thermiques
• BUS
USB
PCI
• Informations générales
Introduction
• système de fichier virtuel
• destiné à la gestion des processus
• initié par Tom J. Killian pour Unix 8th edition
LPIC1 / Comptia Linux+ alphorm.com™©
• procsys : adaptation pour plan 9
donna presque tout les dérivés actuels : BSD, Solaris et Linux
Objectif
• Récupérer (voir modifier) des informations sur :
les processus
• répertoires nommés d'après le PID de chaque processus
le matériel
LPIC1 / Comptia Linux+ alphorm.com™©
le matériel
ainsi que des informations générales sur le système
• Nous reviendrons sur le premier point dans une vidéo ultérieure
Alimentation
• Répertoire
ACPI
ou APM (pour les plus anciens)
• obsolète depuis le kernel 2.6.36 : remplacement par sysfs
Fichiers
LPIC1 / Comptia Linux+ alphorm.com™©
• Fichiers
info : informations générales
sleep : étâts de sommeil du système
button : interrupteurs
etc …
Alimentation : le processeur
• répertoire /proc/acpi/processor
un répertoire par processeur
• info : possibilités d'économie d'énergie
power : état courant du processeur
LPIC1 / Comptia Linux+ alphorm.com™©
• power : état courant du processeur
• etc …
Alimentation : zones thermiques
• répertoire /proc/acpi/thermal_zone
un répertoire par zone thermique
• temperature : température actuelle
• state : état actuel (ok ou refroidissement "active" ou "passive")
• cooling_mode : activer le refroidissement actif ou passif
LPIC1 / Comptia Linux+ alphorm.com™©
• cooling_mode : activer le refroidissement actif ou passif
• trip_points : limites de température
- activation du mode actif, suspension ("hot") et arrêt immédiat ("critical")
• souvent contrôlé par le BIOS, et non l'ACPI
peu de possibilités d'intervention (ex : pour les ventilateurs et le fichier state)
BUS
• /proc/bus/
• un répertoire par type de bus
USB
LPIC1 / Comptia Linux+ alphorm.com™©
PCI
Pnp
USB
• /proc/bus/usb/
• un répertoire par bus
exemple : 001
permettant de retrouver les fichiers correspondants aux périphériques
LPIC1 / Comptia Linux+ alphorm.com™©
• Fichiers à la racine du répertoire :
devices : contrôleur usb
drivers
PCI
• /proc/bus/pci/
• fichiers difficiles d'interprétation
• Utiliser la commande suivante :
LPIC1 / Comptia Linux+ alphorm.com™©
utilise /proc/bus/pci/devices
liste les périphériques PCI
IRQs et Ports d'E/S vus par le contrôleur PCI (non le kernel)
• permet de vérifier les conflits
$ lspci -vb
Processeur(s)
• /proc/cpuinfo
• fichiers difficiles d'interprétation
• Utiliser la commande suivante :
LPIC1 / Comptia Linux+ alphorm.com™©
utilise /proc/bus/pci/devices
liste les périphériques PCI
IRQs et Ports d'E/S vus par le contrôleur PCI (non le kernel)
• permet de vérifier les conflits
$ lspci -vb
• /proc/cpuinfo
Processeur(s)
processor : 0
model name : Intel(R) Pentium(R) 4 CPU 2.80GHz
cache size : 1024 KB
physical id : 0
siblings : 2
core id : 0
LPIC1 / Comptia Linux+ alphorm.com™©
core id : 0
cpu cores : 1
processor : 1
model name : Intel(R) Pentium(R) 4 CPU 2.80GHz
cache size : 1024 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 1
• /proc/interrupts
IRQs
CPU0 CPU1
0: 1366814704 0 XT-PIC timer
1: 128 340 IO-APIC-edge keyboard
2: 0 0 XT-PIC cascade
8: 0 1 IO-APIC-edge rtc
12: 5323 5793 IO-APIC-edge PS/2 Mouse
13: 1 0 XT-PIC fpu
LPIC1 / Comptia Linux+ alphorm.com™©
13: 1 0 XT-PIC fpu
16: 11184294 15940594 IO-APIC-level Intel EtherExpress Pro 10/100 Ethernet
20: 8450043 11120093 IO-APIC-level megaraid
30: 10432 10722 IO-APIC-level aic7xxx
31: 23 22 IO-APIC-level aic7xxx
NMI: 0
ERR: 0
IRQs
nombre
d'interruptions
type périphérique
Mémoire
• /proc/kcore
"alias" vers la mémoire vive
• /proc/meminfo
état courant de la mémoire
LPIC1 / Comptia Linux+ alphorm.com™©
• résumé par disque de l'utilisation de la swap
• quantitiés totales de mémoire & swap libres et utilisées
$ swapon -s
$ free
Kernel
• /proc/sys/
paramètres du kernel au lancement
modifiables via
• /proc/modules : modules noyaux chargés en mémoire
$ sysctl
LPIC1 / Comptia Linux+ alphorm.com™©
• /proc/modules : modules noyaux chargés en mémoire
• /proc/kmsg : tampon des messages kernel
$ lsmod
$ dmesg
Informations générales
• /proc/version & /proc/sys/kernel/version
version du système
• /proc/loadavg
$ uname -a
LPIC1 / Comptia Linux+ alphorm.com™©
• /proc/loadavg
temps de fonctionnement du système
$ uptime
Ce qu’on a couvert
• Ce qu'est le répertoire /proc.
• Comment utiliser procfs pour obtenir des informations systèmes.
LPIC1 / Comptia Linux+ alphorm.com™©
• Les commandes essentielles utilisant procfs.
Configuration du
matériel
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
matériel
Sysfs
Plan
• Introduction
• Historique
• Dossiers
LPIC1 / Comptia Linux+ alphorm.com™©
Introduction
• système de fichier virtuel
basé sur ramfs
• Permet :
de récolter des informations sur le hardware
remplaçant de dossiers "superflus" procfs
LPIC1 / Comptia Linux+ alphorm.com™©
• remplaçant de dossiers "superflus" procfs
de configurer certaines fonctionnalités du kernel
• un fichier par valeur
ex : le fichier ro pour les périphériques de type block
ex : le fichier address pour les périphériques réseau
Historique
• Créé sous l'insistance de Linus Torvalds
pour Linux 2.5
pour debugger le nouveau modèle de pilote
Avant :
LPIC1 / Comptia Linux+ alphorm.com™©
• Avant :
aucune méthode de représentation unifiée des relations pilote/périphérique
pas de mécanisme générique de hotplug
procfs encombré (pas seulement processus)
• /sys/devices/
couche physique
relations parent / enfant
complexe
Devices
LPIC1 / Comptia Linux+ alphorm.com™©
• les autres dossiers contiennes des liens symboliques vers les dossiers de
/sys/devices/
• /sys/bus/
différents buses (usb, pci, etc …)
• /sys/class/
le plus pratique
Bus & Class
LPIC1 / Comptia Linux+ alphorm.com™©
le plus pratique
par types
• ex : imprimantes, son, usb, réseaux …
• /sys/block/ : périphériques de type block
• /sys/module/ : modules du kernel
Autres dossiers
LPIC1 / Comptia Linux+ alphorm.com™©
• /sys/power/ : gestion de l'état d'activation de certains périphériques
Ce qu’on a couvert
• A quoi correspond le dossier /sys/
• Pourquoi et comment l'utiliser.
LPIC1 / Comptia Linux+ alphorm.com™©
• Sa structure.
Configuration du
matériel
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
matériel
udev
Plan
• Introduction
• Historique
• Pseudo-périphériques
• Réseau
LPIC1 / Comptia Linux+ alphorm.com™©
• Block
• Configuration
Introduction
• fait le lien entre sysfs et les informations données par l'utilisateur
• pour permettre l'accès aux périphériques
LPIC1 / Comptia Linux+ alphorm.com™©
de manière simple
via des fichiers, ou "nodes"
• Exemple : le serveur graphique accède à la souris via /dev/input/mice
Historique
• à l'origine, fichiers inscrits en dur
puis devfs
• système de fichier virtuel, mais statique
• création de udev
LPIC1 / Comptia Linux+ alphorm.com™©
• création de udev
depuis Linux 2.6.13 ( août 2005)
pour répondre aux problématiques du hotplug
ne représenter que les périphériques réellement présents
• /dev/null
• /dev/zero
Pseudo-périphériques
LPIC1 / Comptia Linux+ alphorm.com™©
• /dev/full
• /dev/random & /dev/urandom
• Sous Linux, pas de nœud particulier
Toujours créés par udev, mais directement pour les logiciels
habituellement : eth[012…]
Consistent Network Device Naming
Réseau
LPIC1 / Comptia Linux+ alphorm.com™©
• Consistent Network Device Naming
depuis Fedora 15
em[123…] : interfaces embarquées
p<slot>p<port> : interfaces sur carte PCI
• /dev/fd[abc…]
• /dev/hd[abc…]
• /dev/sd[abc…]
Block
LPIC1 / Comptia Linux+ alphorm.com™©
• /dev/st, ht, nst
• /dev/sr[012…]
• /dev/loop[012…]
• /etc/udev
Configuration
LPIC1 / Comptia Linux+ alphorm.com™©
• /etc/udev/rules.d
Ce qu’on a couvert
• Ce qu'est le répertoire /dev.
• Son fonctionnement.
• Pourquoi et comment l'utiliser.
• Quelques exemple de "nodes".
LPIC1 / Comptia Linux+ alphorm.com™©
• Ses fichiers de configuration.
Configuration du
matériel
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
matériel
Introduction au Kernel
Plan
• La naissance
• L'essor
• Qu'est ce qu'un kernel ?
• Espace utilisateur et espace noyau
LPIC1 / Comptia Linux+ alphorm.com™©
• Un noyau monolithique
• Un noyau modulaire
La naissance
• à l'origine
Linux Torvalds, 22ans, Finlandais, Université d'Helsinsky
simple émulateur de terminal
dans un but ludique
LPIC1 / Comptia Linux+ alphorm.com™©
• 5 oct 1991 : annonce sur Usenet comp.os.minix
rapide engouement
cf. la cathédrale et le basar de Eric Raymond
L'essor
• mars 1994 : version 1.0
• juillet 1996 : version 2.0
licence GPL
2000 : Open Source Development Labs
LPIC1 / Comptia Linux+ alphorm.com™©
• 2000 : Open Source Development Labs
• janvier 2007 : Fondation Linux
• février 2013 : version 3.8
Qu'est ce qu'un kernel ?
• offre une abstraction matérielle pour les logiciels
• gestion des processus
LPIC1 / Comptia Linux+ alphorm.com™©
• partie la plus critique de l'OS
rôle central
Espace utilisateur et espace noyau
• partitionnement virtuel de la RAM
protection pour l'espace utilisateur
• limiter les droits des services et applications
LPIC1 / Comptia Linux+ alphorm.com™©
• limiter les droits des services et applications
éviter les accidents et failles de sécurité
• appels système
Un noyau monolithique
• fort débat avec Andrex S Tanenbaum
• avantages
concept simple : facilité la conception
bonne vitesse d'exécution
LPIC1 / Comptia Linux+ alphorm.com™©
bonne vitesse d'exécution
• défauts
difficulté de maintenance
volume (cf. hotplug)
Un noyau modulaire
• depuis la version 1.2
mars 1995
séparation de certaines fonctionnalité du "bloc" monolithique
LPIC1 / Comptia Linux+ alphorm.com™©
• séparation de certaines fonctionnalité du "bloc" monolithique
chargement à la demande
simplification, allègement
ex : drivers, systèmes de fichier
Ce qu’on a couvert
• L'histoire du noyau Linux.
• Sa structure.
LPIC1 / Comptia Linux+ alphorm.com™©
• Son rôle.
Configuration du
matériel
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
matériel
kernel modules
Plan
• Introduction
• afficher les modules actuellement chargés
• Charger un module
• Décharger un module
LPIC1 / Comptia Linux+ alphorm.com™©
Introduction
• la plupart des drivers sont incorporés comme des modules
ainsi que d'autres fonctionnalités, comme les systèmes de fichier
mais certains peuvent avoir été intégrés au noyau
LPIC1 / Comptia Linux+ alphorm.com™©
• mais certains peuvent avoir été intégrés au noyau
d'où certaines différences suivant les installations
• /lib/modules
afficher les modules actuellement chargés
$ lsmod
Module Size Used by
isofs 35820 0
zlib_inflate 21888 1 isofs
floppy 65200 0
nls_iso8859_1 5568 1
LPIC1 / Comptia Linux+ alphorm.com™©
nls_iso8859_1 5568 1
nls_cp437 7296 1
vfat 15680 1
fat 49536 1 vfat
sr_mod 19236 0
ide_cd 42848 0
cdrom 39080 2 sr_mod,ide_cd
nom taille nombre et noms des modules l'utilisant
Charger un module
• charge un seul et unique module
• nécessite d'avoir chargé les modules dont il dépend
# insmode chemin_vers_le_module
LPIC1 / Comptia Linux+ alphorm.com™©
• nécessite d'avoir chargé les modules dont il dépend
• Exemple :
# insmod /lib/modules/2.6.26/kernel/drivers/block/floppy.ko
Charger un module (2)
• Options :
-v : verbose
-C fichier : changer de fichier de configuration
# modprobe nom_du_module
LPIC1 / Comptia Linux+ alphorm.com™©
-C fichier : changer de fichier de configuration
• /etc/modprobe.conf par défaut
-n : test
-r : décharger un module
-- show-depends
-l : lister les modules disponibles
Décharger un module
• Permet de libérer de la mémoire
• Options :
# rmmod nom_du_module
LPIC1 / Comptia Linux+ alphorm.com™©
• Options :
-v : verbose
-f : force
-w : wait
Ce qu’on a couvert
• La gestion du chargement et déchargement manuel des modules Linux.
LPIC1 / Comptia Linux+ alphorm.com™©
Configuration du
matériel
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
matériel
Les disques durs
Plan
• Qu'est ce qu'un disque dur ?
• Les différents types
• PATA
• SATA
LPIC1 / Comptia Linux+ alphorm.com™©
• SCSI
• Disques externes
Qu'est ce qu'un disque dur ?
• mémoire de masse magnétique
mécanique
• système très ancien
1956 : 305 RAMAC d'IBM – 5Mo – 24" – 50 000 $ soit env. 300 000€ de 2013
2011 : Hitachi 7K4000 – 4Go – 3,5" – env. 200€ en 2013
LPIC1 / Comptia Linux+ alphorm.com™©
2011 : Hitachi 7K4000 – 4Go – 3,5" – env. 200€ en 2013
• Petit à petit concurrencé par les mémoires électroniques
cartes SD & "disques" SSD
plus efficaces mais plus chers
Les différents types
• IDE : Integrated Drive Electronics
PATA : Parallel Advanced Technology Attachment
LPIC1 / Comptia Linux+ alphorm.com™©
• SATA : Serial Advanced Technology Attachment
• SCSI : Small Computer System Interface
SAS : Serial Attached SCSI
PATA
• quasi disparu depuis 2005
• peu pratique
LPIC1 / Comptia Linux+ alphorm.com™©
• faibles performances
• normalement /dev/hdx
mais souvent reconnus comme du SCSI par Linux
SATA
• apparu en 2003
• a largement remplacé le PATA
branchement à chaud
meilleurs performances
meilleur cablage
LPIC1 / Comptia Linux+ alphorm.com™©
meilleur cablage
• pas de nommage spécifique
souvent comme du SCSI
parfois comme du PATA
SCSI
• standard de bus très large
disques mais aussi imprimantes, scanners, etc …
• SAS : Serial Attached SCSI
mode de transmission en série du SATA + SCSI
Plus orienté pro
LPIC1 / Comptia Linux+ alphorm.com™©
• Plus orienté pro
• /dev/sdx
de nos jours représente la plupart des disques durs, dits "pseudo-scsi"
Disques externes
• USB
• IEEE-1394
LPIC1 / Comptia Linux+ alphorm.com™©
dit Firewire par Apple ou i.Link par Sony
• e-SATA
• SCSI
Ce qu’on a couvert
• Ce qu'est un disques dur.
• Les différents types de disques durs.
LPIC1 / Comptia Linux+ alphorm.com™©
• Leur gestion par Linux.
Configuration du
matériel
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
matériel
Partitionning
Plan
• Qu'est ce que c'est ?
• Pourquoi ?
• Comment ?
• Et les autres formats de table ?
LPIC1 / Comptia Linux+ alphorm.com™©
• Adressage
• Codes de partition
Qu'est ce que c'est ?
• Permet de scinder un disque en plusieurs parties
• Sous Windows, donne l'illusion d'avoir plusieurs disques à partir d'un
seul
LPIC1 / Comptia Linux+ alphorm.com™©
seul
• Sous linux, simplement désignées par un chiffre après le nom du disque
ex : /dev/sda1
Pourquoi ?
• Multi-OS
• varier les systèmes de fichier
• Gestion de l'espace
LPIC1 / Comptia Linux+ alphorm.com™©
• Protection pour la corruption
• Sécurité – cf. mount & fstab
• Sauvegarde
Comment ?
• traditionnellement (x86 – Intel MBR)
• Une table de partition principale (de 1 à 4)
dans le MBR
LPIC1 / Comptia Linux+ alphorm.com™©
indique les partitions primaire (4 max)
• Plus une table par partition étendue (à partir de 5)
dans le EBR
permet de créer des partitions logiques
Et les autres formats de table ?
• Fonctionnent globalement de la même manière
peuvent nécessiter des outils différents
pas dans le cadre de ce cours, hormis fdisk (cf gdisk) et GRUB1 (patch)
LPIC1 / Comptia Linux+ alphorm.com™©
• Power-PC : Apple Partition Map
• x86-64 avec UEFI et Max x86 : GUID Partition Table
encore expérimental, mais parfaitement supporté par Linux depuis un
moment
Adressage
• CHS : Cylinder/Head/Sector
ECHS
LBA (Logical block addressing)
LPIC1 / Comptia Linux+ alphorm.com™©
• LBA (Logical block addressing)
introduit par la norme SCSI en 1994
Codes de partition
• 2 chiffres Hexadécimaux
• indiquent un format / des fonctions spécifiques
0x06 FAT
0x82 Linux Swap
0x83 Linux FS
LPIC1 / Comptia Linux+ alphorm.com™©
0x83 Linux FS
• Sans grande importance pour Linux, hormis :
à l'installation
pour les partitions étendues
Outils
• En ligne de commande :
fdisk / gdisk
GNU parted
cfdisk (curses)
LPIC1 / Comptia Linux+ alphorm.com™©
• Outils graphiques :
Gparted
QtParted
KDE partition manager
etc …
Ce qu’on a couvert
• Ce qu'est exactement le partionning.
• Comment celui-ci est géré sous Linux.
LPIC1 / Comptia Linux+ alphorm.com™©
• Les outils que nous allons étudier.
Configuration du
matériel
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
matériel
FHS
Plan
• Introduction
• Avant le FHS
• La naissance du FHS
• Partageabilité
• Données utilisateurs
• Variables
• Montage
• FS virtuels
LPIC1 / Comptia Linux+ alphorm.com™©
• Statique ou variable ?
• Programmes
• Système
Introduction
• simplicité
LPIC1 / Comptia Linux+ alphorm.com™©
• cohérence
Avant le FHS
• cf histoire d'Unix
nombreuses variantes = incohérences, abscense de standards
• 1994 : FSSTND
programmes = /bin ou /usr/bin
LPIC1 / Comptia Linux+ alphorm.com™©
programmes = /bin ou /usr/bin
• scripting
pas d'executables dans /etc
pas de fichiers modifiables dans /usr
• montage en ro
La naissance du FHS
• 1996 par le Free Standard Group
version actuelle : 2.3 – janv. 2004
basé sur le FSSTND
LPIC1 / Comptia Linux+ alphorm.com™©
• basé sur le FSSTND
• pas uniquement pour Linux
Partageabilité
• shareable = partageable entre ordinateurs
LPIC1 / Comptia Linux+ alphorm.com™©
• unshareable = informations spécifiques du système
Statique ou variable ?
• static = modifié uniquement par intervention direct de l'admin
LPIC1 / Comptia Linux+ alphorm.com™©
• variable = modifiable par les utilisateurs, scripts, serveurs, etc …
Programmes
• /bin
• /sbin
• /usr/local/bin
• /usr/bin
LPIC1 / Comptia Linux+ alphorm.com™©
• /lib
Système
• /boot
• /usr
• /etc
• /srv
LPIC1 / Comptia Linux+ alphorm.com™©
/usr/local
• /opt
Données utilisateurs
• /home
LPIC1 / Comptia Linux+ alphorm.com™©
• /root
Variables
• /var
LPIC1 / Comptia Linux+ alphorm.com™©
• /tmp
Montage
• /mnt
LPIC1 / Comptia Linux+ alphorm.com™©
• /media
FS virtuels
• /dev
LPIC1 / Comptia Linux+ alphorm.com™©
• /proc
Ce qu’on a couvert
• Quel est le rôle exact des dossiers les plus importants du système.
LPIC1 / Comptia Linux+ alphorm.com™©
Configuration du
matériel
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
matériel
fdisk
Plan
• Introduction
• La commande fdisk
• Les commandes de fdisk
LPIC1 / Comptia Linux+ alphorm.com™©
Introduction
• "fixed disk"
• outil de partitionnement en mode texte
LPIC1 / Comptia Linux+ alphorm.com™©
• interactif
• projet util-linux
La commande fdisk
• Options :
-l : affichage des partitions
# fdisk [options] [périphérique]
LPIC1 / Comptia Linux+ alphorm.com™©
-l : affichage des partitions
• Exemple
# fdisk /dev/sdb
Les commandes de fdisk
commande description
d destruction d'une partition
l liste des types de partitions
m Impression du menu en cours
n création d'une nouvelle partition
LPIC1 / Comptia Linux+ alphorm.com™©
p Affichage des partitions
q Sortie de fdisk sans sauvegarde des paramètres
t Modification du type de partition
v Vérification de la table des partitions
w Sauvegarde des modifications et sortie de fdisk
Ce qu’on a couvert
• Comment partitionner un périphérique avec fdisk.
LPIC1 / Comptia Linux+ alphorm.com™©
Configuration du
matériel
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
matériel
GNU Parted
Plan
• Introduction
• La commande parted
• Les commandes de parted
LPIC1 / Comptia Linux+ alphorm.com™©
Introduction
• éditeur de partition
• projet GNU
LPIC1 / Comptia Linux+ alphorm.com™©
• plus complet que fdisk
La commande parted
• Options :
-l : lister les partitions
# parted [options][device]
LPIC1 / Comptia Linux+ alphorm.com™©
-l : lister les partitions
Les commandes de parted
commande description
? afficher l'aide
print afficher la table de partition courante
mkpart créer une partition
rm supprimer une partition
LPIC1 / Comptia Linux+ alphorm.com™©
move déplacer une partition
resize redimensionner une partition
Ce qu’on a couvert
• Comment partitionner un disque dur avec GNU Parted.
LPIC1 / Comptia Linux+ alphorm.com™©
Configuration du
matériel
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
matériel
Introduction aux systèmes de
fichiers
Plan
• Qu'est ce qu'un fs ?
• Concepts
• Les linuxiens
• Les "sophistiqués"
LPIC1 / Comptia Linux+ alphorm.com™©
• Les autres OS
• Supports optiques
Qu'est ce qu'un fs ?
• structure de donnée
• accéder à et stocker des fichiers
LPIC1 / Comptia Linux+ alphorm.com™©
via un chemin d'accès
Concepts
• journalisation
LPIC1 / Comptia Linux+ alphorm.com™©
• fragmentation
Les linuxiens
• ext
ext2
ext2
ext4
LPIC1 / Comptia Linux+ alphorm.com™©
ext4
• btrfs
• reiserfs
reiser4
Les "sophistiqués"
• JFS
• XFS
LPIC1 / Comptia Linux+ alphorm.com™©
Les autres OS
• FAT
• NTFS
LPIC1 / Comptia Linux+ alphorm.com™©
• HFS
HFS+
Supports optiques
• Iso-9660
• Joliet
LPIC1 / Comptia Linux+ alphorm.com™©
• UDF
Ce qu’on a couvert
• Les différentes fs disponibles sur Linux.
• Leurs avantages et inconvénients.
LPIC1 / Comptia Linux+ alphorm.com™©
Configuration du
matériel
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
matériel
formatage
Plan
• Introduction
• Créer un système de fichier
• FAT
• SWAP
LPIC1 / Comptia Linux+ alphorm.com™©
Introduction
• terme ambigu
• bas-niveau
LPIC1 / Comptia Linux+ alphorm.com™©
• haut-niveau
création d'un fs
• Options :
Créer un système de fichier
# mkfs.fstype partition
# mkfs –t fstype partition
LPIC1 / Comptia Linux+ alphorm.com™©
• Options :
-c : recherche de secteurs défectueux
-m pourcentage : pourcentage d'espace réservé
• 5 par défaut
• Options :
FAT
# mkfs.msdos partition
# mkfs.vfat partition
LPIC1 / Comptia Linux+ alphorm.com™©
• Options :
-F fat-size : type / taille de FAT
• Extension de la mémoire
type code 0x82
• "formatage"
SWAP
# mkswap partition
LPIC1 / Comptia Linux+ alphorm.com™©
• utilisation
ou cf /etc/fstab
# mkswap partition
# swapon partition
Ce qu’on a couvert
• Ce qu'est le formatage.
• Comment créer un système de fichier.
LPIC1 / Comptia Linux+ alphorm.com™©
• Comment préparer et utiliser une partition swap.
Configuration du
matériel
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
matériel
Gestion de la propriété d'un
fichier
Plan
• Introduction
• Afficher
• Modifier
• Modifier le groupe
LPIC1 / Comptia Linux+ alphorm.com™©
Introduction
• sécurité
• un propriétaire
LPIC1 / Comptia Linux+ alphorm.com™©
• un groupe propriétaire
Afficher
• lister
• format numérique (uid & gid)
$ ls –l [fichier]
LPIC1 / Comptia Linux+ alphorm.com™©
• colonnes 3 et 4
$ ls –n [fichier]
Modifier
• Options
-R ou --recursive
# chown [options] [newowner][:newgroup] filenames
LPIC1 / Comptia Linux+ alphorm.com™©
Modifier le groupe
• Options
-R ou --recursive
# chgrp [options] newgroup filenames
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Première partie des droits d'accès aux fichiers.
• Comment afficher l'utilisateur et le groupe propriétaire d'un fichier /
dossier.
LPIC1 / Comptia Linux+ alphorm.com™©
• Comment modifier l'utilisateur et le groupe propriétaire d'un fichier /
dossier.
Gestion des fichiers
Droits d'accès POSIX
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Droits d'accès POSIX
Plan
• Introduction
• Afficher
• Type code
• Permissions simples
LPIC1 / Comptia Linux+ alphorm.com™©
• Modifier les droits
• SUID & SGID
• Sticky bit
• Représentation des droits spéciaux
Introduction
• standard Unix
LPIC1 / Comptia Linux+ alphorm.com™©
Afficher
• colonne 1
ex : drwxr--r--
$ ls -l
LPIC1 / Comptia Linux+ alphorm.com™©
Type code
caractère signification
- fichier
d répertoire
l lien symbolique
p pipe
LPIC1 / Comptia Linux+ alphorm.com™©
s socket
b périphérique bloc
c périphérique caractère
Permissions simples
• read – write – execute
• user – group – others
LPIC1 / Comptia Linux+ alphorm.com™©
• 9 bits
représentation octale : r = 4, w = 2, x = 1
ex : 754 = rwxr-xr--
Modifier les droits
• Mode :
destinataire : u, g, o ou a
+, - ou =
$ chmod [mode] fichier
LPIC1 / Comptia Linux+ alphorm.com™©
+, - ou =
droits
ou écriture octale
• Exemple :
$ chmod u+r,g-x fichier
SUID & SGID
• Set User / Group ID
• exécutables
LPIC1 / Comptia Linux+ alphorm.com™©
• attaques sushi
Sticky bit
• différence entre droit d'écriture et de suppression
LPIC1 / Comptia Linux+ alphorm.com™©
Représentation des droits spéciaux
• rwsrwsrwt
• octal suplémentaire
7777
LPIC1 / Comptia Linux+ alphorm.com™©
SUID = 4, SGID = 2, Sticky bit =1
ex : 6744 = rwsr-Sr--
Ce qu’on a couvert
• Les droits d'accès aux fichiers sous les système Unix.
LPIC1 / Comptia Linux+ alphorm.com™©
Gestion des fichiers
ACL
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
ACL
Plan
• Introduction
• Prérequis
• Fonctionnement
• Afficher
LPIC1 / Comptia Linux+ alphorm.com™©
• Créer ou modifier
• Supprimer
• Masque
• Hiérarchie
Introduction
• étendre les droits prosix
LPIC1 / Comptia Linux+ alphorm.com™©
Prérequis
• kernel :
CONFIG_FS_POSIX_ACL=y
CONFIG_SystemeDeFichiers_FS_POSIX_ACL=y
$ grep ACL /boot/config-*
LPIC1 / Comptia Linux+ alphorm.com™©
• Outils : paquet acl
• Système de fichier : option de montage "acl"
$ grep ACL /boot/config-*
Fonctionnement
• 3 bits de permissions
• mise en place par le propriétaire
LPIC1 / Comptia Linux+ alphorm.com™©
Afficher
$ getfacl fichier
LPIC1 / Comptia Linux+ alphorm.com™©
$ getfacl fichier
Créer ou modifier
• Options
-R : récursif
$ setfacl [options] -m [d:]permission[,permission...] fichier
LPIC1 / Comptia Linux+ alphorm.com™©
-d : héritage (directory)
• Permissions
préfixe:[utilisateur_ou_Groupe:]droits
Supprimer
• toutes les acls
• uniquement les permissions par défaut
$ setfacl -b fichier
LPIC1 / Comptia Linux+ alphorm.com™©
• une acl
$ setfacl -k fichier
$ setfacl –x acl fichier
Masque
• droit maximal
• Exemple :
mask:r-x
pierre:rw- #effective:r--
LPIC1 / Comptia Linux+ alphorm.com™©
pierre:rw- #effective:r--
Hiérarchie
masque
>acl utilisateur
LPIC1 / Comptia Linux+ alphorm.com™©
>acl groupe
>acl g::
>posix groupe propriétaire
Ce qu’on a couvert
• Comment gérer les ACL Linux.
LPIC1 / Comptia Linux+ alphorm.com™©
Gestion des fichiers
umask
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
umask
Plan
• Introduction
• Afficher
• Modifier
LPIC1 / Comptia Linux+ alphorm.com™©
Introduction
• droits par défaut
fichier : 0666 – rw-rw-rw-
dossier : 0777 – rwxrwxrwx
LPIC1 / Comptia Linux+ alphorm.com™©
• modifier ce droit par défaut
par soustraction
Afficher
• format "classique"
• format octal
$ umask -S
LPIC1 / Comptia Linux+ alphorm.com™©
$ umask -p
Modifier
$ umask mode
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Comment modifier les droits par défauts à la création d'un fichier.
LPIC1 / Comptia Linux+ alphorm.com™©
Gestion des fichiers
Quotas
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Quotas
Plan
• Introduction
• Prérequis
• Limitations
• Initialiser, vérifier et mettre à jour
LPIC1 / Comptia Linux+ alphorm.com™©
• Afficher
• Editer
Introduction
• Linux est un système multi-utilisateur
donc un utilisateur peu prendre tout l'espace de stockage
• Quotas utilisateurs & groupes
limiter le nombre de fichiers
LPIC1 / Comptia Linux+ alphorm.com™©
limiter le nombre de fichiers
• inodes
limiter l'espace utilisé
• blocs
Prérequis
• kernel
CONFIG_QUOTAS=y
• pour ext et reiser
CONFIG_XFS_QUOTAS=y
LPIC1 / Comptia Linux+ alphorm.com™©
• Montage : usrqota, grpquota
• Outils : paquet quota
init scripts
Limitations
• deux types :
hard
soft
période de "grâce"
LPIC1 / Comptia Linux+ alphorm.com™©
• période de "grâce"
Initialiser, vérifier et mettre à jour
• prérequis
# quotacheck
LPIC1 / Comptia Linux+ alphorm.com™©
• prérequis
• souvent lancé par les init scripts et con jobs
Afficher
• Options
-a : all
# repquota [-a] [fs]
# quota [Options]
LPIC1 / Comptia Linux+ alphorm.com™©
-v : verbose
-g : quotas de groupes
-l : ignorer NFS
-q : seulement les fs sur lesquels les quotas sont dépassés
Editer
• lancer l'éditeur par défaut sur /etc/quotatab
fichier temporaire de configuration
# edquota [-t][[-u] user] [-g groupe]
LPIC1 / Comptia Linux+ alphorm.com™©
• -t : éditer la période de grâce par fs
seconds, minutes, hours, days
Ce qu’on a couvert
• Comment mettre en place et administer les quotas Linux.
LPIC1 / Comptia Linux+ alphorm.com™©
Gestion des fichiers
find
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
find
Plan
• Introduction
• Commande
• Restrictions
• Exécuter une action
LPIC1 / Comptia Linux+ alphorm.com™©
• Operateurs conditionnels
Introduction
• analyse fichier par fichier
à partir d'un ou plusieurs dossiers
nom, date de création, etc …
LPIC1 / Comptia Linux+ alphorm.com™©
• très lent
• flexible et efficace
Commande
• Expression :
-name pattern : par nom
-perm mode : par permissions
$ find [path ...] [expression ...]
LPIC1 / Comptia Linux+ alphorm.com™©
-size n[c|k|M|G] : par traille
-gid GID ou –group name : par groupe
-uid UID ou –user name : par utilisateur
Restrictions
• Restrictions :
-maxdepth levels : limiter le nombre de sous-répertoires analysés
-type [b|c|d|p|f|l|s]
$ find [path ...] [expression ...]
LPIC1 / Comptia Linux+ alphorm.com™©
Exécuter une action
• Exemples :
$ find [path ...] [expression ...] –exec commande ;
$ find . -type f -exec ls -l {} ;
LPIC1 / Comptia Linux+ alphorm.com™©
• -ok : demande confirmation
$ find . -type f -ok -exec rm {} ;
Opérateurs conditionnels
• -a : ET
• -o : OU
$ find . ( -name '*.tex' -o -name '*.dvi' )
$ find . ( -perm –g=w -a -group root )
LPIC1 / Comptia Linux+ alphorm.com™©
• ! : négation
$ find . ! -user root
Ce qu’on a couvert
• Comment utiliser find pour rechercher des fichiers.
LPIC1 / Comptia Linux+ alphorm.com™©
Gestion des fichiers
locate
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
locate
Plan
• Introduction
• Mise à jour
• Commande
• Autres implémentations
LPIC1 / Comptia Linux+ alphorm.com™©
Introduction
• bien moins sophistiqué que fin
uniquement les noms de fichier
LPIC1 / Comptia Linux+ alphorm.com™©
• à partir d'une DB
Mise à jour
# updatedb
LPIC1 / Comptia Linux+ alphorm.com™©
Commande
• Options :
-i : ignorer la casse
$ locate [options] [nom]
LPIC1 / Comptia Linux+ alphorm.com™©
-r regexp : utiliser une expression régulière
-c : n'afficher que le nombre de fichiers correspondant
Autres implémentations
• mlocate
plus moderne
fonctionnement identique
• slocate
sécurisé
LPIC1 / Comptia Linux+ alphorm.com™©
sécurisé
empêche les utilisateurs de voir les noms de fichiers auxquels ils n'ont pas
accès
• le plus souvent, locate est un lien symbolique vers un de ces
programmes
Ce qu’on a couvert
• Comment rechercher un fichier avec locate.
LPIC1 / Comptia Linux+ alphorm.com™©
Gestion des fichiers
Recherche et informations sur
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Recherche et informations sur
une commande
Plan
• whereis
• which
• type
LPIC1 / Comptia Linux+ alphorm.com™©
whereis
• recherche uniquement dans certains répertoires
fichiers binaires
librairie et headers
pages man
configuration
LPIC1 / Comptia Linux+ alphorm.com™©
configuration
etc …
• retrouver des exécutables et fichiers liés (documentation, configuration)
whereis (2)
• Options :
-b : seulement les fichiers binaires
$ whereis [-bms] filename.
LPIC1 / Comptia Linux+ alphorm.com™©
-m : seulement les pages man
-s : seulement les sources
which
• recherche le(s) fichier(s) exécuté pour une commande
dans $PATH
$ which [-a] filename
LPIC1 / Comptia Linux+ alphorm.com™©
• Options :
-a : afficher toutes les correspondances
type
• affiche comment une commande est interprétée
$ type commande
LPIC1 / Comptia Linux+ alphorm.com™©
• Options :
-a : pour toutes les corrrespondance
-t : sortie raccourcie
Ce qu’on a couvert
• Obtenir des informations sur les commandes bash.
LPIC1 / Comptia Linux+ alphorm.com™©
Démarrage du système
démarrage du système
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
démarrage du système
Plan
• Présentation
LPIC1 / Comptia Linux+ alphorm.com™©
Présentation
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Les différentes étapes du démarrage d'un système x86 fonctionnant
avec Linux.
LPIC1 / Comptia Linux+ alphorm.com™©
Démarrage du système
GRUB1
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
GRUB1
Plan
• Introduction
• Historique
• Fonctionnement
• Installation
LPIC1 / Comptia Linux+ alphorm.com™©
• Configuration
• Options globales
• Options par kernel image ou OS
• Interaction
Introduction
• les bootloader Unix sont plus complexes que ceux de Windows
qui chargent simplement le kernel
• ils permettent de charger le initrd et de donner des paramètres au
kernel
LPIC1 / Comptia Linux+ alphorm.com™©
kernel
• peuvent coexister avec d'autres bootloaders
• peuvent être installé sur n'importe quel support
et à n'importe quel (ou presque) endroit
Historique
• Eric Boleyn – GNU/Hurd
• 1999 : premier paquet
LPIC1 / Comptia Linux+ alphorm.com™©
• deux version
très différentes
Fonctionnement
• Stages (1 - 1.5 - 2)
LPIC1 / Comptia Linux+ alphorm.com™©
• disques et partitions (hdX,X)
Installation
• deux formats
dev : /dev/sda ou sda1
# grub-install disque_ou_partition
LPIC1 / Comptia Linux+ alphorm.com™©
grub : '(hd0)' ou '(hd0,0)'
Configuration
• /boot/grub/menu.lst ou grub.conf
# grub.conf/menu.lst
#
# Global Options:
#
default=0
timeout=15
splashimage=/grub/bootimage.xpm.gz
#
# Kernel Image Options:
#
LPIC1 / Comptia Linux+ alphorm.com™©
#
title Fedora (2.6.25)
root (hd0,0)
kernel /vmlinuz-2.6.25 ro root=/dev/hda5 mem=2048M
initrd /initrd-2.6.25
title Debian (2.6.26-experimental)
root (hd0,0)
kernel (hd0,0)/bzImage-2.6.26-experimental ro root=/dev/hda6
#
# Other operating systems
#
title DOS
rootnoverify (hd0,1)
chainloader +1
Options globales
• default=n
• timeout=n
LPIC1 / Comptia Linux+ alphorm.com™©
• splashimage=chemin
Options par kernel image ou OS
• title
• root
• kernel
LPIC1 / Comptia Linux+ alphorm.com™©
• initrd
• rootnoverify
• chainloader
Interaction
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Les spécificités d'un chargeur d'amorçage orienté Unix.
• La petite histoire de GRUB.
LPIC1 / Comptia Linux+ alphorm.com™©
• Comment installer GRUB1.
• Comment configurer GRUB1.
• Comment interagir avec GRUB1.
Démarrage du système
GRUB2
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
GRUB2
Plan
• Introduction
• Installation
• Configuration
• Configuration des scripts grub.d
LPIC1 / Comptia Linux+ alphorm.com™©
• Mise à jour
Introduction
• refonte totale
• adopté rapidement et largement
LPIC1 / Comptia Linux+ alphorm.com™©
• nombreux avantages
Installation
• à partir de legacy
• directement
# update-from-grub-legacy
LPIC1 / Comptia Linux+ alphorm.com™©
# grub-install –recheck "(hdX)"
# update-grub2
Configuration
• /etc/default/grub
• /boot/grub/device.map
LPIC1 / Comptia Linux+ alphorm.com™©
• /etc/grub.d
Configuration des scripts grub.d
Grub Legacy Grub2
title titre menuentry "titre" {
…
}
root (hdX,X) set root=(hdX,X)
kernel linux
LPIC1 / Comptia Linux+ alphorm.com™©
kernel linux
• Restent inchangés :
initrd
chainloader
Mise à jour
• mettre à jour le fichier grub.cfg
• simple alias pour
# update-grub
LPIC1 / Comptia Linux+ alphorm.com™©
# grub-mkconfig-o /boot/grub/grub.cfg
Ce qu’on a couvert
• Les différences entre Grub2 et Grub Legacy.
LPIC1 / Comptia Linux+ alphorm.com™©
• Comment configurer Grub2.
• Comment installer Grub2.
Démarrage du système
init et les services
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
init et les services
Plan
• Rappel
• Init
• Services
• Script system V init
LPIC1 / Comptia Linux+ alphorm.com™©
• Commandes
Rappel
LPIC1 / Comptia Linux+ alphorm.com™©
Init
• premier et dernier processus
• plusieurs solutions :
sysvinit
LPIC1 / Comptia Linux+ alphorm.com™©
shell
upstart
systemd
initng
runit, svscan, minit …
Services
• démon(s)
exécution en arrière plan
directement géré et lancé par init
LPIC1 / Comptia Linux+ alphorm.com™©
Scripts system V init
• /etc/init.d ou /etc/rc.d
• scripts bash
• opérations :
LPIC1 / Comptia Linux+ alphorm.com™©
start
stop
restart
status
…
Commandes
• lancer une commande sur un script system V init
• afficher le statut de tout les services
$ service script commande [options]
LPIC1 / Comptia Linux+ alphorm.com™©
$ service --status-all
Ce qu’on a couvert
• Ce qu'est (ou peu être) init.
• Le fonctionnement et la gestion de system V init.
LPIC1 / Comptia Linux+ alphorm.com™©
Démarrage du système
runlevels
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
runlevels
Plan
• Introduction
• Runlevels
• inittab
• rc
LPIC1 / Comptia Linux+ alphorm.com™©
• chkconfig
• ntsysv
• update-rc.d
• Afficher et changer de runlevel
Introduction
• détermine quels services sont lancés ou stoppés
dans un contexte donné
lié à init
LPIC1 / Comptia Linux+ alphorm.com™©
• lié à init
dernière étape du boot : runlevel par défaut
Runlevels
Run Level Debian Suse RedHat
N amorçage
0 ARRET
S mono-utilisateur au démarrage
1 mono-utilisateur commuté mono-utilisateur
2 multi-utilisateur
Multi-utilisateur
déconnecté
…
LPIC1 / Comptia Linux+ alphorm.com™©
2 multi-utilisateur
déconnecté
…
3 …
mode connecté
(réseau)
multi-utilisateur
en mode
console
4 … … …
5 … mode-graphique (X11)
6 redémarrage
8 …
9 …
inittab
• /etc/inittab
• configuration de init
LPIC1 / Comptia Linux+ alphorm.com™©
• id:runlevels:action:process
rc
• script
/etc/init.d/rc
ou /etc/rc.d/rc
• gère tout les scripts init associés à un runlevel
LPIC1 / Comptia Linux+ alphorm.com™©
• gère tout les scripts init associés à un runlevel
• dossiers : /etc/rc.d/rc?.d ou /etc/init.d/rc?.d ou /etc/rc?.d
liens symboliques
S : start / K : kill – Nombre = ordre
chkconfig
• Lister les associations services / runlevel
• modifier le comportement d'un service pour un ou plusieurs runlevels
# chkconfig --list [service]
LPIC1 / Comptia Linux+ alphorm.com™©
• ajouter un service
# chkconfig --level [0123456] service [on/off/reset]
# chkconfig --add service
ntsysv
• TUI
par Red Hat
$ ntsysv [--level XXX]
LPIC1 / Comptia Linux+ alphorm.com™©
menu des services disponibles
update-rc.d
• désactiver un service
• modifier le comportement d'un service pour un ou plusieurs runlevels
# update-rc.d NomService remove
LPIC1 / Comptia Linux+ alphorm.com™©
• ajouter un service
# update-rc.d NomService start XX 2 3 4 5 . stop XX 0 1 6 .
# update-rc.d NomService defaults
Afficher et changer de runlevel
• afficher le runlevel actuel
• changer de runlevel
$ runlevel
# init [0123456Qq]
LPIC1 / Comptia Linux+ alphorm.com™©
• Eteindre ou redémarrer
# shutdown [-rhc] time ["Warning Message"]
# telinit [0123456Qq]
# halt / # reboot / # poweroff
Ce qu’on a couvert
• Ce qu'est un runlevel.
• Comment configurer les services d'un runlevel.
LPIC1 / Comptia Linux+ alphorm.com™©
• Comment afficher et changer de runlevel.
Gestion des processus
Introduction aux processus
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Introduction aux processus
Plan
• Introduction
• Etats standards
• Etats particuliers
• Hiérarchie
LPIC1 / Comptia Linux+ alphorm.com™©
Introduction
• programme en cours d'exécution
plusieurs états
cf. ordonnancement, multitâche, etc …
LPIC1 / Comptia Linux+ alphorm.com™©
• lancé par une commande (utilisateur) ou un autre processus
• identifié par un PID unique
Etats standards
LPIC1 / Comptia Linux+ alphorm.com™©
Etats particuliers
LPIC1 / Comptia Linux+ alphorm.com™©
Hiérarchie
• chaque processus a un "père"
• rappel : init, "père" de tout les processus
LPIC1 / Comptia Linux+ alphorm.com™©
daemons
processus "orphelins"
$ pstree
Ce qu’on a couvert
• Ce qu'est un processus.
• Ses différents états.
LPIC1 / Comptia Linux+ alphorm.com™©
• La hiérarchie entre ces processus.
Gestion des processus
ps
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
ps
Plan
• Introduction
• Options
• Obtenir plus d'informations
• Filtrer
LPIC1 / Comptia Linux+ alphorm.com™©
• Spécificateurs standards de format
• Exemples concrets
Introduction
• "processes' status"
• un des programmes les plus importants pour la gestion des processus
LPIC1 / Comptia Linux+ alphorm.com™©
$ ps [options]
Options
• compatibilité
• 3 types :
Unix98
LPIC1 / Comptia Linux+ alphorm.com™©
BSD
GNU long
Obtenir plus d'informations
• par défaut :
n'affiche que les processus lancés à partir du même terminal
tronque la sortie pour qu'elle s'affiche correctement
• -A ou –e
• x
• -f : full
• -l ou l : long
LPIC1 / Comptia Linux+ alphorm.com™©
• x
• hiérarchie :
-H, f ou –forest
• ne pas tronquer : -w ou w
• -l ou l : long
• -j ou j : job control
• u : orienté utilisateur
• v : mémoire virtuelle
Filtrer
• pour un utilisateur
RUID (real user id) : -U user ou --User user
EUID (effective user id) : -u user ou U user ou --user user
• par commande(s) : -c cmdlist
LPIC1 / Comptia Linux+ alphorm.com™©
• par commande(s) : -c cmdlist
• par PID : p pidliste ou -p pidliste ou --pid pidliste
Spécificateurs standards de format
• option -o speclist
code Header
user / euser User / EUSER
euid EUID
ruid RUID
code Header
tty / tt TT
tname TTY
LPIC1 / Comptia Linux+ alphorm.com™©
ruid RUID
ruser RUSER
code Header
pid PID
ppid PPID
code Header
time / cputime TIME
%cpu %CPU
ni / nice NI
%mem %MEM
Exemples concrets
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Comment utiliser la commande ps pour obtenir des informations sur les
processus.
LPIC1 / Comptia Linux+ alphorm.com™©
Gestion des processus
Afficher les processus avec top
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Afficher les processus avec top
Plan
• Présentation
• Commandes internes
LPIC1 / Comptia Linux+ alphorm.com™©
Présentation
• Options
-d delay
-p pid
$ top [options]
LPIC1 / Comptia Linux+ alphorm.com™©
-n iter
• dynamique
temps réel
Commandes internes
commande description
h aide
k tuer un processus
q quitter
LPIC1 / Comptia Linux+ alphorm.com™©
r renice
s modifier le délai de rafraichissemet
P trier par usage CPU (défaut)
M trier par usage mémoire
Ce qu’on a couvert
• Comment utiliser la commande top.
LPIC1 / Comptia Linux+ alphorm.com™©
Gestion des processus
Processus en avant ou arrière
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Processus en avant ou arrière
plan
Plan
• Afficher les processus de votre session
• Processus d'avant plan
• Processus d'arrière plan
LPIC1 / Comptia Linux+ alphorm.com™©
Afficher les processus de votre session
• statuts et job IDs des processus de la session
$ jobs
LPIC1 / Comptia Linux+ alphorm.com™©
• vérifier avant de se déconnecter
• indispensable pour les opérations suivantes
Processus d'avant plan
• Lorsque vous lancez une commande
prise de main sur le terminal
empêche de lancer une autre commande
• Pour stopper : Ctrl+Z
LPIC1 / Comptia Linux+ alphorm.com™©
• Pour stopper : Ctrl+Z
• Pour réactiver :
$ fg [jobID]
Processus d'arrière plan
• Continue a être actif, sans garder la main sur le terminal
• Pour lancer une commande en arrière-plan
$ commande &
LPIC1 / Comptia Linux+ alphorm.com™©
• Pour réactiver un processus stoppé et le mettre en arrière plan
$ bg [jobID]
Ce qu’on a couvert
• Qu'est ce qu'un processus d'avant ou d'arrière plan.
• Comment gérer ce genre de processus.
LPIC1 / Comptia Linux+ alphorm.com™©
Gestion des processus
Priorité des processus
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Priorité des processus
Plan
• Introduction
• Lancer un processus avec une priorité donnée
• Modifier la priorité d'un processus
LPIC1 / Comptia Linux+ alphorm.com™©
Introduction
• permet de favoriser plus ou moins l'accès des processus au matériel
• de -20 (plus fort) à 19 (plus faible)
LPIC1 / Comptia Linux+ alphorm.com™©
• seul root peu affecter une priorité négative, et donc plus favorable
Lancer un processus avec une priorité donnée
• Options
-X ou -n X ou --adjustement=X
$ nice [args] [commande [commande-args]]
LPIC1 / Comptia Linux+ alphorm.com™©
• par défaut : 10
Modifier la priorité d'un processus
• seul root peu modifier la priorité d'un processus pour un utilisateur ou
un groupe
$ renice priority [[-p] pids] [[-g] gid] [[-u] users]
LPIC1 / Comptia Linux+ alphorm.com™©
# renice 12 12351 -u alphorm debian
Ce qu’on a couvert
• Comment sont gérées les priorités des processus.
• Comment affecter une priorité particulière à un ou plusieurs processus.
LPIC1 / Comptia Linux+ alphorm.com™©
Gestion des processus
Signaux et processus
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Signaux et processus
Plan
• Introduction
• Signaux
• Envoyer un signal à un processus
• Envoyer un signal à un groupe de processus
LPIC1 / Comptia Linux+ alphorm.com™©
• Lancer un programme persistant
Introduction
• communication interprocessus
• POSIX
• notification asynchrone
LPIC1 / Comptia Linux+ alphorm.com™©
• signaler l'apparition d'un évènement
• géré par une routine de traitement
implémentée ou par défaut
Signaux
• cf man 7 signal et $ kill -l
• SIGKILL (9)
• SIGHUP (1)
LPIC1 / Comptia Linux+ alphorm.com™©
• SIGTERM (15
• …
Envoyer un signal à un processus
• par défaut : SIGTERM (15)
$ kill [-s signal] pid
$ kill [-signal] pid
LPIC1 / Comptia Linux+ alphorm.com™©
• par défaut : SIGTERM (15)
• seulement si l'utilisateur est propriétaire du processus ou root
Envoyer un signal à un groupe de processus
• par défaut : SIGTERM (15)
$ killall [-s signal] [-i] name
$ killall [-signal] [-i] name
LPIC1 / Comptia Linux+ alphorm.com™©
• se base sur la commande plutôt que le PID
• -i : interactif
Lancer un programme persistant
• ignore les SIGHUP
$ nohup commande [options]
LPIC1 / Comptia Linux+ alphorm.com™©
• ignore les SIGHUP
• continue à fonctionner même après déconnection
Ce qu’on a couvert
• Ce qu'est un signal.
• Quels sont les principaux signaux à connaitre.
• Comment envoyer un signal.
LPIC1 / Comptia Linux+ alphorm.com™©
• Comment ignorer les SIGHUP.
environnement graphique
Introduction
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Introduction
Plan
• Présentation
LPIC1 / Comptia Linux+ alphorm.com™©
Présentation
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• La structure générale de l'environnement graphique Linux.
• L'utilité de chacun de ses composants.
LPIC1 / Comptia Linux+ alphorm.com™©
environnement graphique
X Window System
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
X Window System
Plan
• Historique
• Fonctionnement
• Démarrer le serveur X
• Stopper le serveur X
• Moniteur
• Carte graphique
• Résolution et profondeur de
couleur
• Informations
LPIC1 / Comptia Linux+ alphorm.com™©
• Outils de configuration
• Fichier de configuration
• Modules
• Périphériques d'entrée
• Informations
Historique
• Projet Athena : W
• 1983 : portage de W sur Unix
• 1984 : X1 - MIT (Bob Scheifler)
• 1987 : X11
LPIC1 / Comptia Linux+ alphorm.com™©
• 1991 : X386 - basé sur X11R4
renommé XFree86 en 1992
• 2004 : X.Org Server
fork de XFree86 4.3
Fonctionnement
• client / serveur
via XDMCP (protocole réseau)
• /! peu paraitre "inversé"
LPIC1 / Comptia Linux+ alphorm.com™©
• Serveur X : gestion de l'affichage et des entrées
• Clients X : chaque application affichant un ou des fenêtre(s)
• envoient de instructions de "dessin" au serveur
• nécessitent le plus de ressources
Démarrer le serveur X
• via le terminal
$ startx
LPIC1 / Comptia Linux+ alphorm.com™©
• ou via un Display Manager
XDM, KDM, GDM, etc …
Stopper le serveur X
• Red Hat
$ init 3
LPIC1 / Comptia Linux+ alphorm.com™©
• Autres (marche aussi avec kdm, gdm, etc …)
/etc/init.d/xdm stop
Outils de configuration
• Red Hat
• Suse
# system-config-display
LPIC1 / Comptia Linux+ alphorm.com™©
• Debian
# yast
# dpkg-reconfigure xserver-xorg
Fichier de configuration
• /etc/X11/xorg.conf
si absent : détection du matériel à chaque démarrage
• une section par fonctionnalité majeure
Section "..."
...
LPIC1 / Comptia Linux+ alphorm.com™©
• Générer un fichier
...
EndSection
# xorg -configure
Modules
• drivers
pour les fonctions ou matériels spécifiques
Exemple
LPIC1 / Comptia Linux+ alphorm.com™©
• Exemple
Section “Module”
Load “dbe”
Load “extmod”
Load “fbdevhw”
EndSection
Périphériques d'entrée
• Exemple 1 : clavier
Section “InputDevice”
Identifier “Keyboard0”
Driver “kbd”
Option “XkbModel” “pc105”
Option “XkbLayout” “us”
Option “AutoRepeat” “500 200”
EndSection
LPIC1 / Comptia Linux+ alphorm.com™©
• Exemple 2 : souris
Section “InputDevice”
Identifier “Mouse0”
Driver “mouse”
Option “Protocol” “IMPS/2”
Option “Device” “/dev/input/mice”
Option “Emulate3Buttons” “no”
Option “ZAxisMapping” “4 5”
EndSection
Moniteur
• Exemple
Section “Monitor”
Identifier “Monitor0”
ModelName “VisionMaster Pro 450”
HorizSync 27.0-115.0
LPIC1 / Comptia Linux+ alphorm.com™©
HorizSync 27.0-115.0
VertRefresh 50.0-160.0
# My custom 1360x1024 mode
Modeline “1360x1024” 197.8 
1360 1370 1480 1752 
1024 1031 1046 1072 -HSync -VSync
EndSection
Carte graphique
• Exemple
Section “Device”
Identifier “Videocard0”
Driver “nv”
VendorName “nVidia”
LPIC1 / Comptia Linux+ alphorm.com™©
• Drivers : /usr/X11R6/lib/modules/drivers
VendorName “nVidia”
BoardName “GeForce 6100”
VideoRam 131072
EndSection
Résolution et profondeur de couleur
• Exemple
Section “Screen”
Identifier “Screen0”
Device “Videocard0”
Monitor “Monitor0”
DefaultDepth 24
SubSection “Display”
LPIC1 / Comptia Linux+ alphorm.com™©
SubSection “Display”
Depth 24
Modes “1024x768” “1024x600” “800x600” “640x480”
EndSubSection
SubSection “Display”
Depth 8
Modes “1024x768” “800x600” “640x480”
EndSubSection
EndSection
Informations
• générales
• sur une fenêtre
$ xdpyinfo [-ext extension]
xwininfo [-id id] [-name name] [-root]
LPIC1 / Comptia Linux+ alphorm.com™©
xwininfo [-id id] [-name name] [-root]
Ce qu’on a couvert
• Qu'est ce que X11, X.org et XFree86.
• Comment configurer et lancer X.org.
LPIC1 / Comptia Linux+ alphorm.com™©
• Comment obtenir des informations sur X.
environnement graphique
Display Manager
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Display Manager
Plan
• Introduction
• Session locale
• Session distante
• Sélectionner un gestionnaire d'affichage
LPIC1 / Comptia Linux+ alphorm.com™©
• Configuration de XDM
• Configuration de KDM
• Configuration de GDM
Introduction
• permet de démarrer une session sur un serveur X
• Nombreux et interchangeables
XDM : par défaut pour X, rare pour les distributions
LPIC1 / Comptia Linux+ alphorm.com™©
KDM : KDE
GDM : Gnome
LXDM : LXDE
etc …
Session locale
LPIC1 / Comptia Linux+ alphorm.com™©
Session distante
LPIC1 / Comptia Linux+ alphorm.com™©
Sélectionner un gestionnaire d'affichage
• Fedora
/etc/sysconfig/desktop
• DISPLAYMANAGER=KDM
• Suse
/etc/sysconfig/displaymanager
LPIC1 / Comptia Linux+ alphorm.com™©
/etc/sysconfig/displaymanager
• DISPLAYMANAGER=kdm
• Debian, Ubuntu
choix du sysvinit script
# dpkg-reconfigure gdm
Configuration de XDM
• /etc/X11/xdm/ ou /usr/X11R6/lib/X11/xdm/
• xdm-config
configuration générale
• Xaccress
hôtes autorisés pour une connection XDMCP distante
LPIC1 / Comptia Linux+ alphorm.com™©
hôtes autorisés pour une connection XDMCP distante
• Xservers
hôtes (serveurs x) déléguant l'invite d'authentification à notre machine
• Xresources
propriétés X utilisées par les composants visuels
Configuration de KDM
• basé sur XDM
mêmes fichiers de configuration
• fonctionnalités supplémentaires : dossier kdm
/etc/X11/kdm/
/etc/kde/kdm/
LPIC1 / Comptia Linux+ alphorm.com™©
/etc/kde/kdm/
/usr/share/config/kdm/
/usr/share/kde4/config/kdm/
• pour la plupart : fichier kdmrc
type de session, extinction, etc …
Configuration de GDM
• n'utilise pas les fichiers de configuration de XDM
• dossier /etc/X11/gdm/
fichier gdm.conf - similaire à kdmrc
LPIC1 / Comptia Linux+ alphorm.com™©
• commande
$ gdmconfig
Ce qu’on a couvert
• Ce qu'est un display manager.
• Comment il fonctionne.
LPIC1 / Comptia Linux+ alphorm.com™©
• Comment le configurer.
environnement graphique
accès distant
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
accès distant
Plan
• Pré-requis
• Méthode simple
• XDM
• KDM
LPIC1 / Comptia Linux+ alphorm.com™©
• GDM
• autres solutions
Pré-requis
• iptables
• Suse : /etc/sysconfig/displaymanager
DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN=yes
LPIC1 / Comptia Linux+ alphorm.com™©
• lancement à partir de startx : /etc/X11/xinit/xserverrc
enlever -nolisten tcp
Méthode simple
• ajouter l'hôte à la liste des clients autorisés
• puis, sur l'hôte X client
xserver$ xhost +hotexclient
LPIC1 / Comptia Linux+ alphorm.com™©
• lancer une application sur le client : elle s'affiche sur le terminal X
hotexclient$ export DISPLAY=xserver:0.0
XDM
• xdm-config : commenter
• ajouter les hôtes dans Xaccess et dans Xservers
!DisplayManager.requestPort: 0
LPIC1 / Comptia Linux+ alphorm.com™©
KDM
• kdmrc
[Xdmcp]
…
Enable=true
LPIC1 / Comptia Linux+ alphorm.com™©
• mêmes configuration que pour XDM
GDM
• gdm.conf
DisallowTCP=false
…
[Xdmcp]
…
enable=yes
LPIC1 / Comptia Linux+ alphorm.com™©
• gdm.schemas
<key>security/DisallowTCP</key>
Autres solutions
• VNC
• SSH
LPIC1 / Comptia Linux+ alphorm.com™©
$ ssh -X hote
Ce qu’on a couvert
• Comment mettre en place un accès X distant.
LPIC1 / Comptia Linux+ alphorm.com™©
Impression
Introduction
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Introduction
Plan
• Introduction
• Ghostscript
• Fonctionnement (local)
• Spooling
LPIC1 / Comptia Linux+ alphorm.com™©
• CUPS
• Autres solutions
• Lancement du système d'impression
Introduction
• anecdote : "une histoire d'imprimante"
Richard Stallman vs XeroX
PostScript
LPIC1 / Comptia Linux+ alphorm.com™©
• PostScript
langage d'impression
• vectoriel
supporté par la plupart des imprimantes de 80s
standard Unix
Ghostscript
• 1986 - L. Peter Deutsch
• double licence GPL et AFPL
LPIC1 / Comptia Linux+ alphorm.com™©
• interpréteur PS et PDF
conversion vers format natifs imprimantes
Fonctionnement (local)
LPIC1 / Comptia Linux+ alphorm.com™©
Spooling
• simultaneous processing operations on line
concept né en 1958
LPIC1 / Comptia Linux+ alphorm.com™©
• file d'attente
mémoire tampon
CUPS
• Common Unix Printing System
• démon cupsd
gère les files d'attentes d'impression
envoi les tâches aux imprimantes
LPIC1 / Comptia Linux+ alphorm.com™©
envoi les tâches aux imprimantes
• très fortement orienté réseau
• utilise des filtres et/ou ghostscript pour réaliser les conversions
Autres solutions
• rarement employées sous Linux
non couvert par la LPIC
LPIC1 / Comptia Linux+ alphorm.com™©
• BSD Line Printer Daemon (LPD)
• LPRng
• fonctionnement similaire
Lancement du système d'impression
• via services
cf sysVinit scripts & runlevels
livrés par défaut
LPIC1 / Comptia Linux+ alphorm.com™©
diffère suivant les distributions
• pour vérifier
$ ps -ef | grep cups
Ce qu’on a couvert
• Le fonctionnement du système d'impression Unix.
• Comment lancer et arrêter CUPS.
LPIC1 / Comptia Linux+ alphorm.com™©
Impression
Gestion des tâches
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Gestion des tâches
d'impression
Plan
• Soumettre une tâche d'impression
• Informations
• Annuler une tâche d'impression
LPIC1 / Comptia Linux+ alphorm.com™©
Soumettre une tâche d'impression
• Options :
-P[ ]qeuename : spécifier une imprimante
$ lpr [-Pimprimante] [-#nombre] [-J job] [-m] [-hr] [fichier ...]
LPIC1 / Comptia Linux+ alphorm.com™©
• pas d'espace pour la version d'origine (BSD)
-r : supprimer le fichier après impression
-h : pas de page de garde
-J jobname : préciser le nom de tâche
Informations
• Sur une file d'impression
Sur CUPS
$ lpq -P[]qeuename
LPIC1 / Comptia Linux+ alphorm.com™©
• Sur CUPS$ lpstat [-h hostname[:port]] [-p [imprimante(s)]]
Annuler une tâche d'impression
• Options :
-P[ ]qeuename : spécifier un spool
$ lprm [-P imprimante] [-] [jobId ...] [-h serveur[:port]]
LPIC1 / Comptia Linux+ alphorm.com™©
-P[ ]qeuename : spécifier un spool
- : tout supprimer
Ce qu’on a couvert
• Comment lancer une impression sous Linux.
• Comment obtenir des informations sur :
les spools
LPIC1 / Comptia Linux+ alphorm.com™©
les spools
les imprimantes
le serveur CUPS
• Comment annuler une ou plusieurs tâche(s) d'impression.
Impression
Configuration de CUPS
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Configuration de CUPS
Plan
• Configurer les imprimantes
• Fichiers PPD
• Fichier de configuration
• Interface web
LPIC1 / Comptia Linux+ alphorm.com™©
Configurer les imprimantes
• /etc/cups/printers.conf
à n'éditer qu'en dernier recours
• Commande :$ lpadmin [-dpx] destination [-v URI]
LPIC1 / Comptia Linux+ alphorm.com™©
• -d : mettre par défaut
• -p : ajouter ou modif
• -x : supprimer
• Serveur web : htpp://localhost:631
Fichiers PPD
• PostScript Printer Définition
description des caractéristiques d'une imprimante PS
• /etc/cups/ppd/*.ppd
• fournis par :
CUPS (intégré)
LPIC1 / Comptia Linux+ alphorm.com™©
CUPS (intégré)
package
http://www.linuxfoundation.org/en/OpenPrinting/Database/Foomatic
GIMP Print - Gut
CUPS Driver Development kit (HP & Epson)
constructeur
Fichier de configuration
• /etc/cups/cupsd.conf
Browsing On
BrowseAddess 192.168.1.255
…
<Location /printers>
Order Deny,Allow
Deny from All
LPIC1 / Comptia Linux+ alphorm.com™©
Deny from All
BrowseAllow from 127.0.0.1
BrowseAllow from 192.168.1.0/24
BrowseAllow from @LOCAL
Allow from 127.0.0.1
Allow from 192.168.1.0/24
Allow from @LOCAL
</Location>
Interface web
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Comment ajouter une imprimant.
• Comment configurer CUPS.
LPIC1 / Comptia Linux+ alphorm.com™©
Administration système
Gestion des utilisateurs et
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Gestion des utilisateurs et
groupes
Plan
• Nommage
• Groupes
• UID et GID
• Le fichier passwd
• Modifier un utilisateur
• Modifier le shadow pour un
utilisateur
• Supprimer un utilisateur
• Ajouter un groupe
LPIC1 / Comptia Linux+ alphorm.com™©
• Le fichier group
• Le fichier shadow
• Le fichier gshadow
• Ajouter un utilisateur
• Ajouter un groupe
• Modifier et supprimer un groupe
Nommage
• case sensitive
• éviter les espaces
LPIC1 / Comptia Linux+ alphorm.com™©
• doit commencer par une lettre
• maximum 32 caractères
privilégier un maximum de 8
Groupes
• définition similaire aux utilisateurs
• un utilisateur appartient
à un groupe primaire
LPIC1 / Comptia Linux+ alphorm.com™©
à un groupe primaire
et éventuellement à des groupes secondaires
• pour changer d'identifiant de groupe en cours de session
$ newgrp groupe
UID et GID
• nombre identifiant
unique ???
•0-99 : outils et fonctions spécifiques système
LPIC1 / Comptia Linux+ alphorm.com™©
0 : root
ex : 2 (Red Hat) daemon
• 100-500 ou 1000 : fonctions spécifiques liées à la distribution
ex : GID 100 : users (groupe par défaut)
Le fichier passwd
• /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/bin/false
daemon:x:2:2:daemon:/sbin:/bin/false
adm:x:3:4:adm:/var/adm:/bin/false
lp:x:4:7:lp:/var/spool/lpd:/bin/false
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
LPIC1 / Comptia Linux+ alphorm.com™©
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/bin/false
news:x:9:13:news:/usr/lib/news:/bin/false
uucp:x:10:14:uucp:/var/spool/uucppublic:/bin/false
operator:x:11:0:operator:/root:/bin/bash
ftp:x:21:21::/home/ftp:/bin/false
nobody:x:65534:65534:nobody:/:/bin/false
alias:x:501:501::/var/qmail/alias:/bin/bash
pierre:x:509:509:Pierre Feuille:/home/pierre:/bin/bash
paul:x:511:512:Paul Ogne:/home/paul:/bin/bash
jacques:x:511:509:Jacques Chirac:/home/jacques:/bin/bash
Le fichier group
• /etc/group
root:x:0:root
bin:x:1:root,bin,daemon
daemon:x:2:root,bin,daemon
sys:x:3:root,bin,adm
adm:x:4:root,adm,daemon
tty:x:5:
...
rv:x:500:
LPIC1 / Comptia Linux+ alphorm.com™©
rv:x:500:
gdm:x:42:
jackuser:x:493:
nm-openconnect:x:492:
icecast:x:491:
stapdev:x:490:
stapusr:x:489:
oprofile:x:16:
stap-server:x:155:
ccache:x:488:
pierre:x:509:
paul:x:512:
Le fichier shadow
• /etc/shadow
root:$1$cJtWmhbX$1iCfb31CvckZiVDeae0Zx.:13383:0:99999:7:::
daemon:*:13383:0:99999:7:::
bin:*:13383:0:99999:7:::
sys:*:13383:0:99999:7:::
sync:*:13383:0:99999:7:::
games:*:13383:0:99999:7:::
man:*:13383:0:99999:7:::
…
LPIC1 / Comptia Linux+ alphorm.com™©
…
proxy:*:13383:0:99999:7:::
www-data:*:13383:0:99999:7:::
nobody:*:13383:0:99999:7:::
dhcp:!:13383:0:99999:7:::
syslog:!:13383:0:99999:7:::
klog:!:13383:0:99999:7:::
cupsys:!:13383:0:99999:7:::
messagebus:!:13383:0:99999:7:::
haldaemon:!:13383:0:99999:7:::
hplip:!:13383:0:99999:7:::
paul:$1$tgS/4j6v$D9dP0cyqc6QydDOQDAiPm.:13383:0:99999:7:::
Le fichier gshadow
• /etc/gshadow
general:!!:shelley:juan,bob
LPIC1 / Comptia Linux+ alphorm.com™©
Ajouter un utilisateur
# useradd [-c commentaire] [-d rép_perso] [-e date_expiration] [-f
inactive_time] [-g groupe_initial] [-G groupe[,...]] [-m [-k
rép_squelette] | -M] [-p mot_de_passe] [-s shell] [-u uid [ -o]]
[-n] [-r] login
LPIC1 / Comptia Linux+ alphorm.com™©
Modifier un utilisateur
• Options
similaires à useradd
$ usermod [options] [-d repertoire [-m]] [-l login] [-L] [-U] login
LPIC1 / Comptia Linux+ alphorm.com™©
similaires à useradd
Modifier le shadow pour un utilisateur
# passwd [-k] [-l] [-u [-f]] [-d] [-S] [username]
• modifier le mot de passe
modification des paramètres
LPIC1 / Comptia Linux+ alphorm.com™©
# chage [-m min] [-M max] [-d dernier] [-I inactive] [-E expire]
[-W alerte] [-l] utilisateur
• modification des paramètres
Supprimer un utilisateur
$ userdel [-r] [-f] [-h] login
LPIC1 / Comptia Linux+ alphorm.com™©
Ajouter un groupe
# groupadd [-g GID [-o]] [-r] [-f] groupname
LPIC1 / Comptia Linux+ alphorm.com™©
Modifier et supprimer un groupe
• relativement au fichier group
• relativement au fichier gshadow
# groupmod [-g GID [-o]] [-n newgroupname] oldgroupname
LPIC1 / Comptia Linux+ alphorm.com™©
• suppression
# gpasswd [-a user] [-d user] [-R] [-r] [-A user[,...]] [-M
user[,...]] group
# groupdel nom
Ce qu’on a couvert
• Comment administrer les utilisateurs et groupes sous Linux.
LPIC1 / Comptia Linux+ alphorm.com™©
Administration système
Logs
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Logs
Plan
• Introduction
• Historique
• Concept
• Implémentations
Niveaux
LPIC1 / Comptia Linux+ alphorm.com™©
• Niveaux
• Facilités
• Configuration
• Analyse
• Log manuel
Introduction
• journalisation ou logging
• enregistrement séquentiel
dans un fichier
LPIC1 / Comptia Linux+ alphorm.com™©
dans un fichier
journal ou log file
• des activités du système et des applications
Historique
• 80s - Eric Allman
Projet Sendmail
• rapidement un standard de fait
puis RFC 3164 puis 5424
LPIC1 / Comptia Linux+ alphorm.com™©
puis RFC 3164 puis 5424
• GNU/Linux
• Unix
• périphériques réseau
Concept
• client - serveur
UDP 514
centralisation
LPIC1 / Comptia Linux+ alphorm.com™©
centralisation
• via un socket
sous GNU/Linux : /dev/log
Implémentations
• syslogd + klogd
historique
LPIC1 3.5
LPIC1 / Comptia Linux+ alphorm.com™©
Debian 4.0
• syslog-ng
Fedora jsq 10, openSuse jsq 11.2 …
• rsyslog
Niveaux
• définie l'importance du message
• debug, info, notice, warning (warn), err (error), crit, alert, emerg (panic)
LPIC1 / Comptia Linux+ alphorm.com™©
• peut être précédé de '=' ou '!'
Facilités
• définie l'origine (programme ou outil) générant le message
• auth (security)
• authpriv, cron, kern, lpr, mail, news, syslog, user, uucp
LPIC1 / Comptia Linux+ alphorm.com™©
• local0 à local7
• daemon
• mark
• *
Configuration
• /etc/syslog.conf
• format
secteur1;secteur2 action
facilité.priorité action
LPIC1 / Comptia Linux+ alphorm.com™©
• Exemples
mail.* /var/log/mail
*.emerg *
kern.* /var/log/kernel
kern.crit @logger.pangaea.edu
kern.crit /dev/console
kern.info;kern.!err /var/log/kernel-info
Analyse
• /var/log/
• format courant
time hôte identifiant[pid]: info
LPIC1 / Comptia Linux+ alphorm.com™©
• Exemples
Apr 14 23:17:00 speaker /USR/SBIN/CRON[6026]: (george) CMD
(/usr/bin/fetchmail -f /home/george/.fetchmailrc > /dev/null)
Apr 14 23:17:52 speaker sshd[6031]: Accepted publickey for george
from ::ffff:192.168.1.3 port 48139 ssh2
Log manuel
$ logger [-isd] [-f file] [-p pri] [-t tag] [-u socket] [message
LPIC1 / Comptia Linux+ alphorm.com™©
$ logger [-isd] [-f file] [-p pri] [-t tag] [-u socket] [message
...]
Ce qu’on a couvert
• Ce qu'est syslog.
• Quelles sont les différentes solutions de logging sous GNU/Linux.
LPIC1 / Comptia Linux+ alphorm.com™©
• Comment configurer syslogd.
• Comment réaliser un log manuellement.
Administration système
Maintenir le temps système
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Maintenir le temps système
Plan
• Introduction
• Configuration
• Modifier et consulter l'horloge système
• Modifier et consulter l'horloge matérielle
LPIC1 / Comptia Linux+ alphorm.com™©
Introduction
• 2 horloges
hardware
software
LPIC1 / Comptia Linux+ alphorm.com™©
• Windows & Max OS pre-X
temps local
peu adapté pour le WAN
Configuration
• /etc/localtime
fichier binaire
copie ou lien symbolique vers
/usr/share/zoneinfo/…
LPIC1 / Comptia Linux+ alphorm.com™©
/usr/share/zoneinfo/…
• plus, pour certaines distributions
Debian : /etc/timezone
Fedora : /etc/sysconfig/clock
Modifier et consulter l'horloge système
• Options
-u ou --utc ou --universal : temps universel
$ date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
LPIC1 / Comptia Linux+ alphorm.com™©
-u ou --utc ou --universal : temps universel
• local par défaut
Modifier et consulter l'horloge matérielle
• afficher
• modifier
$ hwclock [-r | -show]
$ hwclock --set --date=date [--utc | --localtime]
LPIC1 / Comptia Linux+ alphorm.com™©
• mettre l'heure système à l'heure de l'horloge machine
• et inversement
$ hwclock -s
$ hwclock -W
Ce qu’on a couvert
• Comment est géré le temps sous Linux.
• Comment consulter et modifier l'horloge.
LPIC1 / Comptia Linux+ alphorm.com™©
• Comment configurer votre timezone.
Administration système
cron
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
cron
Plan
• Introduction
• Cron : démonstration
LPIC1 / Comptia Linux+ alphorm.com™©
Introduction
• issu de Unix V7
Brian Kernighan
extrêmement sommaire
LPIC1 / Comptia Linux+ alphorm.com™©
mono-utilisateur (root)
• adapté pour Unix System V
multi-utilisateur
moderne
BSD, Solaris, IRIX, HP-UX, AIX
Cron : démonstration
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Comment administrer cron.
LPIC1 / Comptia Linux+ alphorm.com™©
Administration système
anacron
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
anacron
Plan
• Introduction
• Démonstration
LPIC1 / Comptia Linux+ alphorm.com™©
Introduction
• Pourquoi un second outil ?
LPIC1 / Comptia Linux+ alphorm.com™©
Démonstration
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Configurer anacron.
LPIC1 / Comptia Linux+ alphorm.com™©
Administration système
Gestion des interfaces réseaux
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Gestion des interfaces réseaux
Plan
• Modèle OSI
• Commandes
• Interfaces
• Lister les interfaces
Modifier une adresses MAC
LPIC1 / Comptia Linux+ alphorm.com™©
• Modifier une adresses MAC
• Activation et désactivation d'une interface
• Wi-Fi : association
• Wi-Fi : sécurité
• wpa_supplicant : configuration
Modèle OSI
Type de
Donnée
couche Protocoles
Couches
Hautes
Donnée
7. Application FTP, SMTP, Telnet, HTTP,
DNS, DHCP
6. Présentation ASCII, SMB, AFP
5. Session AppleTalk, NetBIOS, RPC
LPIC1 / Comptia Linux+ alphorm.com™©
5. Session AppleTalk, NetBIOS, RPC
Segment /
Datagramme
4. Transport TCP / UDP
Couches
Matérielles
Paquet 3. Réseau ICMP, IP, ARP, service DHCP
Trame 2. Liaison Ethernet, PPP, Wi-Fi
Bit 1. Physique -
Commandes
• solutions historique
# ifconfig [ interface [aftype] options | adresse ... ]
# route [options]
LPIC1 / Comptia Linux+ alphorm.com™©
• solution moderne# ip [ OPTIONS ] OBJECT { COMMAND | help }
Interfaces
• terme clé - numéro (cf. udev)
eth[012…] ou em[012…] et p<slot>p<port> :
ethernets
wlan[012…] , ra[012…] , ath[012…] : wifi
LPIC1 / Comptia Linux+ alphorm.com™©
wlan[012…] , ra[012…] , ath[012…] : wifi
tun[012…] / tap[012…] : interfaces virtuelles de
tunneling
lo : boucle locale
ppp[012…] , pppoe[012…] : modem, 3G …
Lister les interfaces
• avec ifconfig
avec iproute2
$ ifconfig -a
LPIC1 / Comptia Linux+ alphorm.com™©
• avec iproute2
• avec lshw
$ ip link list
$ lshw --class network
Modifier une adresses MAC
• avec ifconfig
avec iproute2
# ifconfig <dev> hw <type> <adresse mac>
LPIC1 / Comptia Linux+ alphorm.com™©
• avec iproute2
• modification statique : cf udev
# ip link set dev <dev> address <adresse_mac>
Activation et désactivation d'une interface
• avec ifconfig
avec iproute2
# ifconfig <dev> up
# ifconfig <dev> down
LPIC1 / Comptia Linux+ alphorm.com™©
• avec iproute2
• avec ifup (prise en compte de fichiers de configuration)
# ip link set dev <dev> up
# ip link set dev <dev> down
# ifup <dev>
# ifdown <dev>
Wi-Fi : association
• Lister les réseaux accessibles :
• Afficher la configuration actuelle des interfaces réseaux :
$ iwconfig
$ iwlist wlan0 scan
LPIC1 / Comptia Linux+ alphorm.com™©
• S’associer à un réseau :
# iwconfig wlan0 essid <SSID>
Wi-Fi : sécurité
• réseau ouvert
• WEP
# iwconfig wlan0 key open
# iwconfig wlan0 key <clé wep>
LPIC1 / Comptia Linux+ alphorm.com™©
• WPA
$ wpa_supplicant -c mon_wpa.conf -i wlan0
wpa_supplicant : configuration
• mon_wpa.conf
network={
ssid="<SSID du réseau>"
proto=WPA RSN
key_mgmt=WPA-PSK
psk="<mot de passe>"
}
LPIC1 / Comptia Linux+ alphorm.com™©
}
Ce qu’on a couvert
• Configuration réseaux GNU/Linux en lien avec la couche liaison son
modèle OSI :
interfaces
adresses MAC
LPIC1 / Comptia Linux+ alphorm.com™©
adresses MAC
Wi-Fi
Administration système
Adressage IP
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Adressage IP
Plan
• Modèle OSI
• Introduction au DHCP
• Les clients DHCP
• Adressage IP statique avec ifconfig
LPIC1 / Comptia Linux+ alphorm.com™©
• Adressage IP statique avec iproute2
• Configuration persistante
Modèle OSI
Type de
Donnée
couche Protocoles
Couches
Hautes
Donnée
7. Application FTP, SMTP, Telnet, HTTP,
DNS, DHCP
6. Présentation ASCII, SMB, AFP
5. Session AppleTalk, NetBIOS, RPC
LPIC1 / Comptia Linux+ alphorm.com™©
5. Session AppleTalk, NetBIOS, RPC
Segment /
Datagramme
4. Transport TCP / UDP
Couches
Matérielles
Paquet 3. Réseau ICMP, IP, ARP, service DHCP
Trame 2. Liaison Ethernet, PPP, Wi-Fi
Bit 1. Physique -
Introduction au DHCP
• protocole client / serveur
couches 3 et 7
adressage ip dynamique
LPIC1 / Comptia Linux+ alphorm.com™©
• requête broadcast
recherche de serveur DHCP
reception des informations nécessaires à la
couche réseau
Les clients DHCP
• Le plus courant
Autres outils
# dhclient interface
LPIC1 / Comptia Linux+ alphorm.com™©
• Autres outils$ pump interface
$ dhcpcd interface
Adressage IP statique avec ifconfig
• xxx
• Exemples# ifconfig eth0 192.168.10.20
# ifconfig <dev> <adresse_ip> [netmask <mask>] [broadcast <addr>]
LPIC1 / Comptia Linux+ alphorm.com™©
# ifconfig eth0 192.168.1.20 netmask 255.255.255.0
# ifconfig eth0 192.168.1.20 netmask 255.255.255.0 broadcast
192.168.1.255
Adressage IP statique avec iproute2
# ip addr del <prev_ip_addr>/<netmask> dev <dev>
# ip addr add <ip_addr>/<netmask> dev <dev>
LPIC1 / Comptia Linux+ alphorm.com™©
Configuration persistante
• /etc/network/interfaces
• /etc/sysconfig/
network : général
LPIC1 / Comptia Linux+ alphorm.com™©
network : général
network-script/ifcfg-* : un par interface
Ce qu’on a couvert
• Comment allouer une adresse IP à vos interfaces réseaux.
LPIC1 / Comptia Linux+ alphorm.com™©
Administration système
Route
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Route
Plan
• Modèle OSI
• Vérifier
• Ajouter et supprimer
• MTU et TTL
LPIC1 / Comptia Linux+ alphorm.com™©
Modèle OSI
Type de
Donnée
couche Protocoles
Couches
Hautes
Donnée
7. Application FTP, SMTP, Telnet, HTTP,
DNS, DHCP
6. Présentation ASCII, SMB, AFP
5. Session AppleTalk, NetBIOS, RPC
LPIC1 / Comptia Linux+ alphorm.com™©
5. Session AppleTalk, NetBIOS, RPC
Segment /
Datagramme
4. Transport TCP / UDP
Couches
Matérielles
Paquet 3. Réseau ICMP, IP, ARP, service DHCP
Trame 2. Liaison Ethernet, PPP, Wi-Fi
Bit 1. Physique -
Vérifier
• Exemple :
Savoir par où passeraient des paquets à
destination de google :# ip route get 64.233.183.147
LPIC1 / Comptia Linux+ alphorm.com™©
• Visualiser les différentes routes déjà configurées
# route -n
Ajouter et supprimer
• Ajouter avec route
• Supprimer avec route
# route add -net 172.20.10.0/24 gw 192.168.1.1
# route del -net 172.20.10.0/24 gw 192.168.1.1
LPIC1 / Comptia Linux+ alphorm.com™©
• Ajouter avec iproute2
• Supprimer avec iproute2
# ip route add default via 10.0.0.1 dev eth0
# ip route change default via 10.0.0.1 dev eth0 mtu 500 hoplimit 10
MTU et TTL
• Changer le mtu et le ttl d’une route existante :
# ip route change default via 10.0.0.1 dev eth0 mtu 500 hoplimit 10
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Configurer basique du routage GNU/Linux.
LPIC1 / Comptia Linux+ alphorm.com™©
Administration système
ARP
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
ARP
Plan
• Modèle OSI
• Commande arp
• iproute2
LPIC1 / Comptia Linux+ alphorm.com™©
Modèle OSI
Type de
Donnée
couche Protocoles
Couches
Hautes
Donnée
7. Application FTP, SMTP, Telnet, HTTP,
DNS, DHCP
6. Présentation ASCII, SMB, AFP
5. Session AppleTalk, NetBIOS, RPC
LPIC1 / Comptia Linux+ alphorm.com™©
5. Session AppleTalk, NetBIOS, RPC
Segment /
Datagramme
4. Transport TCP / UDP
Couches
Matérielles
Paquet 3. Réseau ICMP, IP, ARP, service DHCP
Trame 2. Liaison Ethernet, PPP, Wi-Fi
Bit 1. Physique -
Commande arp
• Ajout d’une entrée statique :
Suppression d’une entrée :
$ arp -s 192.168.1.2 00:40:33:2D:B5:DD
LPIC1 / Comptia Linux+ alphorm.com™©
• Suppression d’une entrée :
• Lister les entrées :
$ arp -d 192.168.1.2
$ arp -va
iproute2
• Affficher la table :
• Ajouter une entrée statique :
$ ip neigh show
LPIC1 / Comptia Linux+ alphorm.com™©
• Ajouter une entrée statique :
• Suppression d’une entrée :
$ ip neigh add <adresse ip> dev <interface> lladdr <adresse MAC>
$ ip neigh del <adresse ip> dev <interface>
Ce qu’on a couvert
• Ajouter et supprimer des entrées ARP statiques.
LPIC1 / Comptia Linux+ alphorm.com™©
Administration système
Résolution de nom
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Résolution de nom
Plan
• Modèle OSI
• Fichier hosts
• Configuration des solutions de résolution
• Nom d'hôte
LPIC1 / Comptia Linux+ alphorm.com™©
• Spécifier les serveurs DNS
Modèle OSI
Type de
Donnée
couche Protocoles
Couches
Hautes
Donnée
7. Application FTP, SMTP, Telnet, HTTP,
DNS, DHCP
6. Présentation ASCII, SMB, AFP
5. Session AppleTalk, NetBIOS, RPC
LPIC1 / Comptia Linux+ alphorm.com™©
5. Session AppleTalk, NetBIOS, RPC
Segment /
Datagramme
4. Transport TCP / UDP
Couches
Matérielles
Paquet 3. Réseau ICMP, IP, ARP, service DHCP
Trame 2. Liaison Ethernet, PPP, Wi-Fi
Bit 1. Physique -
Fichier hosts
• /etc/hosts
• entrées statiques
ont toujours la priorité ur le DNS
<adresse ip> <nom d’hôte>
…
LPIC1 / Comptia Linux+ alphorm.com™©
<adresse ip> <nom d’hôte>
…
Configuration des solutions de résolution
• /etc/host.conf
• tend à être remplacé par le fichier nsswitch.conf
order hosts, bind
multi on
LPIC1 / Comptia Linux+ alphorm.com™©
hosts nis files dns
Nom d'hôte
• Consultation et modification dynamique
• Modification persistente
$ hostname [nouveaunom]
LPIC1 / Comptia Linux+ alphorm.com™©
/etc/hostname
Spécifier les serveurs DNS
• /etc/resolv.conf
nameserver 192.168.10.1
nameserver 127.0.1.1
search mondomaine.fr autredomaine.fr
LPIC1 / Comptia Linux+ alphorm.com™©
Ce qu’on a couvert
• Configuration de la résolution de nom sous GNU/Linux.
LPIC1 / Comptia Linux+ alphorm.com™©
Connaissances
complémentaires
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Introduction au scripting bash
Plan
• Introduction
• Rappel : variables
• Shebang
• Sortie
• Alternatives :
si - sinon
Selon
• Boucles :
Pour
LPIC1 / Comptia Linux+ alphorm.com™©
• Test
• Expressions mathématiques
• Composition
Pour
Tant que
• Lecture depuis l’entrée
standard
• Lancement
Introduction
• automatiser
LPIC1 / Comptia Linux+ alphorm.com™©
• comprendre
Rappel : variables
• déclaration
• paramètres de position : $#, $@, $*, $0, $1, $2, $3, etc …
mavariable="valeur"
LPIC1 / Comptia Linux+ alphorm.com™©
• valeur de sortie de la dernière commande : $?
• PID du processus de script : $$
Shebang
• Première ligne d'un script
• Indique qu'un fichier est un script
• Suivit de l'interpréteur
• Exemples :
LPIC1 / Comptia Linux+ alphorm.com™©
#!/bin/sh -x
#!/bin/bash
#!/usr/bin/perl
#!/usr/bin/tcl
#!/bin/sed -f
#!/usr/awk -f
Sortie
• met fin à l'exécution du script
• renvoi la valeur donnée
exit [valeur]
LPIC1 / Comptia Linux+ alphorm.com™©
• renvoi la valeur donnée
0 = bonne exécution = true
Test
• ou
test expression
[ expression ]
LPIC1 / Comptia Linux+ alphorm.com™©
• Exemples
[ 2 -lt 3 ]
[ "$var1" != "$var2" ]
[ -x /bin/bash ]
Expressions mathématiques
• calculer et afficher le résultat sur la sortie standard
exécuter une opération
expr expression
LPIC1 / Comptia Linux+ alphorm.com™©
• exécuter une opération
ou
• peu être précédé de $ pour enregistrer dans une
let expression
((expression))
Composition
• séquentielle : cmd1 ; cmd2
• parallèle : cmd1 & cmd2
• sur erreur (ou) : cmd1 || cmd2
LPIC1 / Comptia Linux+ alphorm.com™©
• sur succès (et) : cmd1 && cmd2
Alternatives : si - sinon
if test
then
instructions
elif test
then
instructions
LPIC1 / Comptia Linux+ alphorm.com™©
instructions
…
else
instructions
fi
Alternatives : Selon
case variable in
expr)
instructions
;;
LPIC1 / Comptia Linux+ alphorm.com™©
;;
…
esac
Boucles : Pour
for var in [liste]
do
…
done
LPIC1 / Comptia Linux+ alphorm.com™©
• Exemple :
for (( i=1 ; i<=5 ; i++ ))
do
echo $i
done
Boucles : Tant que
while test
do
…
done
LPIC1 / Comptia Linux+ alphorm.com™©
Lecture depuis l’entrée standard
read [-p prompt] [name...]
LPIC1 / Comptia Linux+ alphorm.com™©
Lancement
$ ./script
$ bash script
LPIC1 / Comptia Linux+ alphorm.com™©
• ou ajouter le dossier au PATH
Ce qu’on a couvert
• Comment s'écrit un script bash.
• Comment lancer un script bash.
LPIC1 / Comptia Linux+ alphorm.com™©
Connaissances
complémentaires
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Introduction à la gestion de
bases de données
Plan
• Introduction
• SGBD
• Installer
• Types de donnée
• Clauses
WHERE
GROUP BY
ORDER BY
• Modifier des enregistrements
LPIC1 / Comptia Linux+ alphorm.com™©
• Gestion des bases de données
• Créer une table
• Ajouter un enregistrement
• Afficher le contenu d'une table
• Modifier des enregistrements
• Supprimer des enregistrements
• Combiner des tables
avec JOIN
Introduction
• Structured Query Language
• manipulation
• définition de données
LPIC1 / Comptia Linux+ alphorm.com™©
• contrôle de transaction
• contrôle de données
SGBD
• MySQL
• MariaDB
• PostgreSQL
LPIC1 / Comptia Linux+ alphorm.com™©
• SQLite
• Oracle
• etc …
Installer
• MariaDB
https://downloads.mariadb.org/mariadb/reposito
ries/
LPIC1 / Comptia Linux+ alphorm.com™©
• MySQL
• PostgreSQL
# apt-get install mysql-server mysql-client
# apt-get install postgresql postgresql-client
Types de données
Type Description
INTEGER (INT) entier sur 4 octets
SMALLINT entier sur 2 octets
DECIMAL(X,Y) nombre décimal de X chiffres dont Y décimaux
NUMERIC idem que DECIMAL
FLOAT nombre décimal à virgule flottante
DOUBLE float sur deux fois plus d'octets
LPIC1 / Comptia Linux+ alphorm.com™©
DOUBLE float sur deux fois plus d'octets
DATETIME date et heure
DATE date
TIME temps (HH:MM:SS)
CHAR(X) chaine de caractère de taille fixe (complétée par des espaces)
VARCHAR(X) chaine de caractère de taille variable
ENUM('a','b','c') liste énumérée
SET('a','b','c') liste énumérée (comprenant la valeur nulle)
Gestion des bases de données
• Créer une base de données
• Afficher les bases de données
CREATE DATABASE nom;
SHOW DATABASES;
LPIC1 / Comptia Linux+ alphorm.com™©
• Utiliser une base de données
• Afficher les tables de la base courante
USE nom;
SHOW TABLES;
Créer une table
• Exemple
CREATE TABLE tbl_name [(create_definition,...)];
LPIC1 / Comptia Linux+ alphorm.com™©
CREATE TABLE matable ( id INT NOT NULL auto_increment, nom
varchar(255) NOT NULL, prenom varchar(255) NOT NULL, date DATE
DEFAULT ’0000-00-00' NOT NULL, PRIMARY KEY (id));
Ajouter un enregistrement
• Exemple
INSERT INTO nom_de_la_table [(liste des colonnes)] SELECT ...
LPIC1 / Comptia Linux+ alphorm.com™©
INSERT INTO objects VALUES(‘lizard’,’green’,6,’soft’,10.00);
Afficher le contenu d'une table
• Exemples
SELECT colones FROM table;
LPIC1 / Comptia Linux+ alphorm.com™©
SELECT * FROM objects;
SELECT value,color FROM objects;
Clause WHERE
• permet de n'affecter qu'une partie des enregistrements
grâce à une (ou plusieurs) condition(s)
• Exemples
SELECT * FROM table WHERE id > 10 ;
LPIC1 / Comptia Linux+ alphorm.com™©
SELECT * FROM objects WHERE color=’green’;
SELECT * FROM objects WHERE hardness=’soft’ AND value>7.50;.
Clause GROUP BY
• groupement des enregistrements
n'affiche qu'une ligne par groupe
Exemple
LPIC1 / Comptia Linux+ alphorm.com™©
• ExempleSELECT student_name, AVG(test_score)
FROM student
GROUP BY student_name;
Clause ORDER BY
• trier
• Exemple
LPIC1 / Comptia Linux+ alphorm.com™©
SELECT * FROM objects WHERE hardness=’soft’ ORDER BY value;
Modifier des enregistrements
• Exemple
UPDATE tbl_name SET col_name1=expr1 [, col_name2=expr2 ...]
[WHERE where_definition];
LPIC1 / Comptia Linux+ alphorm.com™©
UPDATE objects SET size=5 WHERE name=’lizard’;
Supprimer des enregistrements
• Exemple
DELETE FROM table_name[WHERE where_definition];
LPIC1 / Comptia Linux+ alphorm.com™©
DELETE FROM locations WHERE name=’tree’ AND location=’back yard’ ;
Combiner des tables avec JOIN
• Exemple
SELECT objects.name, objects.color, locations.location
FROM objects
JOIN locations
WHERE objects.name=locations.name AND objects.color=’green’;
LPIC1 / Comptia Linux+ alphorm.com™©
WHERE objects.name=locations.name AND objects.color=’green’;
Ce qu’on a couvert
• Qu'est ce qu'une base de donnée.
• Les principaux SGBD sous GNU/Linux.
• Comment les installer.
LPIC1 / Comptia Linux+ alphorm.com™©
• Les types de donnée MySQL et MariaDB.
• Les commandes essentielles du SQL.
Connaissances
complémentaires
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Gestion des e-mails
Plan
• Introduction
• Fonctionnement
• Solutions
• Envoyer un e-mail
LPIC1 / Comptia Linux+ alphorm.com™©
• Consulter vos e-mails
• Redirections
Introduction
• un des services réseau les plus important
• élément essentiel de GNU/Linux
LPIC1 / Comptia Linux+ alphorm.com™©
même sans réseau
cf. cron
Fonctionnement
LPIC1 / Comptia Linux+ alphorm.com™©
Solutions
• Sendmail
• Postfix
LPIC1 / Comptia Linux+ alphorm.com™©
• Exim
• qmail
Envoyer un e-mail
$ mail [-v] [-s subject] [-c cc-addr] [-b bcc-addr] to-addr
LPIC1 / Comptia Linux+ alphorm.com™©
Consulter vos e-mails
$ mail [-v] [-f [name] | -u user]
LPIC1 / Comptia Linux+ alphorm.com™©
Vérifier la file d'attente
# mailq
LPIC1 / Comptia Linux+ alphorm.com™©
# sendmail -bq
• équivalent de :
Redirections
• /etc/aliases ou /etc/mail/aliases
• adresses
name: addr1[,addr2[,...]]
LPIC1 / Comptia Linux+ alphorm.com™©
nom local
fichier
• pour redirection ou liste d'adresses (:include:)
| commande
Ce qu’on a couvert
• Comment fonctionne le mailing.
• Quelles sont les différents MTA disponibles sous GNU/Linux.
• Comment envoyer et recevoir un mail.
LPIC1 / Comptia Linux+ alphorm.com™©
• Comment mettre en place une redirection.
Sécurité
Sécurité réseau
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Sécurité réseau
Plan
• Introduction
• Rechercher les ports ouverts sur un serveur
• Les super-serveurs
• Inetd
LPIC1 / Comptia Linux+ alphorm.com™©
• Xinetd
• Sécuriser xinetd
• TCP Wrapper
• Configuration du TCP Wrapper
Introduction
• nécessité de gérer les différents services
• désactivation des serveurs inutiles
LPIC1 / Comptia Linux+ alphorm.com™©
• protection des serveurs utiles
Rechercher les ports ouverts sur un serveur
• TCP connect scan
• UDP scan
$ nmap -sT hostname
$ nmap -sU hostname
LPIC1 / Comptia Linux+ alphorm.com™©
• afficher les connections actives
# netstat [-ap | -lp]
# lsof -i [46][protocol][@hostname|hostaddr][:service|port]
Désactiver les services inutiles
• cf sysVinit scripts & runlevels
/etc/inittab
/etc/init.d
LPIC1 / Comptia Linux+ alphorm.com™©
/etc/init.d
• fichiers de configuration du super-serveur
Les super-serveurs
LPIC1 / Comptia Linux+ alphorm.com™©
inetd
• InterNET Daemon
• /etc/inetd.conf + /etc/inetd.d/
service socket protocol (no)wait utilisateur programme args
LPIC1 / Comptia Linux+ alphorm.com™©
Exempleftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.ftpd -l
xinetd
• eXtended InterNET Daemon
plus sécurisé
• /etc/xinetd.conf + /etc/xinetd.d/
Exempleservice ftp
LPIC1 / Comptia Linux+ alphorm.com™©
Exempleservice ftp
{
socket_type = stream
protocol = tcp
wait = no
user = root
server = /usr/sbin/in.ftpd
server_args = -l
disable = yes
}
Sécuriser xinetd
bind = adresse-IP
only-from = adresse-IP
no-access = adresse-IP
LPIC1 / Comptia Linux+ alphorm.com™©
no-access = adresse-IP
access-time = hh:mm-hh:mm
TCP Wrapper
LPIC1 / Comptia Linux+ alphorm.com™©
Configuration du TCP Wrapper
• fichiers /etc/hosts.allow et hosts.deny
• daemon-list : cf /etc/services
daemon-list : client-list
LPIC1 / Comptia Linux+ alphorm.com™©
• client-list : nom ou adresse IP
hôte
réseau
ALL
Ce qu’on a couvert
• sujet 110-01 : Effectuer des tâches d'administration de sécurité
Être capable d'utiliser nmap et netstat pour
découvrir les ports ouverts sur un système. (nmap
netstat lsof)
LPIC1 / Comptia Linux+ alphorm.com™©
• sujet 110-02 : Configurer la sécurité d'un hôte
Comprendre le rôle du TCP wrapper.
(/etc/hosts.allow /etc/hosts.deny)
Désactiver les services réseau inutilisés.
Sécurité
Sécurité système
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Sécurité système
Plan
• Bonnes pratiques pour les mots de passe
• Limiter l'accès root
• Sudo
• Configuration de sudo
• Configuration de sudo : Exemple
LPIC1 / Comptia Linux+ alphorm.com™©
• Limiter l'usage des ressources
• Configuration de pam_limits
• Commande ulimit
• Fichier nologin
• Localiser les fichiers avec SUID/SGID
Bonnes pratiques pour les mots de passe
• choisir de bons mots de passe
• changer les mot de passe régulièrement
• utiliser les mot de passe shadow
• garder les mot de passe secrets
LPIC1 / Comptia Linux+ alphorm.com™©
• utiliser des protocoles d'authentification distante sécurisés
• attention au "shoulder surfing"
• UN mot de passe pour UN système
• attention au social engineering et au fishing
Limiter l'accès root
• ne jamais se connecter directement en tant que root
• limiter l'usage du compte root le plus possible
LPIC1 / Comptia Linux+ alphorm.com™©
• limiter l'usage du compte root le plus possible
$ su -c "commande"
Sudo
• Permet de donner certains droits d'administration aux utilisateurs
LPIC1 / Comptia Linux+ alphorm.com™©
• définis par des groupes de commandes
et des droits utilisateurs (comme root)
Configuration de sudo
• /etc/sudoers
ident hote = (user : grp) commande1, (user) commande2, ...
LPIC1 / Comptia Linux+ alphorm.com™©
# visudo
Configuration de sudo : Exemple
## Storage
Cmnd_Alias STORAGE = /sbin/fdisk, /sbin/sfdisk, /sbin/parted,
/sbin/partprobe, /bin/mount, /bin/umount
## Processes
Cmnd_Alias PROCESSES = /bin/nice, /bin/kill, /usr/bin/kill, /usr/bin/killall
%sys ALL = STORAGE, PROCESSES
LPIC1 / Comptia Linux+ alphorm.com™©
%disk ALL = STORAGE
%wheel ALL=(ALL) ALL
## The user dgb may run /bin/ls, /bin/kill, and /usr/bin/lprm—but
## only as operator. E.g.,
## $ sudo -u operator /bin/ls
dgb boulder = (operator) /bin/ls, (root) /bin/kill, /usr/bin/lprm
alan ALL = (root, bin : operator, system) ALL
Limiter l'usage des ressources
• pam_limits
LPIC1 / Comptia Linux+ alphorm.com™©
• intégré par défaut dans la plupart des distribributions
Configuration de pam_limits
• /etc/security/limits.conf
domain type item value
LPIC1 / Comptia Linux+ alphorm.com™©
• Exemple
@limited hard cpu 2
Commande ulimit
• commande interne bash
• Options
fichiers : -c -f -n
# ulimit [options [limit]]
LPIC1 / Comptia Linux+ alphorm.com™©
fichiers : -c -f -n
processus : -u -t
mémoire : -v -s -m -d -l
limitations : -H -S
-a
Fichier nologin
• /etc/nologin
• interdit la connexion à tout autre utilisateur que root
pour maintenance
LPIC1 / Comptia Linux+ alphorm.com™©
pour maintenance
• Simple message
Authentification désactivée jusqu'à 14h pour maintenance.
Localiser les fichiers avec SUID/SGID
• cf. find
• Exemple
LPIC1 / Comptia Linux+ alphorm.com™©
# find / -perm +6000 -type f
Ce qu’on a couvert
• Sujet 110.1 : Effectuer des tâches d'administration de sécurité
Audit du système pour retrouver les fichiers ayant
les permissions suid/guid positionnées. (find)
Positionner et changer les mots de passe des
LPIC1 / Comptia Linux+ alphorm.com™©
Positionner et changer les mots de passe des
utilisateurs ainsi que les informations de validité
du compte. (chage, passwd, usermod)
Imposer les limites aux utilisateurs en terme de
l'utilisation de la mémoire et des processus.
(ulimit)
Sécurité
SSH
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
SSH
Plan
• Introduction
• Connexion du client
• Copie de fichiers
• Configuration basique du serveur
• Comprendre le rôle des clés SSH
Gestion des clés SSH
LPIC1 / Comptia Linux+ alphorm.com™©
Gestion des clés SSH
Enregistrement des clés d'hôte
Clés d'authentification
• Mémorisation des passphrases
• Transfert de ports
Mise en œuvre
Introduction
• Telnet, VNC, X, etc …
en clair
LPIC1 / Comptia Linux+ alphorm.com™©
• SSH : encryption
OpenSSH
Connexion du client
• Syntaxe
• Exemple
$ ssh [options] [-F configfile] [-i identity_file] [-l login_name]
[-p port] [user@]hostname [command]
LPIC1 / Comptia Linux+ alphorm.com™©
• Configuration :
/etc/ssh/ssh-config
/.ssh/config
$ ssh admin1@linuxserver
Copie de fichiers
• Syntaxe
• Exemple
$ scp mylocalfile user@server:remotefile
$ scp user@server:remotefile mylocalfile
LPIC1 / Comptia Linux+ alphorm.com™©
• Pour des tâches plus complexes : sftp
$ scp archive.tar.gz bernard@192.168.1.1:mesarchives/archive.tar.gz
Configuration basique du serveur
• /etc/ssh/sshd-config
Port 22
Protocol 2,1
ListenAddress 0.0.0.0
KeepAlive Yes
LPIC1 / Comptia Linux+ alphorm.com™©
KeepAlive Yes
HostKey ssh_host_dsa.key
HostKey ssh_host_rsa.key
PermitRootLogin no
PasswordAuthentication yes
PubkeyAuthentication yes
PermitEmptyPasswords no
X11Forwarding yes
Comprendre le rôle des clés SSH
LPIC1 / Comptia Linux+ alphorm.com™©
Gestion des clés SSH
• /etc/ssh/ssh_host_rsa_key et /etc/ssh/ssh_host_dsa_key
extension .pub pour les publiques
générer
LPIC1 / Comptia Linux+ alphorm.com™©
• générer
• attention aux droits d'accès des clés privées
# ssh-keygen -q -t rsa1 -f /etc/ssh/ssh_host_key -C ‘’ -N ‘’
# ssh-keygen -q -t rsa -f /etc/ssh/ssh_host_rsa_key -C ‘’ -N ‘’
# ssh-keygen -q -t dsa -f /etc/ssh/ssh_host_dsa_key -C ‘’ -N ‘’
Enregistrement des clés d'hôte
• Lors d'une première authentification
message
• ~/.ssh/known_hosts
LPIC1 / Comptia Linux+ alphorm.com™©
• ~/.ssh/known_hosts
• /etc/ssh_known_hosts ou /etc/ssh/ssh_known_host
Clés d'authentification
• génération des clés
• transfert de la clé publique vers le serveur
client$ ssh-keygen -q -t rsa -f ~/.ssh/id_rsa -C ‘’ -N ‘’
client$ scp id_rsa.pub compte@serveur:temp.rsa
LPIC1 / Comptia Linux+ alphorm.com™©
• accès au serveur (par mot de passe)
• ajout de la clé
client$ ssh compte@serveur
serveur$ cat ~/temp.rsa >> ~/.ssh/authorized_keys
Mémorisation des passphrases
• lancement de ssh-agent
déclarer les variables d'environnement comme
présenté
client$ ssh-agent
LPIC1 / Comptia Linux+ alphorm.com™©
présenté
• exporter les clés vers le cache de l'agent
client$ ssh-add [clé]
Transfert de ports
LPIC1 / Comptia Linux+ alphorm.com™©
Transfert de ports : mise en oeuvre
• Serveur : /etc/ssh/sshd_config
AllowTcpForwarding yes
LPIC1 / Comptia Linux+ alphorm.com™©
• Client
# ssh -N -f -L 2000:destination:143 user@serveurssh.com
Ce qu’on a couvert
• Sujet 110.3 : Sécuriser des échanges réseau avec le cryptage
Utilisation et configuration d'un client OpenSSH 2.
• ssh , ssh-keygen , ssh-agent , ssh-add
Comprendre le rôle des clés ssh.
• /etc/ssh/ssh_host_rsa_key and ssh_host_rsa_key.pub
LPIC1 / Comptia Linux+ alphorm.com™©
• /etc/ssh/ssh_host_dsa_key and ssh_host_dsa_key.pub
• ~/.ssh/authorized_keys
• /etc/ssh_known_hosts
• ~/.ssh/id_rsa and id_rsa.pub ~/.ssh/id_dsa and id_dsa.pub
Créer des tunnels chiffrés avec le port forwarding
Sécurité
GnuPG
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
GnuPG
Plan
• Introduction
• Chiffrement par clés symétriques
• Chiffrement par clés symétriques : pratique
• Chiffrement par clés asymétriques
• Signature : théorie
LPIC1 / Comptia Linux+ alphorm.com™©
• Génération de clés asymétriques
• Certificat de révocation
• Fingerprint
• Gestion des clés
• Signature
Introduction
• GNU Privacy Guard
• Chiffrement (authenticité) et signature (confidentialité)
LPIC1 / Comptia Linux+ alphorm.com™©
• Werner Koch - fin 90's
Chiffrement par clés symétriques
LPIC1 / Comptia Linux+ alphorm.com™©
Chiffrement par clés symétriques : pratique
• chiffrer
$ gpg -c fichier
LPIC1 / Comptia Linux+ alphorm.com™©
• déchiffrer
$ gpg -o fichier -d fichier.gpg
Chiffrement par clés asymétriques
LPIC1 / Comptia Linux+ alphorm.com™©
Signature : théorie
LPIC1 / Comptia Linux+ alphorm.com™©
Génération de clés asymétriques
• interactif
chiffrement
$ gpg --gen-key
LPIC1 / Comptia Linux+ alphorm.com™©
longueur
temps
identité
passphrase
Certificat de révocation
• permet de remplacer une clé publique ne devant plus être utilisée
vérification des signatures
$ gpg --output revoke.asc --gen-revoke name
LPIC1 / Comptia Linux+ alphorm.com™©
vérification des signatures
mais pas de chiffrement
Fingerprint
• "empreinte digitale"
$ gpg --fingerprint name
LPIC1 / Comptia Linux+ alphorm.com™©
• permet de rapidement vérifier qu'une clé proviens bien de la personne
à qui on pense qu'elle appartient
Gestion des clés
• export
--armor : permet de produire la clé en ASCII
name : un bout de l'uid (prénom, nom, mail, etc ...)
• import
$ gpg --export [--armor] name > gpg.pub
LPIC1 / Comptia Linux+ alphorm.com™©
• lister
• supprimer
$ gpg --import filename
$ gpg --list-keys
$ gpg --delete-key name
Signature
• signer
$ gpg --clearsign original-file
LPIC1 / Comptia Linux+ alphorm.com™©
• import
$ gpg --verify received-file
Ce qu’on a couvert
• Sujet 110.3 Sécuriser des échanges réseau avec le cryptage
Les candidats doivent être capables d'utiliser les
techniques de cryptage pour assurer la
confidentialité des données et des
LPIC1 / Comptia Linux+ alphorm.com™©
techniques de cryptage pour assurer la
confidentialité des données et des
communications.
• Utilisation et configuration de base de GnuPG.
- gpg
- ~/.gnupg/*
Conclusion
Conclusion
LPIC1 / Comptia Linux+ alphorm.com™©
Noël Macé
Formateur et Consultant indépendant
Expert Unix et FOSS
Contact : alphorm@noelmace.com
Site : http://alphorm.com
Blog : http://alphorm.com/blog
Forum : http://alphorm.com/forum
Conclusion
Au revoir
• Et à bientôt, pour la LPIC2 et bien d'autres sujets !
LPIC1 / Comptia Linux+ alphorm.com™©

Contenu connexe

PDF
Alphorm.com Formation Hacking et Sécurité 2020 (1/3) : Méthodologies de Pente...
PDF
Alphorm.com Formation Red Hat RH124
PDF
Alphorm.com Formation PowerShell : Niveau Initiation
PDF
Chap 6 : classes et interfaces
PPSX
Chap5 diagramme d'etats-transitions
PDF
Linux Performance Analysis and Tools
PDF
alphorm.com - Formation Oracle Database 11g DBA 1 (1Z0-052)
PDF
Alphorm.com Formation Splunk : Maitriser les fondamentaux
Alphorm.com Formation Hacking et Sécurité 2020 (1/3) : Méthodologies de Pente...
Alphorm.com Formation Red Hat RH124
Alphorm.com Formation PowerShell : Niveau Initiation
Chap 6 : classes et interfaces
Chap5 diagramme d'etats-transitions
Linux Performance Analysis and Tools
alphorm.com - Formation Oracle Database 11g DBA 1 (1Z0-052)
Alphorm.com Formation Splunk : Maitriser les fondamentaux

Tendances (20)

PDF
alphorm.com - Formation Linux LPIC-2
PDF
Alphorm.com Formation Wireshark : L'essentiel
PPT
Red Hat Certified engineer course
PDF
Alphorm.com Formation Hacking et Sécurité, l'essentiel
PPTX
LVM "Linux "
PDF
Résumé vlsm et cidr
PDF
Alphorm.com Formation CCNP ENCOR 350-401 (1of8) : Commutation
PDF
Alphorm.com Formation Certification NSE4 : Fortinet Fortigate Security 6.x
PPTX
Administration réseaux sous linux cours 1
PDF
Alphorm.com Formation Sécurité des réseaux avec Cisco
PPTX
Sécurité Réseau à Base d'un Firewall Matériel (fortigate)
PPTX
Administration reseau
PDF
Alphorm.com Formation Hacking et Sécurité 2020 (4of4) : Attaques AD et Web
PDF
Linux Training For Beginners | Linux Administration Tutorial | Introduction T...
PDF
Cours linux complet
PDF
L’ Administration des Réseaux en Pratique
PDF
Alphorm.com Formation KVM
PDF
Alphorm.com Formation Windows Server 2019 : Installation et Configuration de ...
PDF
Mise en place d'un reseau securise par Cisco ASA
PDF
Fortinet UTM - les Fonctionnalités avancéese
alphorm.com - Formation Linux LPIC-2
Alphorm.com Formation Wireshark : L'essentiel
Red Hat Certified engineer course
Alphorm.com Formation Hacking et Sécurité, l'essentiel
LVM "Linux "
Résumé vlsm et cidr
Alphorm.com Formation CCNP ENCOR 350-401 (1of8) : Commutation
Alphorm.com Formation Certification NSE4 : Fortinet Fortigate Security 6.x
Administration réseaux sous linux cours 1
Alphorm.com Formation Sécurité des réseaux avec Cisco
Sécurité Réseau à Base d'un Firewall Matériel (fortigate)
Administration reseau
Alphorm.com Formation Hacking et Sécurité 2020 (4of4) : Attaques AD et Web
Linux Training For Beginners | Linux Administration Tutorial | Introduction T...
Cours linux complet
L’ Administration des Réseaux en Pratique
Alphorm.com Formation KVM
Alphorm.com Formation Windows Server 2019 : Installation et Configuration de ...
Mise en place d'un reseau securise par Cisco ASA
Fortinet UTM - les Fonctionnalités avancéese
Publicité

En vedette (20)

PDF
Alphorm.com Formation Linux LPIC-3 (examen 300) Environnement mixte
PDF
alphorm.com - Formation Cisco ICND1-CCENT (100-101)
PDF
Alphorm.com Support Formation Red Hat Administration Système III RHCSE-(Rh254)
PDF
Alphorm.com Support de la Formation LPIC-1 version 4 ss
PDF
Alphorm.com Formation Scripting Bash avancé pour GNU/Linux
PDF
Alphorm.com Support de la formation Vmware Esxi 6.0
PDF
Alphorm.com Formation SCCM 2012 R2
PDF
alphorm.com - Formation Windows Server Core 2008 (R2)
PDF
Alphorm.com Support de la Formation PromoxVE 4.x
PDF
Alphorm.com-Formation windows 2012 (70-410)
PDF
alphorm.com - Formation Microsoft Hyper-V 2012
PDF
Alphorm.com Support de la formation Citrix NetScaler11
PDF
Alphorm.com Formation Docker (1/2) : Installation et Administration
PDF
Alphorm.com formation Red Hat (RH134)
PDF
Alphorm.com support de la formation-ccnp route examen 300-101-ss
PDF
Alphorm.com Formation Hacking et Sécurité , avancé
PDF
Alphorm.com Support Formation Hacking & Sécurité Expert Vulnérabilités Web
PDF
Alphorm.com Formation GLPI: Installation et Adminisration
PDF
alphorm.com - Formation XenSources
PDF
Alphorm.com Formation Déployer Xen Desktop 7.6 ET XenApp 7.6
Alphorm.com Formation Linux LPIC-3 (examen 300) Environnement mixte
alphorm.com - Formation Cisco ICND1-CCENT (100-101)
Alphorm.com Support Formation Red Hat Administration Système III RHCSE-(Rh254)
Alphorm.com Support de la Formation LPIC-1 version 4 ss
Alphorm.com Formation Scripting Bash avancé pour GNU/Linux
Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Formation SCCM 2012 R2
alphorm.com - Formation Windows Server Core 2008 (R2)
Alphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com-Formation windows 2012 (70-410)
alphorm.com - Formation Microsoft Hyper-V 2012
Alphorm.com Support de la formation Citrix NetScaler11
Alphorm.com Formation Docker (1/2) : Installation et Administration
Alphorm.com formation Red Hat (RH134)
Alphorm.com support de la formation-ccnp route examen 300-101-ss
Alphorm.com Formation Hacking et Sécurité , avancé
Alphorm.com Support Formation Hacking & Sécurité Expert Vulnérabilités Web
Alphorm.com Formation GLPI: Installation et Adminisration
alphorm.com - Formation XenSources
Alphorm.com Formation Déployer Xen Desktop 7.6 ET XenApp 7.6
Publicité

Similaire à alphorm.com - Formation Linux LPIC-1/Comptia Linux+ (20)

PDF
Support formation vidéo : Réussir la certification Linux LPIC-1 (1)
PDF
Alphorm.com Formation LXC
ODP
LPIC1 05 02 Filesystem Hierarchy Standard
PDF
Initiation à Linux - Fundamentals
PDF
Alphorm.com Formation VirtualBox
ODP
LPIC1 07 02 procfs
ODP
LPIC1 10 01 logs
PDF
Comment développer pour Linux avec Delphi
PDF
Alphorm.com Support de la Formation Windows 10 Troubleshooting avancé
PDF
360671424-Linux-Lpi-Compilation-Ecran-Hide.pdf
ODP
LPIC1 11 02 sécurité système
PDF
Alphorm.com - Formation programmer en Visual Basic .NET
ODP
LPIC1 11 01 sécurité réseaux
PDF
Gestion des dépendances dans un projet PHP - Forum PHP 2012
PPT
Développement Noyau Et Driver Sous Gnu Linux
PDF
Alphorm formation OS X 10.11 Client El Capitan
PDF
Linux LPIC-3 ( PDFDrive ).pdf
PDF
Alphorm.com Formation OS X 10.11 Server El Capitan, Les fondamentaux
PDF
Alphorm.com Formation Edition Scientifique avec Latex (2e)
PDF
Drupalcamp Nantes - Apprendre et prendre en main drupal
Support formation vidéo : Réussir la certification Linux LPIC-1 (1)
Alphorm.com Formation LXC
LPIC1 05 02 Filesystem Hierarchy Standard
Initiation à Linux - Fundamentals
Alphorm.com Formation VirtualBox
LPIC1 07 02 procfs
LPIC1 10 01 logs
Comment développer pour Linux avec Delphi
Alphorm.com Support de la Formation Windows 10 Troubleshooting avancé
360671424-Linux-Lpi-Compilation-Ecran-Hide.pdf
LPIC1 11 02 sécurité système
Alphorm.com - Formation programmer en Visual Basic .NET
LPIC1 11 01 sécurité réseaux
Gestion des dépendances dans un projet PHP - Forum PHP 2012
Développement Noyau Et Driver Sous Gnu Linux
Alphorm formation OS X 10.11 Client El Capitan
Linux LPIC-3 ( PDFDrive ).pdf
Alphorm.com Formation OS X 10.11 Server El Capitan, Les fondamentaux
Alphorm.com Formation Edition Scientifique avec Latex (2e)
Drupalcamp Nantes - Apprendre et prendre en main drupal

Plus de Alphorm (20)

PDF
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
PDF
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
PDF
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
PDF
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
PDF
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
PDF
Alphorm.com Formation Sage : Gestion Commerciale
PDF
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
PDF
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
PDF
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
PDF
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
PDF
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
PDF
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
PDF
Alphorm.com Formation PHP 8 : Les bases de la POO
PDF
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
PDF
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
PDF
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
PDF
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
PDF
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
PDF
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
PDF
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API

Dernier (7)

PDF
presentation_with_intro_compressee IEEE EPS France
PDF
FORMATION COMPLETE EN EXCEL DONE BY MR. NYONGA BRICE.pdf
PPTX
Presentation_Securite_Reseaux_Bac+2.pptx
PDF
Tendances tech 2025 - SFEIR & WENVISION.pdf
PDF
Modems expliqués- votre passerelle vers Internet.pdf
PDF
FORMATION EN Programmation En Langage C.pdf
PPTX
Souveraineté numérique - Définition et enjeux pour les entreprises et les dév...
presentation_with_intro_compressee IEEE EPS France
FORMATION COMPLETE EN EXCEL DONE BY MR. NYONGA BRICE.pdf
Presentation_Securite_Reseaux_Bac+2.pptx
Tendances tech 2025 - SFEIR & WENVISION.pdf
Modems expliqués- votre passerelle vers Internet.pdf
FORMATION EN Programmation En Langage C.pdf
Souveraineté numérique - Définition et enjeux pour les entreprises et les dév...

alphorm.com - Formation Linux LPIC-1/Comptia Linux+

  • 1. Présentation de la formation LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum de la formation
  • 2. Plan • Présentation du formateur • Qu’est ce que Linux • Le plan de formation • Présentation de la formation LPIC1 / Comptia Linux+ alphorm.com™© • Outils nécessaires • Comment travailler • Les références des ressources logicielles • Les liens utiles
  • 3. Présentation du formateur • Noël Macé • alphorm@noelmace.com • Formateur consultant expert Unix et FOSS • Mes références : Mon profil Viadeo : http://fr.viadeo.com/fr/profile/noel.mace LPIC1 / Comptia Linux+ alphorm.com™© Mon profil Viadeo : http://fr.viadeo.com/fr/profile/noel.mace Mon parcours : http://vizualize.me/noelmace Mon site : http://noelmace.com • Contacts • Blogs • Base de connaissance • CV • Etc …
  • 4. Qu’est ce que Linux ? • Un kernel Développé par Linux Torvalds à partir de Minix En 1991 • Un système d’exploitation Libre et open source LPIC1 / Comptia Linux+ alphorm.com™© Libre et open source Issu du projet GNU (1983) Leader sur : • les serveurs web (65%) • Les systèmes embarqués • Les super-calculateurs
  • 5. Le plan de formation • Module 1 : Présentation de Linux • Module 2 : Commandes GNU & Unix • Module 3 : Edition de fichiers • Module 4 : Gestion des logiciels • Module 5 : Configuration du matériel • Module 6 : Gestion des fichiers • Module 11 : Configuration réseaux • Module 12 : Introduction au bash scripting • Module 13 : Introduction à la gestion de bases de données • Module 14 : Configuration e-mail • Module 15 : Sécurité LPIC1 / Comptia Linux+ alphorm.com™© • Module 6 : Gestion des fichiers • Module 7 : Démarrage du système • Module 8 : Configuration de l’environnement graphique • Module 9 : Gestion des imprimantes et impressions • Module 10 : Administration système
  • 6. Certifications • LPIC1 : http://www.lpi.org/linux- certifications/programs/lpic-1 LPIC1 / Comptia Linux+ alphorm.com™© • Comptia Linux+ : http://certification.comptia.org/getCertified/certifi cations/linux.aspx
  • 7. Présentation de la formation • Orientée certification Basée sur le parcours officiel • Acquisition d’un grand nombre de connaissances Pratiques théoriques LPIC1 / Comptia Linux+ alphorm.com™© théoriques
  • 8. Outils nécessaires • Deux grandes familles de distribution Linux : Debian (Ubuntu, Damn Small Linux, etc …) Red Hat (RHEL, Fedora, Centos, Mandriva, etc …) • Peu de ressources matérielles exigées : Dual-boot Debian / Fedora Ou Machines virtuels (vitualbox) LPIC1 / Comptia Linux+ alphorm.com™© Ou Machines virtuels (vitualbox)
  • 9. Outils nécessaires (2) OU LPIC1 / Comptia Linux+ alphorm.com™© OU
  • 10. Comment travailler • La pratique, toujours la pratique : Utiliser Linux au quotidien Être curieux ! Reproduire les opérations effectuées dans chaque vidéo LPIC1 / Comptia Linux+ alphorm.com™© • Se documenter Un très grand nombre de ressources sont disponibles Ce cours ne peu pas tout traiter Lire le man ! Effectuer des recherches sur internet
  • 11. Les références des ressources logicielles • Linux Debian : http://www.debian.org • Fedora : http://fedoraproject.org/ • Virtualbox : LPIC1 / Comptia Linux+ alphorm.com™© • Virtualbox : https://www.virtualbox.org/ • Virtualboxes : http://virtualboxes.org/
  • 12. Les liens utiles • Supports officiels et communautaires des distributions : Ubuntu (en) Ubuntu-fr Debian Gentoo (en) Fedora (en) RedHat (en) OpenSuse (en) • Forums et irc : forum ubuntu-fr le forum des débutant de DLFP linuxforums.org (en) forum Linux de développez.com • Autres ressources utiles : The Linux Documentation Project LPIC1 / Comptia Linux+ alphorm.com™© Archlinux (en) • Supports recommandés par LPI : LPIC-1 & LPIC-2 free educational manuals LPI Introduction Programme (e-book libre en Anglais) • Examens d’entrainement : Linux Praxis PenguinTutor MC MCSE Linux Documentation by die.net Linux Kernel Documentation Comment ça marche Yet Another « Guide d’installation de Linux » Linux pas-à-pas section Linux de developpez.com Flashcard exchange
  • 13. GO LPIC1 / Comptia Linux+ alphorm.com™© GO
  • 14. Introduction LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Virtualbox
  • 15. Plan • Installation de virtualbox sous Windows • Récupération de machines virtuelles • Configuration • Lancement de machine virtuelles LPIC1 / Comptia Linux+ alphorm.com™©
  • 16. Ce qu’on a couvert • Comment mettre en place les outils nécessaires pour ce cours Grâce à la virtualisation LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 17. Introduction LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Installation de Debian
  • 18. Plan • Les différentes méthodes d’installation • Etapes de l’installation • Paramétrage LPIC1 / Comptia Linux+ alphorm.com™©
  • 19. Ce qu’on a couvert • Comment installer Debian LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 20. Présentation de Linux LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Qu’est ce que Linux ?
  • 21. Plan • Un peu d’histoire Unix GNU Linux • Un système hétérogène LPIC1 / Comptia Linux+ alphorm.com™© • Un système hétérogène • Linux est votre ami
  • 22. La naissance d’Unix • New Ken’s System 1969 En assembleur Inspiré de Multics • 1971 : réécriture en C LPIC1 / Comptia Linux+ alphorm.com™© • 1971 : réécriture en C • 1975 : large distribution
  • 23. La « Famille » Unix LPIC1 / Comptia Linux+ alphorm.com™©
  • 24. Gnu is Not Unix • Lancé par Richard Stallman en 1983 Afin de développer un système d’exploitation entièrement libre • Supporté par la FSF depuis 1985 Free Software Fondation LPIC1 / Comptia Linux+ alphorm.com™© Free Software Fondation • Créer une suite complète de logiciels Mais le noyau tarde à arriver Projet Hurd, initié en 1990 mais toujours inabouti à ce jour
  • 25. Linux, enfin • Basé sur Minix • fonctionne avec des composants de GNU adaptés LPIC1 / Comptia Linux+ alphorm.com™© • 26 août 1991 : annonce sur le forum Usenet comp.os.minix • 1992 : passage à la licence libre GNU GPL
  • 26. Un système hétérogène LPIC1 / Comptia Linux+ alphorm.com™©
  • 27. Linux est votre ami • Modifiable • Partageable • « bidouillable » • Adaptable LPIC1 / Comptia Linux+ alphorm.com™© • Ludique • Simple • Répandu
  • 28. Ce qu’on a couvert • D’où vient Linux • Qu’est ce qu’une distribution Les distributions majeures actuelles Pourquoi utiliser et apprendre Linux LPIC1 / Comptia Linux+ alphorm.com™© • Pourquoi utiliser et apprendre Linux FIN
  • 29. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Introduction
  • 30. Plan • Pourquoi la ligne de commande ? • Qu’est ce qu’un shell ? • Les différents shells Unix • Accéder au shell LPIC1 / Comptia Linux+ alphorm.com™©
  • 31. Pourquoi la ligne de commande ? • Efficacité • Contraintes • « Style » LPIC1 / Comptia Linux+ alphorm.com™©
  • 32. Qu’est ce qu’un shell ? • Interpréteur de commande • Remplaçable Et personnalisable LPIC1 / Comptia Linux+ alphorm.com™© • Interactif ou scripting
  • 33. Les différents shells Unix • Bash Le plus répandu • Bourne Shell Tout premier shell Unix Tcsh • C shell Plus proche de C • Korn Shell AIX & HP/UX LPIC1 / Comptia Linux+ alphorm.com™© • Tcsh Second shell de référence Le plus moderne • Z Shell Le plus innovant Synthèse de tout les autres
  • 34. Choisir un shell • Débutant = Bash • Déjà très familier d’autres systèmes Unix FreeBSD : tcsh LPIC1 / Comptia Linux+ alphorm.com™© AIX, HP/UX, OpenBSD ou Solaris : ksh Certains BSD et systèmes embarqués : ash • Privilégier autant que possible le bash !
  • 35. Accéder au Shell • Démarrage en mode texte Shell accessible directement après authentification • Avec environnement de bureau Basculer sur une autre console ( Ctrl + Alt + Fx) LPIC1 / Comptia Linux+ alphorm.com™© Basculer sur une autre console ( Ctrl + Alt + Fx) Ou utiliser un émulateur de terminal • Konsole, Gnome Terminal, xterm • Terminator
  • 36. Ce qu’on a couvert • Qu’est ce qu’un shell • Les principaux shells Unix existant • Comment accéder à une interface en ligne de commande LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 37. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Première commande
  • 38. Plan • Invite de commande • Syntaxe générale LPIC1 / Comptia Linux+ alphorm.com™©
  • 39. Ce qu’on a couvert • Qu’est ce que l’invite de commande • Syntaxe générale des commandes Linux • Ecrire une première commande LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 40. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Utiliser l’aide
  • 41. Plan • man • Aide interne des commandes • info LPIC1 / Comptia Linux+ alphorm.com™©
  • 42. man • Exemples : $ man 1 pwd $ man man LPIC1 / Comptia Linux+ alphorm.com™© • Résultat : [ ] : optionnel < > : valeur
  • 43. Pages de manuel 1. Programmes exécutables ou commandes de l’interpréteur de commandes (shell) 2. Appels système (fonctions fournies par le noyau) 3. Appels de bibliothèque (fonctions fournies par les bibliothèques des 6. Jeux 7. Divers (y compris les macropaquets et les conventions), par exemple man(7), groff(7) 8. Commandes de gestion du système (généralement réservées au LPIC1 / Comptia Linux+ alphorm.com™© 3. Appels de bibliothèque (fonctions fournies par les bibliothèques des pro‐grammes) 4. Fichiers spéciaux (situés généralement dans /dev) 5. Formats des fichiers et conventions. Par exemple /etc/passwd (généralement réservées au superutilisateur) 9. Sous-programmes du noyau [hors standard]
  • 44. Aide interne à une commande • Aucun standard • Très sommaire • Options possibles : LPIC1 / Comptia Linux+ alphorm.com™© -help --help -h
  • 45. Info • Ensemble de pages hiérarchisées Réparties en plusieurs niveaux ou « nœuds » • rubriques • Du plus général au plus particulier • Liens LPIC1 / Comptia Linux+ alphorm.com™© • Liens Marqués d’un astérisque (*) • Exemples : $ info $ info cp
  • 46. Info : navigation q Quitter espace Défilement vers le bas return Défilement vers le haut b Début du nœud (beginning) e Fin du nœud (end) LPIC1 / Comptia Linux+ alphorm.com™© Tab Aller au lien suivant Entrée Suivre le lien n Nœud suivant (next) p Nœud précédent u Nœud de niveau supérieur (up) l (L min) Retour à la page précédemment affichée (last)
  • 47. Ce qu’on a couvert • Comment utiliser l’aide intégrée LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 48. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Variables
  • 49. Plan • Qu’est ce qu’un variable ? • Déclarer une variable • Utiliser une variable • Portée d'une variable LPIC1 / Comptia Linux+ alphorm.com™© • Variables d'environnement • Variables de paramètres
  • 50. Qu’est ce qu’un variable ? • Permet d’associer une clé (son nom) à une valeur En mémoire • Exemple : La variable "message" contenant la chaine de caractère "Bonjour !" LPIC1 / Comptia Linux+ alphorm.com™© La variable "message" contenant la chaine de caractère "Bonjour !" • Avec bash : aucun typage toute valeur de variable est considérée comme une chaine de caractères
  • 51. Déclarer une variable • Sans typage, aucun besoin de déclaration spécifique • une simple affectation suffit signe égal sans espace Exemple LPIC1 / Comptia Linux+ alphorm.com™© • Exemple • Attention ! le nom d'une variable est sensible à la casse ie. "mavariable" n'est pas la même variable que "MaVariable" $ mavariable="Bonjour"
  • 52. Utiliser une variable • nécessite le caractère $ devant le nom remplace cette référence par la valeur de la variable • Exemple : $ echo $mavariable Bonjour ! LPIC1 / Comptia Linux+ alphorm.com™© • on peu aussi utiliser la syntaxe suivante : Bonjour ! $ echo ${mavariable} Bonjour !
  • 53. Portée d'une variable • Par défaut : locales n'est définie et disponible que pour l'instance de bash n'est pas accessible par les autres programmes • Variables d'environnement accessible par tout les programmes au sain d'un même environnement LPIC1 / Comptia Linux+ alphorm.com™© accessible par tout les programmes au sain d'un même environnement utilisateur ie. tout les programmes lancés • soit par vous-même • soit par un des programmes que vous avez lancé
  • 54. Variables d'environnement • utiliser la commande export • Par convention, la référence est en majuscules $ MESSAGE="Bonjour !" $ export MESSAGE LPIC1 / Comptia Linux+ alphorm.com™© • Attention ! l'argument de la commande export est bien la référence (le nom) de la variable pas sa valeur ne pas utiliser le caractère $
  • 55. variables de paramètres • variables locales • utiles en scripting (vu plus loin) • $1, $2, $3 … enregistrent les arguments passés à une commande • $0 enregistre la commande ayant permis de lancer la programme LPIC1 / Comptia Linux+ alphorm.com™© • $* enregistre tout les arguments • $# enregistre le nombre d'arguments • etc …
  • 56. Variables de paramètres: exemple • $0 est égale à "/bin/echo" • $1 à "-e" • $2 à "Bonjour !" $ /bin/echo –e "Bonjour !" LPIC1 / Comptia Linux+ alphorm.com™© • $2 à "Bonjour !" • $* à "-e 'Bonjour !'" • $# à 2
  • 57. Ce qu’on a couvert • Ce qu'est une variable • Comment les "déclarer" et les utiliser LPIC1 / Comptia Linux+ alphorm.com™© • Ce qu'est un environnement utilisateur • Comment exporter une variable vers celui-ci • Les variables de paramètres FIN
  • 58. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Commandes internes
  • 59. Plan • Qu'est ce qu'une commande exactement ? • Spécificités des commandes internes • Quelques commandes internes LPIC1 / Comptia Linux+ alphorm.com™© Changer de répertoire Afficher le répertoire courant Afficher un message Quelques autres commandes
  • 60. Qu'est ce qu'une commande exactement ? • Un programme ou une partie d'un programme soit un fichier spécifique • cf les .exe sous windows • identifié grâce à la variable d'environnement $PATH - identifie les dossiers dans lesquels sont placés les programmes disponibles LPIC1 / Comptia Linux+ alphorm.com™© - identifie les dossiers dans lesquels sont placés les programmes disponibles soit un élément du shell • c'est ce qu'on nomme les commandes internes
  • 61. Spécificités des commandes internes • n'est pas un programme à part la documentation se trouvera donc dans celle de bash • essentielles au système $ man bash LPIC1 / Comptia Linux+ alphorm.com™© • essentielles au système opérations de base • peuvent parfois être remplacée par des commandes externes afin de les améliorer ou les adapter
  • 62. Changer de répertoire • "Change directory" • Argument [repertoire] chemin absolu $ cd [repertoire] LPIC1 / Comptia Linux+ alphorm.com™© chemin absolu • exemple : /home/alphorm/monrep chemin relatif • exemple : alphorm/monrep un caractère spécial (raccourcis)
  • 63. Changer de répertoire : raccourcis ~ répertoire personnel . répertoire courant .. répertoire parant du répertoire courant LPIC1 / Comptia Linux+ alphorm.com™© .. répertoire parant du répertoire courant - dernier répertoire dans lequel nous nous situions
  • 64. Afficher le répertoire courant • "Print working directory" • -L suivre les liens symboliques $ pwd [-LP] LPIC1 / Comptia Linux+ alphorm.com™© suivre les liens symboliques • -P ne pas suivre les liens symboliques
  • 65. Afficher un message • -n Supprime le retour chariot (retour à la ligne) final • -e $ echo [-neE] [arguments ...] LPIC1 / Comptia Linux+ alphorm.com™© • -e affiche les séquences d'échappement • -E Désactive l’interprétation des séquences d’échappement.
  • 66. séquences d’échappement a alerte (avertisseur sonore) b retour arrière (backspace) c suppression du retour-chariot final f saut de page n nouvelle ligne r retour-chariot LPIC1 / Comptia Linux+ alphorm.com™© r retour-chariot t tabulation horizontale v tabulation verticale backslash nnn le caractère dont le code ASCII octal vaut nnn (un à trois chiffres) xnnn le caractère dont le code ASCII hexadécimal vaut nnn (un à trois chiffres)
  • 67. Quelques autres commandes • exec [commande [arguments]] Permet de lancer un programme en remplacement du shell • set [arg1 [arg2 [arg3 ...]]] • Permet d’affecter aux variables de paramètres de bash des valeurs déterminées. LPIC1 / Comptia Linux+ alphorm.com™© déterminées. • time commande Permet de lancer une commande, et d’afficher le temps qui aura été nécessaire à son exécution • exit / logout stopper l’exécution de bash.
  • 68. Ce qu’on a couvert • Comment les commandes sont reconnues par le bash • Ce qu'est une commande interne • Les séquences d'échappement essentielles • Plusieurs commandes internes essentielles LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 69. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Astuces
  • 70. Plan • Les astuces à connaitre pour bien utiliser le terminal LPIC1 / Comptia Linux+ alphorm.com™©
  • 71. Démonstration LPIC1 / Comptia Linux+ alphorm.com™©
  • 72. Ce qu’on a couvert • Comment utiliser le terminal à son maximum LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 73. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Gestion basique de fichiers
  • 74. Plan • Nommage • Chemins d'accès • Globbing • Commandes essentielles LPIC1 / Comptia Linux+ alphorm.com™©
  • 75. Nommage • Max 255 caractères • sensibles à la casse • Se limiter aux caractères spéciaux suivants : LPIC1 / Comptia Linux+ alphorm.com™© point (.) délimiteurs (- et _) espace (avec échappement ou quotes) tilde en fin de fichier (indique un fichier de sauvegarde automatique)
  • 76. Chemins d'accès • le délimiteur est le slash (/) • Racine unique : le dossier / LPIC1 / Comptia Linux+ alphorm.com™© • Deux types de chemins : absolu relatif
  • 77. Globbing • Remplacer des chaines de caractère par des jockers ("wildcards") ? n'importe quel caractère * n'importe quelle chaine de caractère […] l'un des caractères entre les crochets LPIC1 / Comptia Linux+ alphorm.com™© [a-f] n'importe quel caractère entre "a" et "f"
  • 78. Commandes essentielles • cp [OPTION]... SOURCE CIBLE copier des fichiers et des répertoires • mv [option...] source cible déplacer ou renommer des fichiers rm [options] fichier... LPIC1 / Comptia Linux+ alphorm.com™© • rm [options] fichier... supprimer des fichiers • touch [-acm][-tdate] [–] fichier... créer un fichier vide ou modifier son horodatage
  • 79. Commandes essentielles (2) • ls [options] [fichier...] Afficher le contenu d’un répertoire • mkdir [options] repertoire... Créer des répertoires rmdir [options] repertoire(s) LPIC1 / Comptia Linux+ alphorm.com™© • rmdir [options] repertoire(s) Supprimer un répertoire vide • ln [options] source [lien] créer un lien
  • 80. Ce qu’on a couvert • Les conventions à respecter pour nommer un fichier • Comment accéder à un fichier • Ce qu'est le globbing • Ce qu'est un lien (symbolique ou matériel) LPIC1 / Comptia Linux+ alphorm.com™© • L'horodatage Linux • Les commandes essentielles FIN
  • 81. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum flux, pipes et redirections
  • 82. Plan • Fluxs • Pourquoi les fluxs • Redirections • Pipe LPIC1 / Comptia Linux+ alphorm.com™© • utilisation et substitution d'arguments
  • 83. Fluxs 1. entrée standard (stdin) 2. sortie standard (stdout) 3. erreur standard (stderr) LPIC1 / Comptia Linux+ alphorm.com™©
  • 84. Pourquoi les fluxs • Rappel : philosophie Unix • Collaboration entre les programmes LPIC1 / Comptia Linux+ alphorm.com™© • Texte = simple et standard, donc universel
  • 85. Redirections > stdout vers nouveau fichier >> stdout à la suite d'un fichier 2> stderr vers noueau fichier 2>> stderr à la suite d'un fichier &> stdout + stderr LPIC1 / Comptia Linux+ alphorm.com™© < stdin depuis un fichier << stdin à partir d'une chaine de caractères <> stdin et stdout vers et depuis le même fichier
  • 86. Pipe • le caractère | • stdout -> stdin LPIC1 / Comptia Linux+ alphorm.com™©
  • 87. utilisation et substitution d'arguments • xargs permet d’employer chaque sortie d’un programme comme argument d’un autre • antiquotes LPIC1 / Comptia Linux+ alphorm.com™© • antiquotes permet de remplacer de manière itérative un argument par les sorties d’une commande
  • 88. Ce qu’on a couvert • Ce qu'est un flux • comment rediriger ces fluxs • comment utiliser xargs et l'antiquote pour réaliser une substitution d'arguments LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 89. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Textprocessing : combinaison
  • 90. Plan • Concaténer des fichiers • Fusionner les lignes de deux fichiers • Regrouper les lignes de différents fichiers • Regrouper les lignes de différents fichiers LPIC1 / Comptia Linux+ alphorm.com™©
  • 91. Concaténer des fichiers $ cat [options] [fichier(s)...] LPIC1 / Comptia Linux+ alphorm.com™©
  • 92. Fusionner les lignes de deux fichiers $ join [options] fichier_1 fichier_2 LPIC1 / Comptia Linux+ alphorm.com™©
  • 93. Regrouper les lignes de différents fichiers $ paste [options] [fichier...] LPIC1 / Comptia Linux+ alphorm.com™©
  • 94. Ce qu’on a couvert • Comment combiner des fichiers textes par concaténation par fusion de lignes par regroupement LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 95. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Textprocessing : transformations
  • 96. Plan • Les commandes utiles pour tranformer un texte LPIC1 / Comptia Linux+ alphorm.com™©
  • 97. Commandes utiles • Convertir les tabulations en espaces • Convertir les espaces en tabulations • * $ expand [-t num][fichier...] $ unexpand [-a][fichier...] LPIC1 / Comptia Linux+ alphorm.com™© • Trier les lignes d’un fichier texte • Découper un fichier $ sort [options] [+POS1 [-POS2]] [fichier...] $ split [options] [fichier_entrée[préfixe_sortie]]
  • 98. Commandes utiles (2) • Traduire ou éliminer des caractères • Convertir les espaces en tabulations • Éliminer les lignes dupliquées dans un fichier trié $ tr [options] ENS1 ENS2 $ uniq [options] [fichier_entrée] [fichier_sortie] LPIC1 / Comptia Linux+ alphorm.com™©
  • 99. Ce qu’on a couvert • les commandes utiles pour transformer un texte LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 100. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Textprocessing : formatage
  • 101. Plan • Les commandes utiles pour formater un texte LPIC1 / Comptia Linux+ alphorm.com™©
  • 102. Commandes utiles • Mettre en forme des textes • Numéroter les lignes d’un fichier $ fmt [options] [fichier...] $ nl [options] [fichier...] LPIC1 / Comptia Linux+ alphorm.com™©
  • 103. Ce qu’on a couvert • les commandes utiles pour formater un texte LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 104. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Textprocessing : afficher
  • 105. Plan • Les commandes utiles pour afficher un texte LPIC1 / Comptia Linux+ alphorm.com™©
  • 106. Commandes utiles • Afficher les premières lignes d'un fichier • Afficher les dernières lignes d'un fichier $ head [options] [fichier...] $ tail [options] [fichier...] LPIC1 / Comptia Linux+ alphorm.com™© • Afficher un fichier page par page $ less [fichier...]
  • 107. Ce qu’on a couvert • les commandes utiles pour afficher un texte LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 108. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Textprocessing : résumer
  • 109. Plan • Les commandes utiles pour résumer un texte LPIC1 / Comptia Linux+ alphorm.com™©
  • 110. Commandes utiles • Supprimer une partie de chaque ligne d'un fichier. • Afficher le nombre d'octets, de mots et de lignes d'un fichier $ cut [options] [fichier...] $ wc [options] [fichier...] LPIC1 / Comptia Linux+ alphorm.com™©
  • 111. Ce qu’on a couvert • les commandes utiles pour résumer un texte LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 112. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Expressions régulières
  • 113. Plan • Qu'est ce qu'une expression régulière ? • Comment écrire une expression régulière ? • Caractères spéciaux • Exemples LPIC1 / Comptia Linux+ alphorm.com™©
  • 114. Qu'est ce qu'une expression régulière ? • un outil pour représenter des motifs au sain d'un texte ie : un ensemble de chaines de caractères cf globbing pour les noms de fichiers • Utile pour : LPIC1 / Comptia Linux+ alphorm.com™© • Utile pour : la recherche la suppression le remplacement etc …
  • 115. Comment écrire une expression régulière ? • des caractères alphanumériques exemple : Linux ou ACPI • des caractères spéciaux LPIC1 / Comptia Linux+ alphorm.com™© permettant de désigner un ensemble de caractère
  • 116. Caractères spéciaux regexp simple [ … ] ensemble [ x – x ] intervalle . n'importe quel caractère répétition * zéro ou plus + un ou plus ? zéro ou un LPIC1 / Comptia Linux+ alphorm.com™© répétition ? zéro ou un {n,m} de n à m fois regexp étendue | ou logique (…) sous-section ligne ^ début $ fin
  • 117. Exemples • lignes commençant par un nombre • FreeBSD, OpenBSD ou NetBSD ^[0-9][0-9]* (Free|Open|Net)BSD LPIC1 / Comptia Linux+ alphorm.com™© • Chaine contenant "Bonjour" puis "au revoir." • Un mot commençant par un ou plusieurs 'a' ou 'b' Bonjour.*au revoir. [ab]+[a-Z]*
  • 118. Ce qu’on a couvert • Comprendre les expressions régulières LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 119. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Grep
  • 120. Plan • Pour quoi faire ? • Syntaxe • Demo LPIC1 / Comptia Linux+ alphorm.com™©
  • 121. Pour quoi faire ? • rechercher dans un fichier ou un flux les lignes correspondant à une expression régulière LPIC1 / Comptia Linux+ alphorm.com™©
  • 122. Syntaxe • Options -c : afficher le décompte des lignes correspondantes -i : ignorer la casse $ grep [options] regexp [fichier…] LPIC1 / Comptia Linux+ alphorm.com™© -i : ignorer la casse -E : utiliser la syntaxe étendue pour les expressions régulières • identique à egrep
  • 123. Démo LPIC1 / Comptia Linux+ alphorm.com™©
  • 124. Ce qu’on a couvert • Comment effectuer une recherche à l'aide d'une expression régulière LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 125. Commandes GNU & Unix LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum sed
  • 126. Plan • Pour quoi faire ? • Syntaxe • Substitution • Drapeaux LPIC1 / Comptia Linux+ alphorm.com™© • Autres commandes
  • 127. Pour quoi faire ? • modifier le contenu d'un fichier d'un flux ligne par ligne LPIC1 / Comptia Linux+ alphorm.com™© • ligne par ligne • en fonction d'expressions régulière
  • 128. Syntaxe $ sed [options] commande [fichier…] $ sed [options] –f script [fichier…] • Options : LPIC1 / Comptia Linux+ alphorm.com™© -e : permet d'enchainer plusieurs commandes à la suite -r : utilisation des expressions régulières étendues -i : effectuer les modifications directement dans le fichier
  • 129. Substitution • s/modèle/remplacement/drapeau(x) • Exemple : $ sed s/^#$/#commentaire/ monfichier LPIC1 / Comptia Linux+ alphorm.com™©
  • 130. Drapeaux g global toutes les occurrences N (nombre) _ nième occurrence w write écrire les modifications dans un fichier p print afficher la ligne modifiée (avec –n) e evaluate exécution de commande LPIC1 / Comptia Linux+ alphorm.com™© e evaluate exécution de commande • Exemples $ sed 's/A/B/g' monfichier $ sed "s/.*5/echo '$A'/e" monfichier $ sed 's/A/a/gw rslt' monfichier
  • 131. Autres commandes commande usage exemple q quitter 3q d effacer 3d p affichage (avec –n) 3p itexte insérer le texte 3imachin LPIC1 / Comptia Linux+ alphorm.com™© atexte ajouter le texte 3amachin ctexte remplacer par le texte 3cmachin = afficher 3=
  • 132. Ce qu’on a couvert • Comprendre les principes de base de sed. LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 133. Edition de fichiers LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Edition de fichiers textes
  • 134. Plan • Les outils • Emacs • Nano • Vim LPIC1 / Comptia Linux+ alphorm.com™© • La "guerre" d'éditeurs • Un peu de sérieux
  • 135. Les outils • Graphiques gedit sous Gnome kate ou kedit sous KDE mousepad sous Xfce leafpad sous LXDE • CLI vim nano emacs LPIC1 / Comptia Linux+ alphorm.com™© leafpad sous LXDE • Spécialisés jEdit Bluefish etc …
  • 136. Emacs • Puissant • Extensible • Personnalisable LPIC1 / Comptia Linux+ alphorm.com™© • développé par James Gosling en 1981 • Toute une famille d'éditeurs • Le plus courant : GNU Emacs, développé en 1984 par Richard Stallman
  • 137. Démonstration LPIC1 / Comptia Linux+ alphorm.com™©
  • 138. Nano • clone libre de Pico • simple et efficace minimal LPIC1 / Comptia Linux+ alphorm.com™© • écrit par Chris Allegretta en 1999 • contrôle par modificateurs (touche Ctrl)
  • 139. Démonstration LPIC1 / Comptia Linux+ alphorm.com™©
  • 140. Vim • la référence pour ce cours (et la LPIC) • amélioration de vi créé par Bill Joy en 1976 LPIC1 / Comptia Linux+ alphorm.com™© présent sur tout les systèmes Unix depuis modal mais non-libre • Braam Moolenaar en 1991 possède son propre language d'extension
  • 141. Démonstration LPIC1 / Comptia Linux+ alphorm.com™©
  • 142. La "guerre" d'éditeurs • Encore une occasion de troll o/ "Vim est un éditeur ; il ne cherche pas à inclure "tout sauf l'évier de la cuisine" mais vous pouvez nettoyer le vôtre avec Vim." "Emacs est un très bon système d'exploitation auquel il ne manque qu'un bon éditeur de texte." LPIC1 / Comptia Linux+ alphorm.com™© • La réelle raison : l'habitude les réflexes conditionnés
  • 143. Un peu de sérieux • Avantages réels de Emacs usage plus "naturel" pour un débutant donne un style "hacker" ^^ ça fait plaisir à Stallman • Avantages réels de Vim LPIC1 / Comptia Linux+ alphorm.com™© • Avantages réels de Vim évite les troubles musculosquelettiques plus léger, plus rapide garanti par les standards POSIX évite les conflits de touches de contrôle
  • 144. Ce qu’on a couvert • Les différentes solutions pour éditer du texte • Les principaux éditeurs de texte en ligne de commande LPIC1 / Comptia Linux+ alphorm.com™© • Trôler en finesse FIN
  • 145. Edition de fichiers LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Vim
  • 146. Plan • Les modes • Commandes utiles • Vimtutor LPIC1 / Comptia Linux+ alphorm.com™©
  • 147. Les modes Touche Mode Usage Esc normal accéder à tout les autres modes i insertion ajouter du texte : commande entrer des commandes v visuel LPIC1 / Comptia Linux+ alphorm.com™© v visuel voir démo sélection q Ex idem que pour le mode commande
  • 148. Commandes utiles commande usage A ajouter en fin de ligne u annuler la dernière opération ctrl+r rétablir yy copier la ligne LPIC1 / Comptia Linux+ alphorm.com™© yy copier la ligne dd supprimer la ligne (couper) p coller x effacer le caractère dw effacer jusqu'à la fin du mot diw effacer le mot sous le curseur
  • 149. Vimtutor • tutorial intégré $ vimtutor fr LPIC1 / Comptia Linux+ alphorm.com™© $ vimtutor fr
  • 150. Ce qu’on a couvert • Les modes de Vim • Quelques commandes utiles • Comment lancer le vimtutor LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 151. Gestion des logiciels Introduction aux packages LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Introduction aux packages
  • 152. Plan • Le concept • Les différents types • Les dépôts • Les outils LPIC1 / Comptia Linux+ alphorm.com™© • Comparaison
  • 153. Le concept • archive • assure la cohérence du système • composé de : fichiers • exécutables ou sources • configuration LPIC1 / Comptia Linux+ alphorm.com™© • documentation • scripts (pré/post - installation et désinstallation) • dépendances informations
  • 154. Les différents types • Debian : deb • Redhat : rpm – Redhat Package Manager • Arch : pacman (tar.gz, bz2 ou xz) • Slackware : pkgtool (tgz ou xz) LPIC1 / Comptia Linux+ alphorm.com™© • Gentoo (cas particulier) : Portage (scripts ebuilds + sources) • Puppy : pet • etc …
  • 155. Les dépôts • évite d'avoir à chercher soit même un paquet • met à disposition une liste de paquets à jour LPIC1 / Comptia Linux+ alphorm.com™© validés on-line (ou via un dépôt local, cd, dossier, etc …)
  • 156. Les outils • Gestionnaires de paquets dpkg rpm • Gestionnaires de téléchargement et résolution de dépendances apt – Debian & Ubuntu LPIC1 / Comptia Linux+ alphorm.com™© apt – Debian & Ubuntu • outil graphique associé : synaptic urpmi – Mandriva Yum – Red Hat Zypp - Suse
  • 157. Comparaison deb rpm signature des paquets non oui recommandations, suggestions oui non programme de vérification non oui LPIC1 / Comptia Linux+ alphorm.com™© vérification priorités oui non • avantage de rpm : utilisé par la Linux Standard Base • avantage de deb : meilleure adaptabilité
  • 158. Ce qu’on a couvert • Ce qu'est un paquet (ou package). • Ce que sont les dépôts. • Leur utilité. • Les types d'outils disponibles. LPIC1 / Comptia Linux+ alphorm.com™© • Les avantages et inconvénients des formats deb et rpm. FIN
  • 159. Gestion des logiciels RPM Package Manager LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum RPM Package Manager
  • 160. Plan • Introduction • Commande • Vérifier un paquet • Installer un paquet LPIC1 / Comptia Linux+ alphorm.com™© • Mettre à jour un paquet • Obtenir des informations sur un paquet • Obtenir des informations sur un fichier • Désinstaller un paquet
  • 161. Introduction • Gestionnaires de paquets rpm • créé par Red Hat en 1995 • Adopté par un grand nombre de distributions LPIC1 / Comptia Linux+ alphorm.com™© RHEL, Fedora & CentOS Mandriva, Mageia & PCLinuxOS SLES, SLED & OpenSuse MeeGo etc …
  • 162. Commande • Permet de : construire installer $ rpm [options] LPIC1 / Comptia Linux+ alphorm.com™© installer interroger vérifier mettre à jour désinstaller
  • 163. Vérifier un paquet • Vérifie la correspondance entre les métadonnées de la base et les fichiers du paquet taille $ rpm -V paquet • Options -p : indiquer un fichier rpm au lieu d'un nom de la base LPIC1 / Comptia Linux+ alphorm.com™© taille md5 permissions type propriétaire
  • 164. Installer un paquet • Options supplémentaires : -v : mode verbeux • -vv : mode debug $ rpm -i monpaquet.rpm LPIC1 / Comptia Linux+ alphorm.com™© -vv : mode debug -h : afficher une "barre de progression" --test : effectuer un simple test et afficher les conflits éventuels • N'installe pas la paquet
  • 165. Mettre à jour un paquet • Identique à une installation hormis que toutes les versions ultérieures du paquets seront supprimées $ rpm -U monpaquet.rpm LPIC1 / Comptia Linux+ alphorm.com™© hormis que toutes les versions ultérieures du paquets seront supprimées
  • 166. Obtenir des informations sur un paquet • Options -p : indiquer un fichier rpm au lieu d'un nom de la base -l : lister les fichiers du paquet $ rpm -qi paquet LPIC1 / Comptia Linux+ alphorm.com™© -l : lister les fichiers du paquet • -s : afficher l'état (normal/non installed/replaced) de chaque fichier -d : lister les fichiers de documentation -c : lister les fichiers de configuration
  • 167. Obtenir des informations sur un fichier • Permet d'afficher à quel paquet correspond un fichier $ rpm -qf /chemin_du_fichier LPIC1 / Comptia Linux+ alphorm.com™©
  • 168. Désinstaller un paquet • Options -v : mode verbeux $ rpm -e paquet LPIC1 / Comptia Linux+ alphorm.com™© -v : mode verbeux • -vv : mode debug --allmatches : supprimer toutes les versions du paquet --test : simple test
  • 169. Ce qu’on a couvert • Comment utiliser le RPM Package manager pour : installer mettre à jour vérifier désinstaller LPIC1 / Comptia Linux+ alphorm.com™© désinstaller obtenir des informations FIN
  • 170. Gestion des logiciels Yum LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Yum
  • 171. Plan • Qu'est ce que Yum ? • Mise à jour • Rechercher un paquet • Informations • Rechercher un paquet • Administration LPIC1 / Comptia Linux+ alphorm.com™© • Gestion des dépendance • Installer un paquet • Désinstaller un paquet
  • 172. Qu'est ce que Yum ? • Gestionnaires de téléchargement et résolution de dépendances • Créé pour Yellow Dog Linux portage de Red Hat vers les processeurs de type Power LPIC1 / Comptia Linux+ alphorm.com™© • Par défaut sur : les distributions Red Hat (Fedora, CentOS, RHEL, etc …)
  • 173. Mise à jour • en cas de premier lancement • vérifier les mises à jour disponibles $ yum update $ yum update yum $ yum check-update LPIC1 / Comptia Linux+ alphorm.com™© • à partir d'un fichier local • mise à jour vers une version ultérieure de la distribution $ yum upgrade $ yum check-update $ yum localupdate paquet.rpm
  • 174. Rechercher un paquet $ yum search Mot_clé LPIC1 / Comptia Linux+ alphorm.com™© $ yum search Mot_clé
  • 175. • équivalent à rpm –qi • version installée et disponibilité de mises à jour Informations $ yum info Paquet $ yum list Paquet LPIC1 / Comptia Linux+ alphorm.com™© • afficher la liste des paquets fournissant une fonctionnalité ou un fichier $ yum provides fonctionnalité $ yum provides fichier
  • 176. • afficher les paquets permettant de résoudre une dépendance donnée • afficher les dépendances d'un paquet donné Gestion des dépendance $ yum resolvdep Paquet LPIC1 / Comptia Linux+ alphorm.com™© $ yum deplist Paquet
  • 177. Installer un paquet $ yum install Paquet LPIC1 / Comptia Linux+ alphorm.com™© $ yum localinstall Paquet.rpm
  • 178. Désinstaller un paquet $ yum remove Paquet $ yum erase Paquet LPIC1 / Comptia Linux+ alphorm.com™© $ yum erase Paquet
  • 179. • équivalent à rpm –qi • version installée et disponibilité de mises à jour Rechercher un paquet $ yum search Mot_clé LPIC1 / Comptia Linux+ alphorm.com™© $ yum list Paquet
  • 180. • nettoyer le cache permet de libérer de l'espace disque en supprimant les rpm téléchargés Options : headers, packages, metadata, dbcache, plugins, expire-cache, rpmdb, all Administration $ yum clean option LPIC1 / Comptia Linux+ alphorm.com™© rpmdb, all • Shell mode $ yum shell
  • 181. Ce qu’on a couvert • Comment utiliser Yum pour : installer mettre à jour rechercher et s'informer désinstaller LPIC1 / Comptia Linux+ alphorm.com™© désinstaller FIN
  • 182. Gestion des logiciels configuration de Yum LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum configuration de Yum
  • 183. Plan • Introduction • Options de base • Modifier les dépôts • Gestion des priorités LPIC1 / Comptia Linux+ alphorm.com™© • Ajout de dépôt via rpm
  • 184. Introduction • Configuration par défaut : habituellement suffisante • Modifier les options de base Ajouter des dépôts : LPIC1 / Comptia Linux+ alphorm.com™© • Ajouter des dépôts : non officiels plus adaptés à votre usage offrant des programmes spécifiques personnel
  • 185. Options de base • /etc/yum.conf [main] cachedir=/var/cache/yum/$basearch/$releasever keepcache=0 debuglevel=2 logfile=/var/log/yum.log exactarch=1 obsoletes=1 LPIC1 / Comptia Linux+ alphorm.com™© obsoletes=1 gpgcheck=1 plugins=1 installonly_limit=3 [comments abridged] # PUT YOUR REPOS HERE OR IN separate files named file.repo # in /etc/yum.repos.d
  • 186. • configurer le niveau de verbosité (entre 0 et 10) • exclure des paquets de l'installation et de la mise à jour Options de base (2) debuglevel=2 exclude=package_name [more_package_names] LPIC1 / Comptia Linux+ alphorm.com™© • activer / désactiver la vérification des signatures GPG (0 ou 1) • nombre d'essais avant de retourner une erreur (0 ou plus) gpgcheck=0 retries=0
  • 187. • nombre maximum de version différentes d'un paquets installés 1 ou plus attention : cela comprend aussi le nombre de Kernel Prendre en compte le type d'architecture lors des maj (0 ou 1) Options de base (3) installonly_limit=value LPIC1 / Comptia Linux+ alphorm.com™© • Prendre en compte le type d'architecture lors des maj (0 ou 1) • exclure des paquets de l'installation et de la mise à jour ne met à jour le paquet que si un paquet plus récent pour la même architecture (ex i386) est disponible exactarch=1
  • 188. • /etc/yum.repos.d/ Modifier les dépôts [NomDUneEntrée] name=Fedora $releasever - $basearch mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo =fedora-$releasever&arch=$basearch gpgcheck=1 LPIC1 / Comptia Linux+ alphorm.com™© gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora enabled=1
  • 189. Gestion des priorités • /etc/yum/pluginconf.d/priorities.conf # yum install yum-priorities [main] enabled=1 LPIC1 / Comptia Linux+ alphorm.com™© • Pour chaque dépôt, dans les fichier repos enabled=1 priority=1
  • 190. Ajout de dépôt via rpm • Télécharger le paquet • Importer la clé GPG • Vérifier le checksum du paquet $ wget http://packages.sw.be/rpmforge-release/rpmforge-release- 0.5.3-1.el6.rf.i386.rpm $ rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG- KEY.dag.txt LPIC1 / Comptia Linux+ alphorm.com™© • Vérifier le checksum du paquet • Installer la paquet et tout mettre à jour $ rpm -K rpmforge-release-0.5.1-1.el5.rf.i386.rpm # rpm -i rpmforge-release-0.5.1-1.el5.rf.i386.rpm # yum check-update
  • 191. Ce qu’on a couvert • Comment configurer Yum LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 192. Gestion des logiciels dpkg LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum dpkg
  • 193. Plan • Introduction • La commande dpkg • Installer un paquet • Obtenir des informations sur un paquet LPIC1 / Comptia Linux+ alphorm.com™© • Obtenir des informations sur un fichier • Désinstaller un paquet • Administration
  • 194. Introduction • Gestionnaires de paquets deb • créé par Ian Jackson en 1993 un des premiers systèmes de gestion de paquets moderne complet inspira RPM, le simplifiant LPIC1 / Comptia Linux+ alphorm.com™© inspira RPM, le simplifiant • Adopté par Debian et la plupart de ses dérivés Ubuntu, Linux Mint … Knoppix, Damn Small Linux … CrunchBang Linux, etc …
  • 195. La commande dpkg • Permet de : construire installer $ dpkg [options] action LPIC1 / Comptia Linux+ alphorm.com™© installer interroger vérifier mettre à jour désinstaller
  • 196. Installer un paquet • Options supplémentaires : -R : mode récursif • indiquer un répertoire au lieu d'un paquet $ dpkg -i monpaquet.rpm LPIC1 / Comptia Linux+ alphorm.com™© indiquer un répertoire au lieu d'un paquet --ignore-depends=package : ignorer les informations de dépendances du paquet -G : ne pas installer si une version plus récente du paquet est déjà installée -E : ne pas installer si la même version du paquet est déjà installée --no-act : simple test
  • 197. Obtenir des informations sur un paquet • Si le paquet est installé $ dpkg -p paquet LPIC1 / Comptia Linux+ alphorm.com™© • Si le paquet n'est pas installé $ dpkg -I paquet.rpm
  • 198. Obtenir des informations sur un fichier • Afficher à quel paquet(s) correspond(ent) un (ou plusieurs) fichier(s) $ dpkg –S pattern LPIC1 / Comptia Linux+ alphorm.com™© • Lister les fichiers associés à un paquet $ dpkg –S pattern $ dpkg –L paquet
  • 199. Désinstaller un paquet • En conservant les fichiers de configuration Options : • --ignore-depends et --no-act (cf installation) $ dpkg -r paquet LPIC1 / Comptia Linux+ alphorm.com™© • -B : déconfiguration automatique des paquets dépendant de celui-ci • En supprimant les fichiers de configuration $ dpkg -P paquet
  • 200. Administration • Relancer le script de post-installation d'un paquet • Lister tout les paquets correspondant à un expression $ dpkg --configure paquet LPIC1 / Comptia Linux+ alphorm.com™© • Lister tout les paquets correspondant à un expression • Chercher les paquets partiellement installés $ dpkg -l pattern $ dpkg -C
  • 201. Ce qu’on a couvert • Comment utiliser dpkg pour : installer mettre à jour vérifier désinstaller LPIC1 / Comptia Linux+ alphorm.com™© désinstaller obtenir des informations FIN
  • 202. Commandes GNU & Unix APT-CACHE LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum APT-CACHE
  • 203. Plan • Introduction à APT • apt-cache • Informations sur un paquet • Statistiques LPIC1 / Comptia Linux+ alphorm.com™© • Gestion des dépendances • Rechercher des paquets
  • 204. Introduction à APT • Advanced Packaging Tool gestionnaire de paquet, téléchargement et résolution de dépendances interface à dpkg bibliothèque de fonctions utilisée par plusieurs programmes • apt-get, apt-cache, aptitude, etc … LPIC1 / Comptia Linux+ alphorm.com™© • A l'origine uniquement destiné aux paquets deb aujourd'hui compatible rpm • grâce à apt-rpm utilisé par le projet Fink • porter les applications Unix vers Mac OS X
  • 205. apt-cache • Manipulation du cache de paquets aucune manipulation du système recherche dans les métadonnées $ apt-cache [options] action LPIC1 / Comptia Linux+ alphorm.com™©
  • 206. Informations sur un paquet $ apt-cache showpkg paquet LPIC1 / Comptia Linux+ alphorm.com™©
  • 207. Statistiques $ apt-cache stats LPIC1 / Comptia Linux+ alphorm.com™©
  • 208. Gestion des dépendances • Trouver les dépendances insatisfaites • Afficher les dépendances d'un paquet $ apt-cache unmet LPIC1 / Comptia Linux+ alphorm.com™© $ apt-cache depends paquet
  • 209. Rechercher des paquets • Paquets installés • Dans les dépôts $ apt-cache pkgnames [expression] LPIC1 / Comptia Linux+ alphorm.com™© $ apt-cache search [expression]
  • 210. Ce qu’on a couvert • Comment utiliser apt-cache pour recueillir des informations sur mes paquets LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 211. Commandes GNU & Unix apt-get LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum apt-get
  • 212. Plan • Administration • Installation et désinstallation • Mise à jour • Options LPIC1 / Comptia Linux+ alphorm.com™©
  • 213. Administration • Mettre à jour les informations sur les dépôts • recherche de dépendances défectueuses $ apt-get update LPIC1 / Comptia Linux+ alphorm.com™© met à jour le cache des paquets • nettoyer le référentiel local des paquets récupérés $ apt-get check $ apt-get clean
  • 214. Installation et désinstallation • Installer • Désinstaller $ apt-get install package $ apt-get remove package LPIC1 / Comptia Linux+ alphorm.com™© • Récuper un paquet source $ apt-get source package
  • 215. Mise à jour • Mettre à jour tout les packages installés • Avec système intelligent de résolution de conflits $ apt-get upgrade LPIC1 / Comptia Linux+ alphorm.com™© prend en compte les changement de dépendances gère un système de priorités $ apt-get dist-upgrade
  • 216. Options Option Action(s) Description -d upgrade, dselect-upgrade, install, source téléchargement sans installation -f install, remove répare les dépendances insatisfaites -m upgrade, dselect-upgrade, ignorer les packages LPIC1 / Comptia Linux+ alphorm.com™© -m upgrade, dselect-upgrade, install, remove, source ignorer les packages inaccessibles -q / -qq toutes mode silencieux -s toutes simulation -y toutes répondre "yes" à tout prompt -b source compiler après récupération --no-upgrade install ne pas mettre à jour
  • 217. Ce qu’on a couvert • Comment utiliser apt-get pour : installer désinstaller mettre à jour LPIC1 / Comptia Linux+ alphorm.com™© • Les options indispensables de apt-get. FIN
  • 218. Gestion des logiciels configuration de APT LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum configuration de APT
  • 219. Plan • Introduction • Fichier sources.list : exemple • Adresse • Distribution LPIC1 / Comptia Linux+ alphorm.com™© • Sections
  • 220. Introduction • Configuration par défaut : habituellement suffisante • Modifier les options de base Ajouter des dépôts : LPIC1 / Comptia Linux+ alphorm.com™© • Ajouter des dépôts : non officiels plus adaptés à votre usage offrant des programmes spécifiques personnel
  • 221. • /etc/apt/sources.list Fichier sources.list : exemple deb http://fr.archive.ubuntu.com/ubuntu/ precise main restricted deb http://security.ubuntu.com/ubuntu precise-security main restricted deb http://fr.archive.ubuntu.com/ubuntu/ precise-updates main restricted LPIC1 / Comptia Linux+ alphorm.com™© # Dépôts de sources (uniquement utiles pour télécharger les sources avec apt-get source. Dans ce cas, enlever les #) # deb-src http://fr.archive.ubuntu.com/ubuntu/ precise main restricted # deb-src http://security.ubuntu.com/ubuntu precise-security main restricted # deb-src http://fr.archive.ubuntu.com/ubuntu/ precise-updates main restricted
  • 222. • Exemple : bloc 1 : deb : paquets d'installation Adresse deb http://fr.archive.ubuntu.com/ubuntu/ precise main restricted LPIC1 / Comptia Linux+ alphorm.com™© • deb : paquets d'installation • deb-src : paquets source (apt-get source) bloc 2 : URL
  • 223. • Exemple : bloc 3 : distribution • nom de code Ubuntu : quantal (12.10), precise (12.04), lucid (10.04) … Distribution deb http://fr.archive.ubuntu.com/ubuntu/ precise main restricted LPIC1 / Comptia Linux+ alphorm.com™© - Ubuntu : quantal (12.10), precise (12.04), lucid (10.04) … - Debian : lenny, squeeze, Wheezy, sid • catégorie de version - oldstable, stable, testing, unstable
  • 224. Champs 4 : sections du dépôt Sections deb http://fr.archive.ubuntu.com/ubuntu/ precise main restricted Ubuntu Maintenus par l'équipe d'Ubuntu Maintenus par les utilisateurs d'Ubuntu Logiciels libres main universe Logiciels non-libres ou possiblement non-libres restricted multiverse LPIC1 / Comptia Linux+ alphorm.com™© Debian • main : paquets principaux de Debian • non-free : paquets non libres • contrib : paquets dépendant de paquets ne respectant pas la Debian Policy possiblement non-libres restricted multiverse
  • 225. Ce qu’on a couvert • Comment configurer les dépots APT LPIC1 / Comptia Linux+ alphorm.com™© FIN
  • 226. Configuration du matériel LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum matériel Introduction
  • 227. Plan • Un peu de théorie • Qu'est ce que le BIOS ? • IRQs • Ports d'E/S LPIC1 / Comptia Linux+ alphorm.com™© • Adresses DMA
  • 228. Un peu de théorie • Générale • Nécessaire pour comprendre ce chapitre LPIC1 / Comptia Linux+ alphorm.com™©
  • 229. Qu'est ce que le BIOS ? • Basic Input Output System firmware dans la ROM de la carte mère • EEPROM (electronically erasable programmable read-only memory) • ie. mémoire flash LPIC1 / Comptia Linux+ alphorm.com™© • ie. mémoire flash permet le démarrage du système • Historiquement également destiné à gérer les E/S offre des informations au kernel sur le matériel
  • 230. IRQs • Interruptions matérielles déclenchées par les périphériques afin de prendre la main sur le processeur • suspend le travail en cours exemple : entrée clavier LPIC1 / Comptia Linux+ alphorm.com™© exemple : entrée clavier • chaque périphérique dispose d'un numéro d'interruption gérées par le contrôleur d'IRQ x86 : de 0 à 15 (plus pour les x86_64) permet de définir les priorités
  • 231. Ports d'E/S • espace mémoire fixe et unique allouée à un périphérique permettant la communication entre le CPU et le périphériques LPIC1 / Comptia Linux+ alphorm.com™© • Exemple : le port d'E/S du port série un (COM1 sous windows, /dev/ttyS0 sous Linux) est 0x03f8
  • 232. Adresses DMA • Direct Memory Access système d’accès direct à la mémoire par les périphériques afin d’en disposer comme d’une zone de tampon • Espace unique LPIC1 / Comptia Linux+ alphorm.com™© • Espace unique permet d'alléger la charge système en évitant tout mécanisme de pooling
  • 233. Ce qu’on a couvert • Quelques prérequis théoriques nécessaires pour la configuration matérielle sous Linux LPIC1 / Comptia Linux+ alphorm.com™©
  • 234. Configuration du matériel LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum matériel procfs
  • 235. Plan • Introduction • Objectif • Alimentation processeur(s) • Processeur(s) • IRQs • Mémoire • Kernel LPIC1 / Comptia Linux+ alphorm.com™© zones thermiques • BUS USB PCI • Informations générales
  • 236. Introduction • système de fichier virtuel • destiné à la gestion des processus • initié par Tom J. Killian pour Unix 8th edition LPIC1 / Comptia Linux+ alphorm.com™© • procsys : adaptation pour plan 9 donna presque tout les dérivés actuels : BSD, Solaris et Linux
  • 237. Objectif • Récupérer (voir modifier) des informations sur : les processus • répertoires nommés d'après le PID de chaque processus le matériel LPIC1 / Comptia Linux+ alphorm.com™© le matériel ainsi que des informations générales sur le système • Nous reviendrons sur le premier point dans une vidéo ultérieure
  • 238. Alimentation • Répertoire ACPI ou APM (pour les plus anciens) • obsolète depuis le kernel 2.6.36 : remplacement par sysfs Fichiers LPIC1 / Comptia Linux+ alphorm.com™© • Fichiers info : informations générales sleep : étâts de sommeil du système button : interrupteurs etc …
  • 239. Alimentation : le processeur • répertoire /proc/acpi/processor un répertoire par processeur • info : possibilités d'économie d'énergie power : état courant du processeur LPIC1 / Comptia Linux+ alphorm.com™© • power : état courant du processeur • etc …
  • 240. Alimentation : zones thermiques • répertoire /proc/acpi/thermal_zone un répertoire par zone thermique • temperature : température actuelle • state : état actuel (ok ou refroidissement "active" ou "passive") • cooling_mode : activer le refroidissement actif ou passif LPIC1 / Comptia Linux+ alphorm.com™© • cooling_mode : activer le refroidissement actif ou passif • trip_points : limites de température - activation du mode actif, suspension ("hot") et arrêt immédiat ("critical") • souvent contrôlé par le BIOS, et non l'ACPI peu de possibilités d'intervention (ex : pour les ventilateurs et le fichier state)
  • 241. BUS • /proc/bus/ • un répertoire par type de bus USB LPIC1 / Comptia Linux+ alphorm.com™© PCI Pnp
  • 242. USB • /proc/bus/usb/ • un répertoire par bus exemple : 001 permettant de retrouver les fichiers correspondants aux périphériques LPIC1 / Comptia Linux+ alphorm.com™© • Fichiers à la racine du répertoire : devices : contrôleur usb drivers
  • 243. PCI • /proc/bus/pci/ • fichiers difficiles d'interprétation • Utiliser la commande suivante : LPIC1 / Comptia Linux+ alphorm.com™© utilise /proc/bus/pci/devices liste les périphériques PCI IRQs et Ports d'E/S vus par le contrôleur PCI (non le kernel) • permet de vérifier les conflits $ lspci -vb
  • 244. Processeur(s) • /proc/cpuinfo • fichiers difficiles d'interprétation • Utiliser la commande suivante : LPIC1 / Comptia Linux+ alphorm.com™© utilise /proc/bus/pci/devices liste les périphériques PCI IRQs et Ports d'E/S vus par le contrôleur PCI (non le kernel) • permet de vérifier les conflits $ lspci -vb
  • 245. • /proc/cpuinfo Processeur(s) processor : 0 model name : Intel(R) Pentium(R) 4 CPU 2.80GHz cache size : 1024 KB physical id : 0 siblings : 2 core id : 0 LPIC1 / Comptia Linux+ alphorm.com™© core id : 0 cpu cores : 1 processor : 1 model name : Intel(R) Pentium(R) 4 CPU 2.80GHz cache size : 1024 KB physical id : 0 siblings : 2 core id : 0 cpu cores : 1
  • 246. • /proc/interrupts IRQs CPU0 CPU1 0: 1366814704 0 XT-PIC timer 1: 128 340 IO-APIC-edge keyboard 2: 0 0 XT-PIC cascade 8: 0 1 IO-APIC-edge rtc 12: 5323 5793 IO-APIC-edge PS/2 Mouse 13: 1 0 XT-PIC fpu LPIC1 / Comptia Linux+ alphorm.com™© 13: 1 0 XT-PIC fpu 16: 11184294 15940594 IO-APIC-level Intel EtherExpress Pro 10/100 Ethernet 20: 8450043 11120093 IO-APIC-level megaraid 30: 10432 10722 IO-APIC-level aic7xxx 31: 23 22 IO-APIC-level aic7xxx NMI: 0 ERR: 0 IRQs nombre d'interruptions type périphérique
  • 247. Mémoire • /proc/kcore "alias" vers la mémoire vive • /proc/meminfo état courant de la mémoire LPIC1 / Comptia Linux+ alphorm.com™© • résumé par disque de l'utilisation de la swap • quantitiés totales de mémoire & swap libres et utilisées $ swapon -s $ free
  • 248. Kernel • /proc/sys/ paramètres du kernel au lancement modifiables via • /proc/modules : modules noyaux chargés en mémoire $ sysctl LPIC1 / Comptia Linux+ alphorm.com™© • /proc/modules : modules noyaux chargés en mémoire • /proc/kmsg : tampon des messages kernel $ lsmod $ dmesg
  • 249. Informations générales • /proc/version & /proc/sys/kernel/version version du système • /proc/loadavg $ uname -a LPIC1 / Comptia Linux+ alphorm.com™© • /proc/loadavg temps de fonctionnement du système $ uptime
  • 250. Ce qu’on a couvert • Ce qu'est le répertoire /proc. • Comment utiliser procfs pour obtenir des informations systèmes. LPIC1 / Comptia Linux+ alphorm.com™© • Les commandes essentielles utilisant procfs.
  • 251. Configuration du matériel LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum matériel Sysfs
  • 252. Plan • Introduction • Historique • Dossiers LPIC1 / Comptia Linux+ alphorm.com™©
  • 253. Introduction • système de fichier virtuel basé sur ramfs • Permet : de récolter des informations sur le hardware remplaçant de dossiers "superflus" procfs LPIC1 / Comptia Linux+ alphorm.com™© • remplaçant de dossiers "superflus" procfs de configurer certaines fonctionnalités du kernel • un fichier par valeur ex : le fichier ro pour les périphériques de type block ex : le fichier address pour les périphériques réseau
  • 254. Historique • Créé sous l'insistance de Linus Torvalds pour Linux 2.5 pour debugger le nouveau modèle de pilote Avant : LPIC1 / Comptia Linux+ alphorm.com™© • Avant : aucune méthode de représentation unifiée des relations pilote/périphérique pas de mécanisme générique de hotplug procfs encombré (pas seulement processus)
  • 255. • /sys/devices/ couche physique relations parent / enfant complexe Devices LPIC1 / Comptia Linux+ alphorm.com™© • les autres dossiers contiennes des liens symboliques vers les dossiers de /sys/devices/
  • 256. • /sys/bus/ différents buses (usb, pci, etc …) • /sys/class/ le plus pratique Bus & Class LPIC1 / Comptia Linux+ alphorm.com™© le plus pratique par types • ex : imprimantes, son, usb, réseaux …
  • 257. • /sys/block/ : périphériques de type block • /sys/module/ : modules du kernel Autres dossiers LPIC1 / Comptia Linux+ alphorm.com™© • /sys/power/ : gestion de l'état d'activation de certains périphériques
  • 258. Ce qu’on a couvert • A quoi correspond le dossier /sys/ • Pourquoi et comment l'utiliser. LPIC1 / Comptia Linux+ alphorm.com™© • Sa structure.
  • 259. Configuration du matériel LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum matériel udev
  • 260. Plan • Introduction • Historique • Pseudo-périphériques • Réseau LPIC1 / Comptia Linux+ alphorm.com™© • Block • Configuration
  • 261. Introduction • fait le lien entre sysfs et les informations données par l'utilisateur • pour permettre l'accès aux périphériques LPIC1 / Comptia Linux+ alphorm.com™© de manière simple via des fichiers, ou "nodes" • Exemple : le serveur graphique accède à la souris via /dev/input/mice
  • 262. Historique • à l'origine, fichiers inscrits en dur puis devfs • système de fichier virtuel, mais statique • création de udev LPIC1 / Comptia Linux+ alphorm.com™© • création de udev depuis Linux 2.6.13 ( août 2005) pour répondre aux problématiques du hotplug ne représenter que les périphériques réellement présents
  • 263. • /dev/null • /dev/zero Pseudo-périphériques LPIC1 / Comptia Linux+ alphorm.com™© • /dev/full • /dev/random & /dev/urandom
  • 264. • Sous Linux, pas de nœud particulier Toujours créés par udev, mais directement pour les logiciels habituellement : eth[012…] Consistent Network Device Naming Réseau LPIC1 / Comptia Linux+ alphorm.com™© • Consistent Network Device Naming depuis Fedora 15 em[123…] : interfaces embarquées p<slot>p<port> : interfaces sur carte PCI
  • 265. • /dev/fd[abc…] • /dev/hd[abc…] • /dev/sd[abc…] Block LPIC1 / Comptia Linux+ alphorm.com™© • /dev/st, ht, nst • /dev/sr[012…] • /dev/loop[012…]
  • 266. • /etc/udev Configuration LPIC1 / Comptia Linux+ alphorm.com™© • /etc/udev/rules.d
  • 267. Ce qu’on a couvert • Ce qu'est le répertoire /dev. • Son fonctionnement. • Pourquoi et comment l'utiliser. • Quelques exemple de "nodes". LPIC1 / Comptia Linux+ alphorm.com™© • Ses fichiers de configuration.
  • 268. Configuration du matériel LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum matériel Introduction au Kernel
  • 269. Plan • La naissance • L'essor • Qu'est ce qu'un kernel ? • Espace utilisateur et espace noyau LPIC1 / Comptia Linux+ alphorm.com™© • Un noyau monolithique • Un noyau modulaire
  • 270. La naissance • à l'origine Linux Torvalds, 22ans, Finlandais, Université d'Helsinsky simple émulateur de terminal dans un but ludique LPIC1 / Comptia Linux+ alphorm.com™© • 5 oct 1991 : annonce sur Usenet comp.os.minix rapide engouement cf. la cathédrale et le basar de Eric Raymond
  • 271. L'essor • mars 1994 : version 1.0 • juillet 1996 : version 2.0 licence GPL 2000 : Open Source Development Labs LPIC1 / Comptia Linux+ alphorm.com™© • 2000 : Open Source Development Labs • janvier 2007 : Fondation Linux • février 2013 : version 3.8
  • 272. Qu'est ce qu'un kernel ? • offre une abstraction matérielle pour les logiciels • gestion des processus LPIC1 / Comptia Linux+ alphorm.com™© • partie la plus critique de l'OS rôle central
  • 273. Espace utilisateur et espace noyau • partitionnement virtuel de la RAM protection pour l'espace utilisateur • limiter les droits des services et applications LPIC1 / Comptia Linux+ alphorm.com™© • limiter les droits des services et applications éviter les accidents et failles de sécurité • appels système
  • 274. Un noyau monolithique • fort débat avec Andrex S Tanenbaum • avantages concept simple : facilité la conception bonne vitesse d'exécution LPIC1 / Comptia Linux+ alphorm.com™© bonne vitesse d'exécution • défauts difficulté de maintenance volume (cf. hotplug)
  • 275. Un noyau modulaire • depuis la version 1.2 mars 1995 séparation de certaines fonctionnalité du "bloc" monolithique LPIC1 / Comptia Linux+ alphorm.com™© • séparation de certaines fonctionnalité du "bloc" monolithique chargement à la demande simplification, allègement ex : drivers, systèmes de fichier
  • 276. Ce qu’on a couvert • L'histoire du noyau Linux. • Sa structure. LPIC1 / Comptia Linux+ alphorm.com™© • Son rôle.
  • 277. Configuration du matériel LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum matériel kernel modules
  • 278. Plan • Introduction • afficher les modules actuellement chargés • Charger un module • Décharger un module LPIC1 / Comptia Linux+ alphorm.com™©
  • 279. Introduction • la plupart des drivers sont incorporés comme des modules ainsi que d'autres fonctionnalités, comme les systèmes de fichier mais certains peuvent avoir été intégrés au noyau LPIC1 / Comptia Linux+ alphorm.com™© • mais certains peuvent avoir été intégrés au noyau d'où certaines différences suivant les installations • /lib/modules
  • 280. afficher les modules actuellement chargés $ lsmod Module Size Used by isofs 35820 0 zlib_inflate 21888 1 isofs floppy 65200 0 nls_iso8859_1 5568 1 LPIC1 / Comptia Linux+ alphorm.com™© nls_iso8859_1 5568 1 nls_cp437 7296 1 vfat 15680 1 fat 49536 1 vfat sr_mod 19236 0 ide_cd 42848 0 cdrom 39080 2 sr_mod,ide_cd nom taille nombre et noms des modules l'utilisant
  • 281. Charger un module • charge un seul et unique module • nécessite d'avoir chargé les modules dont il dépend # insmode chemin_vers_le_module LPIC1 / Comptia Linux+ alphorm.com™© • nécessite d'avoir chargé les modules dont il dépend • Exemple : # insmod /lib/modules/2.6.26/kernel/drivers/block/floppy.ko
  • 282. Charger un module (2) • Options : -v : verbose -C fichier : changer de fichier de configuration # modprobe nom_du_module LPIC1 / Comptia Linux+ alphorm.com™© -C fichier : changer de fichier de configuration • /etc/modprobe.conf par défaut -n : test -r : décharger un module -- show-depends -l : lister les modules disponibles
  • 283. Décharger un module • Permet de libérer de la mémoire • Options : # rmmod nom_du_module LPIC1 / Comptia Linux+ alphorm.com™© • Options : -v : verbose -f : force -w : wait
  • 284. Ce qu’on a couvert • La gestion du chargement et déchargement manuel des modules Linux. LPIC1 / Comptia Linux+ alphorm.com™©
  • 285. Configuration du matériel LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum matériel Les disques durs
  • 286. Plan • Qu'est ce qu'un disque dur ? • Les différents types • PATA • SATA LPIC1 / Comptia Linux+ alphorm.com™© • SCSI • Disques externes
  • 287. Qu'est ce qu'un disque dur ? • mémoire de masse magnétique mécanique • système très ancien 1956 : 305 RAMAC d'IBM – 5Mo – 24" – 50 000 $ soit env. 300 000€ de 2013 2011 : Hitachi 7K4000 – 4Go – 3,5" – env. 200€ en 2013 LPIC1 / Comptia Linux+ alphorm.com™© 2011 : Hitachi 7K4000 – 4Go – 3,5" – env. 200€ en 2013 • Petit à petit concurrencé par les mémoires électroniques cartes SD & "disques" SSD plus efficaces mais plus chers
  • 288. Les différents types • IDE : Integrated Drive Electronics PATA : Parallel Advanced Technology Attachment LPIC1 / Comptia Linux+ alphorm.com™© • SATA : Serial Advanced Technology Attachment • SCSI : Small Computer System Interface SAS : Serial Attached SCSI
  • 289. PATA • quasi disparu depuis 2005 • peu pratique LPIC1 / Comptia Linux+ alphorm.com™© • faibles performances • normalement /dev/hdx mais souvent reconnus comme du SCSI par Linux
  • 290. SATA • apparu en 2003 • a largement remplacé le PATA branchement à chaud meilleurs performances meilleur cablage LPIC1 / Comptia Linux+ alphorm.com™© meilleur cablage • pas de nommage spécifique souvent comme du SCSI parfois comme du PATA
  • 291. SCSI • standard de bus très large disques mais aussi imprimantes, scanners, etc … • SAS : Serial Attached SCSI mode de transmission en série du SATA + SCSI Plus orienté pro LPIC1 / Comptia Linux+ alphorm.com™© • Plus orienté pro • /dev/sdx de nos jours représente la plupart des disques durs, dits "pseudo-scsi"
  • 292. Disques externes • USB • IEEE-1394 LPIC1 / Comptia Linux+ alphorm.com™© dit Firewire par Apple ou i.Link par Sony • e-SATA • SCSI
  • 293. Ce qu’on a couvert • Ce qu'est un disques dur. • Les différents types de disques durs. LPIC1 / Comptia Linux+ alphorm.com™© • Leur gestion par Linux.
  • 294. Configuration du matériel LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum matériel Partitionning
  • 295. Plan • Qu'est ce que c'est ? • Pourquoi ? • Comment ? • Et les autres formats de table ? LPIC1 / Comptia Linux+ alphorm.com™© • Adressage • Codes de partition
  • 296. Qu'est ce que c'est ? • Permet de scinder un disque en plusieurs parties • Sous Windows, donne l'illusion d'avoir plusieurs disques à partir d'un seul LPIC1 / Comptia Linux+ alphorm.com™© seul • Sous linux, simplement désignées par un chiffre après le nom du disque ex : /dev/sda1
  • 297. Pourquoi ? • Multi-OS • varier les systèmes de fichier • Gestion de l'espace LPIC1 / Comptia Linux+ alphorm.com™© • Protection pour la corruption • Sécurité – cf. mount & fstab • Sauvegarde
  • 298. Comment ? • traditionnellement (x86 – Intel MBR) • Une table de partition principale (de 1 à 4) dans le MBR LPIC1 / Comptia Linux+ alphorm.com™© indique les partitions primaire (4 max) • Plus une table par partition étendue (à partir de 5) dans le EBR permet de créer des partitions logiques
  • 299. Et les autres formats de table ? • Fonctionnent globalement de la même manière peuvent nécessiter des outils différents pas dans le cadre de ce cours, hormis fdisk (cf gdisk) et GRUB1 (patch) LPIC1 / Comptia Linux+ alphorm.com™© • Power-PC : Apple Partition Map • x86-64 avec UEFI et Max x86 : GUID Partition Table encore expérimental, mais parfaitement supporté par Linux depuis un moment
  • 300. Adressage • CHS : Cylinder/Head/Sector ECHS LBA (Logical block addressing) LPIC1 / Comptia Linux+ alphorm.com™© • LBA (Logical block addressing) introduit par la norme SCSI en 1994
  • 301. Codes de partition • 2 chiffres Hexadécimaux • indiquent un format / des fonctions spécifiques 0x06 FAT 0x82 Linux Swap 0x83 Linux FS LPIC1 / Comptia Linux+ alphorm.com™© 0x83 Linux FS • Sans grande importance pour Linux, hormis : à l'installation pour les partitions étendues
  • 302. Outils • En ligne de commande : fdisk / gdisk GNU parted cfdisk (curses) LPIC1 / Comptia Linux+ alphorm.com™© • Outils graphiques : Gparted QtParted KDE partition manager etc …
  • 303. Ce qu’on a couvert • Ce qu'est exactement le partionning. • Comment celui-ci est géré sous Linux. LPIC1 / Comptia Linux+ alphorm.com™© • Les outils que nous allons étudier.
  • 304. Configuration du matériel LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum matériel FHS
  • 305. Plan • Introduction • Avant le FHS • La naissance du FHS • Partageabilité • Données utilisateurs • Variables • Montage • FS virtuels LPIC1 / Comptia Linux+ alphorm.com™© • Statique ou variable ? • Programmes • Système
  • 306. Introduction • simplicité LPIC1 / Comptia Linux+ alphorm.com™© • cohérence
  • 307. Avant le FHS • cf histoire d'Unix nombreuses variantes = incohérences, abscense de standards • 1994 : FSSTND programmes = /bin ou /usr/bin LPIC1 / Comptia Linux+ alphorm.com™© programmes = /bin ou /usr/bin • scripting pas d'executables dans /etc pas de fichiers modifiables dans /usr • montage en ro
  • 308. La naissance du FHS • 1996 par le Free Standard Group version actuelle : 2.3 – janv. 2004 basé sur le FSSTND LPIC1 / Comptia Linux+ alphorm.com™© • basé sur le FSSTND • pas uniquement pour Linux
  • 309. Partageabilité • shareable = partageable entre ordinateurs LPIC1 / Comptia Linux+ alphorm.com™© • unshareable = informations spécifiques du système
  • 310. Statique ou variable ? • static = modifié uniquement par intervention direct de l'admin LPIC1 / Comptia Linux+ alphorm.com™© • variable = modifiable par les utilisateurs, scripts, serveurs, etc …
  • 311. Programmes • /bin • /sbin • /usr/local/bin • /usr/bin LPIC1 / Comptia Linux+ alphorm.com™© • /lib
  • 312. Système • /boot • /usr • /etc • /srv LPIC1 / Comptia Linux+ alphorm.com™© /usr/local • /opt
  • 313. Données utilisateurs • /home LPIC1 / Comptia Linux+ alphorm.com™© • /root
  • 314. Variables • /var LPIC1 / Comptia Linux+ alphorm.com™© • /tmp
  • 315. Montage • /mnt LPIC1 / Comptia Linux+ alphorm.com™© • /media
  • 316. FS virtuels • /dev LPIC1 / Comptia Linux+ alphorm.com™© • /proc
  • 317. Ce qu’on a couvert • Quel est le rôle exact des dossiers les plus importants du système. LPIC1 / Comptia Linux+ alphorm.com™©
  • 318. Configuration du matériel LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum matériel fdisk
  • 319. Plan • Introduction • La commande fdisk • Les commandes de fdisk LPIC1 / Comptia Linux+ alphorm.com™©
  • 320. Introduction • "fixed disk" • outil de partitionnement en mode texte LPIC1 / Comptia Linux+ alphorm.com™© • interactif • projet util-linux
  • 321. La commande fdisk • Options : -l : affichage des partitions # fdisk [options] [périphérique] LPIC1 / Comptia Linux+ alphorm.com™© -l : affichage des partitions • Exemple # fdisk /dev/sdb
  • 322. Les commandes de fdisk commande description d destruction d'une partition l liste des types de partitions m Impression du menu en cours n création d'une nouvelle partition LPIC1 / Comptia Linux+ alphorm.com™© p Affichage des partitions q Sortie de fdisk sans sauvegarde des paramètres t Modification du type de partition v Vérification de la table des partitions w Sauvegarde des modifications et sortie de fdisk
  • 323. Ce qu’on a couvert • Comment partitionner un périphérique avec fdisk. LPIC1 / Comptia Linux+ alphorm.com™©
  • 324. Configuration du matériel LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum matériel GNU Parted
  • 325. Plan • Introduction • La commande parted • Les commandes de parted LPIC1 / Comptia Linux+ alphorm.com™©
  • 326. Introduction • éditeur de partition • projet GNU LPIC1 / Comptia Linux+ alphorm.com™© • plus complet que fdisk
  • 327. La commande parted • Options : -l : lister les partitions # parted [options][device] LPIC1 / Comptia Linux+ alphorm.com™© -l : lister les partitions
  • 328. Les commandes de parted commande description ? afficher l'aide print afficher la table de partition courante mkpart créer une partition rm supprimer une partition LPIC1 / Comptia Linux+ alphorm.com™© move déplacer une partition resize redimensionner une partition
  • 329. Ce qu’on a couvert • Comment partitionner un disque dur avec GNU Parted. LPIC1 / Comptia Linux+ alphorm.com™©
  • 330. Configuration du matériel LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum matériel Introduction aux systèmes de fichiers
  • 331. Plan • Qu'est ce qu'un fs ? • Concepts • Les linuxiens • Les "sophistiqués" LPIC1 / Comptia Linux+ alphorm.com™© • Les autres OS • Supports optiques
  • 332. Qu'est ce qu'un fs ? • structure de donnée • accéder à et stocker des fichiers LPIC1 / Comptia Linux+ alphorm.com™© via un chemin d'accès
  • 333. Concepts • journalisation LPIC1 / Comptia Linux+ alphorm.com™© • fragmentation
  • 334. Les linuxiens • ext ext2 ext2 ext4 LPIC1 / Comptia Linux+ alphorm.com™© ext4 • btrfs • reiserfs reiser4
  • 335. Les "sophistiqués" • JFS • XFS LPIC1 / Comptia Linux+ alphorm.com™©
  • 336. Les autres OS • FAT • NTFS LPIC1 / Comptia Linux+ alphorm.com™© • HFS HFS+
  • 337. Supports optiques • Iso-9660 • Joliet LPIC1 / Comptia Linux+ alphorm.com™© • UDF
  • 338. Ce qu’on a couvert • Les différentes fs disponibles sur Linux. • Leurs avantages et inconvénients. LPIC1 / Comptia Linux+ alphorm.com™©
  • 339. Configuration du matériel LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum matériel formatage
  • 340. Plan • Introduction • Créer un système de fichier • FAT • SWAP LPIC1 / Comptia Linux+ alphorm.com™©
  • 341. Introduction • terme ambigu • bas-niveau LPIC1 / Comptia Linux+ alphorm.com™© • haut-niveau création d'un fs
  • 342. • Options : Créer un système de fichier # mkfs.fstype partition # mkfs –t fstype partition LPIC1 / Comptia Linux+ alphorm.com™© • Options : -c : recherche de secteurs défectueux -m pourcentage : pourcentage d'espace réservé • 5 par défaut
  • 343. • Options : FAT # mkfs.msdos partition # mkfs.vfat partition LPIC1 / Comptia Linux+ alphorm.com™© • Options : -F fat-size : type / taille de FAT
  • 344. • Extension de la mémoire type code 0x82 • "formatage" SWAP # mkswap partition LPIC1 / Comptia Linux+ alphorm.com™© • utilisation ou cf /etc/fstab # mkswap partition # swapon partition
  • 345. Ce qu’on a couvert • Ce qu'est le formatage. • Comment créer un système de fichier. LPIC1 / Comptia Linux+ alphorm.com™© • Comment préparer et utiliser une partition swap.
  • 346. Configuration du matériel LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum matériel Gestion de la propriété d'un fichier
  • 347. Plan • Introduction • Afficher • Modifier • Modifier le groupe LPIC1 / Comptia Linux+ alphorm.com™©
  • 348. Introduction • sécurité • un propriétaire LPIC1 / Comptia Linux+ alphorm.com™© • un groupe propriétaire
  • 349. Afficher • lister • format numérique (uid & gid) $ ls –l [fichier] LPIC1 / Comptia Linux+ alphorm.com™© • colonnes 3 et 4 $ ls –n [fichier]
  • 350. Modifier • Options -R ou --recursive # chown [options] [newowner][:newgroup] filenames LPIC1 / Comptia Linux+ alphorm.com™©
  • 351. Modifier le groupe • Options -R ou --recursive # chgrp [options] newgroup filenames LPIC1 / Comptia Linux+ alphorm.com™©
  • 352. Ce qu’on a couvert • Première partie des droits d'accès aux fichiers. • Comment afficher l'utilisateur et le groupe propriétaire d'un fichier / dossier. LPIC1 / Comptia Linux+ alphorm.com™© • Comment modifier l'utilisateur et le groupe propriétaire d'un fichier / dossier.
  • 353. Gestion des fichiers Droits d'accès POSIX LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Droits d'accès POSIX
  • 354. Plan • Introduction • Afficher • Type code • Permissions simples LPIC1 / Comptia Linux+ alphorm.com™© • Modifier les droits • SUID & SGID • Sticky bit • Représentation des droits spéciaux
  • 355. Introduction • standard Unix LPIC1 / Comptia Linux+ alphorm.com™©
  • 356. Afficher • colonne 1 ex : drwxr--r-- $ ls -l LPIC1 / Comptia Linux+ alphorm.com™©
  • 357. Type code caractère signification - fichier d répertoire l lien symbolique p pipe LPIC1 / Comptia Linux+ alphorm.com™© s socket b périphérique bloc c périphérique caractère
  • 358. Permissions simples • read – write – execute • user – group – others LPIC1 / Comptia Linux+ alphorm.com™© • 9 bits représentation octale : r = 4, w = 2, x = 1 ex : 754 = rwxr-xr--
  • 359. Modifier les droits • Mode : destinataire : u, g, o ou a +, - ou = $ chmod [mode] fichier LPIC1 / Comptia Linux+ alphorm.com™© +, - ou = droits ou écriture octale • Exemple : $ chmod u+r,g-x fichier
  • 360. SUID & SGID • Set User / Group ID • exécutables LPIC1 / Comptia Linux+ alphorm.com™© • attaques sushi
  • 361. Sticky bit • différence entre droit d'écriture et de suppression LPIC1 / Comptia Linux+ alphorm.com™©
  • 362. Représentation des droits spéciaux • rwsrwsrwt • octal suplémentaire 7777 LPIC1 / Comptia Linux+ alphorm.com™© SUID = 4, SGID = 2, Sticky bit =1 ex : 6744 = rwsr-Sr--
  • 363. Ce qu’on a couvert • Les droits d'accès aux fichiers sous les système Unix. LPIC1 / Comptia Linux+ alphorm.com™©
  • 364. Gestion des fichiers ACL LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum ACL
  • 365. Plan • Introduction • Prérequis • Fonctionnement • Afficher LPIC1 / Comptia Linux+ alphorm.com™© • Créer ou modifier • Supprimer • Masque • Hiérarchie
  • 366. Introduction • étendre les droits prosix LPIC1 / Comptia Linux+ alphorm.com™©
  • 367. Prérequis • kernel : CONFIG_FS_POSIX_ACL=y CONFIG_SystemeDeFichiers_FS_POSIX_ACL=y $ grep ACL /boot/config-* LPIC1 / Comptia Linux+ alphorm.com™© • Outils : paquet acl • Système de fichier : option de montage "acl" $ grep ACL /boot/config-*
  • 368. Fonctionnement • 3 bits de permissions • mise en place par le propriétaire LPIC1 / Comptia Linux+ alphorm.com™©
  • 369. Afficher $ getfacl fichier LPIC1 / Comptia Linux+ alphorm.com™© $ getfacl fichier
  • 370. Créer ou modifier • Options -R : récursif $ setfacl [options] -m [d:]permission[,permission...] fichier LPIC1 / Comptia Linux+ alphorm.com™© -d : héritage (directory) • Permissions préfixe:[utilisateur_ou_Groupe:]droits
  • 371. Supprimer • toutes les acls • uniquement les permissions par défaut $ setfacl -b fichier LPIC1 / Comptia Linux+ alphorm.com™© • une acl $ setfacl -k fichier $ setfacl –x acl fichier
  • 372. Masque • droit maximal • Exemple : mask:r-x pierre:rw- #effective:r-- LPIC1 / Comptia Linux+ alphorm.com™© pierre:rw- #effective:r--
  • 373. Hiérarchie masque >acl utilisateur LPIC1 / Comptia Linux+ alphorm.com™© >acl groupe >acl g:: >posix groupe propriétaire
  • 374. Ce qu’on a couvert • Comment gérer les ACL Linux. LPIC1 / Comptia Linux+ alphorm.com™©
  • 375. Gestion des fichiers umask LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum umask
  • 376. Plan • Introduction • Afficher • Modifier LPIC1 / Comptia Linux+ alphorm.com™©
  • 377. Introduction • droits par défaut fichier : 0666 – rw-rw-rw- dossier : 0777 – rwxrwxrwx LPIC1 / Comptia Linux+ alphorm.com™© • modifier ce droit par défaut par soustraction
  • 378. Afficher • format "classique" • format octal $ umask -S LPIC1 / Comptia Linux+ alphorm.com™© $ umask -p
  • 379. Modifier $ umask mode LPIC1 / Comptia Linux+ alphorm.com™©
  • 380. Ce qu’on a couvert • Comment modifier les droits par défauts à la création d'un fichier. LPIC1 / Comptia Linux+ alphorm.com™©
  • 381. Gestion des fichiers Quotas LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Quotas
  • 382. Plan • Introduction • Prérequis • Limitations • Initialiser, vérifier et mettre à jour LPIC1 / Comptia Linux+ alphorm.com™© • Afficher • Editer
  • 383. Introduction • Linux est un système multi-utilisateur donc un utilisateur peu prendre tout l'espace de stockage • Quotas utilisateurs & groupes limiter le nombre de fichiers LPIC1 / Comptia Linux+ alphorm.com™© limiter le nombre de fichiers • inodes limiter l'espace utilisé • blocs
  • 384. Prérequis • kernel CONFIG_QUOTAS=y • pour ext et reiser CONFIG_XFS_QUOTAS=y LPIC1 / Comptia Linux+ alphorm.com™© • Montage : usrqota, grpquota • Outils : paquet quota init scripts
  • 385. Limitations • deux types : hard soft période de "grâce" LPIC1 / Comptia Linux+ alphorm.com™© • période de "grâce"
  • 386. Initialiser, vérifier et mettre à jour • prérequis # quotacheck LPIC1 / Comptia Linux+ alphorm.com™© • prérequis • souvent lancé par les init scripts et con jobs
  • 387. Afficher • Options -a : all # repquota [-a] [fs] # quota [Options] LPIC1 / Comptia Linux+ alphorm.com™© -v : verbose -g : quotas de groupes -l : ignorer NFS -q : seulement les fs sur lesquels les quotas sont dépassés
  • 388. Editer • lancer l'éditeur par défaut sur /etc/quotatab fichier temporaire de configuration # edquota [-t][[-u] user] [-g groupe] LPIC1 / Comptia Linux+ alphorm.com™© • -t : éditer la période de grâce par fs seconds, minutes, hours, days
  • 389. Ce qu’on a couvert • Comment mettre en place et administer les quotas Linux. LPIC1 / Comptia Linux+ alphorm.com™©
  • 390. Gestion des fichiers find LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum find
  • 391. Plan • Introduction • Commande • Restrictions • Exécuter une action LPIC1 / Comptia Linux+ alphorm.com™© • Operateurs conditionnels
  • 392. Introduction • analyse fichier par fichier à partir d'un ou plusieurs dossiers nom, date de création, etc … LPIC1 / Comptia Linux+ alphorm.com™© • très lent • flexible et efficace
  • 393. Commande • Expression : -name pattern : par nom -perm mode : par permissions $ find [path ...] [expression ...] LPIC1 / Comptia Linux+ alphorm.com™© -size n[c|k|M|G] : par traille -gid GID ou –group name : par groupe -uid UID ou –user name : par utilisateur
  • 394. Restrictions • Restrictions : -maxdepth levels : limiter le nombre de sous-répertoires analysés -type [b|c|d|p|f|l|s] $ find [path ...] [expression ...] LPIC1 / Comptia Linux+ alphorm.com™©
  • 395. Exécuter une action • Exemples : $ find [path ...] [expression ...] –exec commande ; $ find . -type f -exec ls -l {} ; LPIC1 / Comptia Linux+ alphorm.com™© • -ok : demande confirmation $ find . -type f -ok -exec rm {} ;
  • 396. Opérateurs conditionnels • -a : ET • -o : OU $ find . ( -name '*.tex' -o -name '*.dvi' ) $ find . ( -perm –g=w -a -group root ) LPIC1 / Comptia Linux+ alphorm.com™© • ! : négation $ find . ! -user root
  • 397. Ce qu’on a couvert • Comment utiliser find pour rechercher des fichiers. LPIC1 / Comptia Linux+ alphorm.com™©
  • 398. Gestion des fichiers locate LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum locate
  • 399. Plan • Introduction • Mise à jour • Commande • Autres implémentations LPIC1 / Comptia Linux+ alphorm.com™©
  • 400. Introduction • bien moins sophistiqué que fin uniquement les noms de fichier LPIC1 / Comptia Linux+ alphorm.com™© • à partir d'une DB
  • 401. Mise à jour # updatedb LPIC1 / Comptia Linux+ alphorm.com™©
  • 402. Commande • Options : -i : ignorer la casse $ locate [options] [nom] LPIC1 / Comptia Linux+ alphorm.com™© -r regexp : utiliser une expression régulière -c : n'afficher que le nombre de fichiers correspondant
  • 403. Autres implémentations • mlocate plus moderne fonctionnement identique • slocate sécurisé LPIC1 / Comptia Linux+ alphorm.com™© sécurisé empêche les utilisateurs de voir les noms de fichiers auxquels ils n'ont pas accès • le plus souvent, locate est un lien symbolique vers un de ces programmes
  • 404. Ce qu’on a couvert • Comment rechercher un fichier avec locate. LPIC1 / Comptia Linux+ alphorm.com™©
  • 405. Gestion des fichiers Recherche et informations sur LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Recherche et informations sur une commande
  • 406. Plan • whereis • which • type LPIC1 / Comptia Linux+ alphorm.com™©
  • 407. whereis • recherche uniquement dans certains répertoires fichiers binaires librairie et headers pages man configuration LPIC1 / Comptia Linux+ alphorm.com™© configuration etc … • retrouver des exécutables et fichiers liés (documentation, configuration)
  • 408. whereis (2) • Options : -b : seulement les fichiers binaires $ whereis [-bms] filename. LPIC1 / Comptia Linux+ alphorm.com™© -m : seulement les pages man -s : seulement les sources
  • 409. which • recherche le(s) fichier(s) exécuté pour une commande dans $PATH $ which [-a] filename LPIC1 / Comptia Linux+ alphorm.com™© • Options : -a : afficher toutes les correspondances
  • 410. type • affiche comment une commande est interprétée $ type commande LPIC1 / Comptia Linux+ alphorm.com™© • Options : -a : pour toutes les corrrespondance -t : sortie raccourcie
  • 411. Ce qu’on a couvert • Obtenir des informations sur les commandes bash. LPIC1 / Comptia Linux+ alphorm.com™©
  • 412. Démarrage du système démarrage du système LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum démarrage du système
  • 413. Plan • Présentation LPIC1 / Comptia Linux+ alphorm.com™©
  • 414. Présentation LPIC1 / Comptia Linux+ alphorm.com™©
  • 415. Ce qu’on a couvert • Les différentes étapes du démarrage d'un système x86 fonctionnant avec Linux. LPIC1 / Comptia Linux+ alphorm.com™©
  • 416. Démarrage du système GRUB1 LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum GRUB1
  • 417. Plan • Introduction • Historique • Fonctionnement • Installation LPIC1 / Comptia Linux+ alphorm.com™© • Configuration • Options globales • Options par kernel image ou OS • Interaction
  • 418. Introduction • les bootloader Unix sont plus complexes que ceux de Windows qui chargent simplement le kernel • ils permettent de charger le initrd et de donner des paramètres au kernel LPIC1 / Comptia Linux+ alphorm.com™© kernel • peuvent coexister avec d'autres bootloaders • peuvent être installé sur n'importe quel support et à n'importe quel (ou presque) endroit
  • 419. Historique • Eric Boleyn – GNU/Hurd • 1999 : premier paquet LPIC1 / Comptia Linux+ alphorm.com™© • deux version très différentes
  • 420. Fonctionnement • Stages (1 - 1.5 - 2) LPIC1 / Comptia Linux+ alphorm.com™© • disques et partitions (hdX,X)
  • 421. Installation • deux formats dev : /dev/sda ou sda1 # grub-install disque_ou_partition LPIC1 / Comptia Linux+ alphorm.com™© grub : '(hd0)' ou '(hd0,0)'
  • 422. Configuration • /boot/grub/menu.lst ou grub.conf # grub.conf/menu.lst # # Global Options: # default=0 timeout=15 splashimage=/grub/bootimage.xpm.gz # # Kernel Image Options: # LPIC1 / Comptia Linux+ alphorm.com™© # title Fedora (2.6.25) root (hd0,0) kernel /vmlinuz-2.6.25 ro root=/dev/hda5 mem=2048M initrd /initrd-2.6.25 title Debian (2.6.26-experimental) root (hd0,0) kernel (hd0,0)/bzImage-2.6.26-experimental ro root=/dev/hda6 # # Other operating systems # title DOS rootnoverify (hd0,1) chainloader +1
  • 423. Options globales • default=n • timeout=n LPIC1 / Comptia Linux+ alphorm.com™© • splashimage=chemin
  • 424. Options par kernel image ou OS • title • root • kernel LPIC1 / Comptia Linux+ alphorm.com™© • initrd • rootnoverify • chainloader
  • 425. Interaction LPIC1 / Comptia Linux+ alphorm.com™©
  • 426. Ce qu’on a couvert • Les spécificités d'un chargeur d'amorçage orienté Unix. • La petite histoire de GRUB. LPIC1 / Comptia Linux+ alphorm.com™© • Comment installer GRUB1. • Comment configurer GRUB1. • Comment interagir avec GRUB1.
  • 427. Démarrage du système GRUB2 LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum GRUB2
  • 428. Plan • Introduction • Installation • Configuration • Configuration des scripts grub.d LPIC1 / Comptia Linux+ alphorm.com™© • Mise à jour
  • 429. Introduction • refonte totale • adopté rapidement et largement LPIC1 / Comptia Linux+ alphorm.com™© • nombreux avantages
  • 430. Installation • à partir de legacy • directement # update-from-grub-legacy LPIC1 / Comptia Linux+ alphorm.com™© # grub-install –recheck "(hdX)" # update-grub2
  • 431. Configuration • /etc/default/grub • /boot/grub/device.map LPIC1 / Comptia Linux+ alphorm.com™© • /etc/grub.d
  • 432. Configuration des scripts grub.d Grub Legacy Grub2 title titre menuentry "titre" { … } root (hdX,X) set root=(hdX,X) kernel linux LPIC1 / Comptia Linux+ alphorm.com™© kernel linux • Restent inchangés : initrd chainloader
  • 433. Mise à jour • mettre à jour le fichier grub.cfg • simple alias pour # update-grub LPIC1 / Comptia Linux+ alphorm.com™© # grub-mkconfig-o /boot/grub/grub.cfg
  • 434. Ce qu’on a couvert • Les différences entre Grub2 et Grub Legacy. LPIC1 / Comptia Linux+ alphorm.com™© • Comment configurer Grub2. • Comment installer Grub2.
  • 435. Démarrage du système init et les services LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum init et les services
  • 436. Plan • Rappel • Init • Services • Script system V init LPIC1 / Comptia Linux+ alphorm.com™© • Commandes
  • 437. Rappel LPIC1 / Comptia Linux+ alphorm.com™©
  • 438. Init • premier et dernier processus • plusieurs solutions : sysvinit LPIC1 / Comptia Linux+ alphorm.com™© shell upstart systemd initng runit, svscan, minit …
  • 439. Services • démon(s) exécution en arrière plan directement géré et lancé par init LPIC1 / Comptia Linux+ alphorm.com™©
  • 440. Scripts system V init • /etc/init.d ou /etc/rc.d • scripts bash • opérations : LPIC1 / Comptia Linux+ alphorm.com™© start stop restart status …
  • 441. Commandes • lancer une commande sur un script system V init • afficher le statut de tout les services $ service script commande [options] LPIC1 / Comptia Linux+ alphorm.com™© $ service --status-all
  • 442. Ce qu’on a couvert • Ce qu'est (ou peu être) init. • Le fonctionnement et la gestion de system V init. LPIC1 / Comptia Linux+ alphorm.com™©
  • 443. Démarrage du système runlevels LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum runlevels
  • 444. Plan • Introduction • Runlevels • inittab • rc LPIC1 / Comptia Linux+ alphorm.com™© • chkconfig • ntsysv • update-rc.d • Afficher et changer de runlevel
  • 445. Introduction • détermine quels services sont lancés ou stoppés dans un contexte donné lié à init LPIC1 / Comptia Linux+ alphorm.com™© • lié à init dernière étape du boot : runlevel par défaut
  • 446. Runlevels Run Level Debian Suse RedHat N amorçage 0 ARRET S mono-utilisateur au démarrage 1 mono-utilisateur commuté mono-utilisateur 2 multi-utilisateur Multi-utilisateur déconnecté … LPIC1 / Comptia Linux+ alphorm.com™© 2 multi-utilisateur déconnecté … 3 … mode connecté (réseau) multi-utilisateur en mode console 4 … … … 5 … mode-graphique (X11) 6 redémarrage 8 … 9 …
  • 447. inittab • /etc/inittab • configuration de init LPIC1 / Comptia Linux+ alphorm.com™© • id:runlevels:action:process
  • 448. rc • script /etc/init.d/rc ou /etc/rc.d/rc • gère tout les scripts init associés à un runlevel LPIC1 / Comptia Linux+ alphorm.com™© • gère tout les scripts init associés à un runlevel • dossiers : /etc/rc.d/rc?.d ou /etc/init.d/rc?.d ou /etc/rc?.d liens symboliques S : start / K : kill – Nombre = ordre
  • 449. chkconfig • Lister les associations services / runlevel • modifier le comportement d'un service pour un ou plusieurs runlevels # chkconfig --list [service] LPIC1 / Comptia Linux+ alphorm.com™© • ajouter un service # chkconfig --level [0123456] service [on/off/reset] # chkconfig --add service
  • 450. ntsysv • TUI par Red Hat $ ntsysv [--level XXX] LPIC1 / Comptia Linux+ alphorm.com™© menu des services disponibles
  • 451. update-rc.d • désactiver un service • modifier le comportement d'un service pour un ou plusieurs runlevels # update-rc.d NomService remove LPIC1 / Comptia Linux+ alphorm.com™© • ajouter un service # update-rc.d NomService start XX 2 3 4 5 . stop XX 0 1 6 . # update-rc.d NomService defaults
  • 452. Afficher et changer de runlevel • afficher le runlevel actuel • changer de runlevel $ runlevel # init [0123456Qq] LPIC1 / Comptia Linux+ alphorm.com™© • Eteindre ou redémarrer # shutdown [-rhc] time ["Warning Message"] # telinit [0123456Qq] # halt / # reboot / # poweroff
  • 453. Ce qu’on a couvert • Ce qu'est un runlevel. • Comment configurer les services d'un runlevel. LPIC1 / Comptia Linux+ alphorm.com™© • Comment afficher et changer de runlevel.
  • 454. Gestion des processus Introduction aux processus LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Introduction aux processus
  • 455. Plan • Introduction • Etats standards • Etats particuliers • Hiérarchie LPIC1 / Comptia Linux+ alphorm.com™©
  • 456. Introduction • programme en cours d'exécution plusieurs états cf. ordonnancement, multitâche, etc … LPIC1 / Comptia Linux+ alphorm.com™© • lancé par une commande (utilisateur) ou un autre processus • identifié par un PID unique
  • 457. Etats standards LPIC1 / Comptia Linux+ alphorm.com™©
  • 458. Etats particuliers LPIC1 / Comptia Linux+ alphorm.com™©
  • 459. Hiérarchie • chaque processus a un "père" • rappel : init, "père" de tout les processus LPIC1 / Comptia Linux+ alphorm.com™© daemons processus "orphelins" $ pstree
  • 460. Ce qu’on a couvert • Ce qu'est un processus. • Ses différents états. LPIC1 / Comptia Linux+ alphorm.com™© • La hiérarchie entre ces processus.
  • 461. Gestion des processus ps LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum ps
  • 462. Plan • Introduction • Options • Obtenir plus d'informations • Filtrer LPIC1 / Comptia Linux+ alphorm.com™© • Spécificateurs standards de format • Exemples concrets
  • 463. Introduction • "processes' status" • un des programmes les plus importants pour la gestion des processus LPIC1 / Comptia Linux+ alphorm.com™© $ ps [options]
  • 464. Options • compatibilité • 3 types : Unix98 LPIC1 / Comptia Linux+ alphorm.com™© BSD GNU long
  • 465. Obtenir plus d'informations • par défaut : n'affiche que les processus lancés à partir du même terminal tronque la sortie pour qu'elle s'affiche correctement • -A ou –e • x • -f : full • -l ou l : long LPIC1 / Comptia Linux+ alphorm.com™© • x • hiérarchie : -H, f ou –forest • ne pas tronquer : -w ou w • -l ou l : long • -j ou j : job control • u : orienté utilisateur • v : mémoire virtuelle
  • 466. Filtrer • pour un utilisateur RUID (real user id) : -U user ou --User user EUID (effective user id) : -u user ou U user ou --user user • par commande(s) : -c cmdlist LPIC1 / Comptia Linux+ alphorm.com™© • par commande(s) : -c cmdlist • par PID : p pidliste ou -p pidliste ou --pid pidliste
  • 467. Spécificateurs standards de format • option -o speclist code Header user / euser User / EUSER euid EUID ruid RUID code Header tty / tt TT tname TTY LPIC1 / Comptia Linux+ alphorm.com™© ruid RUID ruser RUSER code Header pid PID ppid PPID code Header time / cputime TIME %cpu %CPU ni / nice NI %mem %MEM
  • 468. Exemples concrets LPIC1 / Comptia Linux+ alphorm.com™©
  • 469. Ce qu’on a couvert • Comment utiliser la commande ps pour obtenir des informations sur les processus. LPIC1 / Comptia Linux+ alphorm.com™©
  • 470. Gestion des processus Afficher les processus avec top LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Afficher les processus avec top
  • 471. Plan • Présentation • Commandes internes LPIC1 / Comptia Linux+ alphorm.com™©
  • 472. Présentation • Options -d delay -p pid $ top [options] LPIC1 / Comptia Linux+ alphorm.com™© -n iter • dynamique temps réel
  • 473. Commandes internes commande description h aide k tuer un processus q quitter LPIC1 / Comptia Linux+ alphorm.com™© r renice s modifier le délai de rafraichissemet P trier par usage CPU (défaut) M trier par usage mémoire
  • 474. Ce qu’on a couvert • Comment utiliser la commande top. LPIC1 / Comptia Linux+ alphorm.com™©
  • 475. Gestion des processus Processus en avant ou arrière LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Processus en avant ou arrière plan
  • 476. Plan • Afficher les processus de votre session • Processus d'avant plan • Processus d'arrière plan LPIC1 / Comptia Linux+ alphorm.com™©
  • 477. Afficher les processus de votre session • statuts et job IDs des processus de la session $ jobs LPIC1 / Comptia Linux+ alphorm.com™© • vérifier avant de se déconnecter • indispensable pour les opérations suivantes
  • 478. Processus d'avant plan • Lorsque vous lancez une commande prise de main sur le terminal empêche de lancer une autre commande • Pour stopper : Ctrl+Z LPIC1 / Comptia Linux+ alphorm.com™© • Pour stopper : Ctrl+Z • Pour réactiver : $ fg [jobID]
  • 479. Processus d'arrière plan • Continue a être actif, sans garder la main sur le terminal • Pour lancer une commande en arrière-plan $ commande & LPIC1 / Comptia Linux+ alphorm.com™© • Pour réactiver un processus stoppé et le mettre en arrière plan $ bg [jobID]
  • 480. Ce qu’on a couvert • Qu'est ce qu'un processus d'avant ou d'arrière plan. • Comment gérer ce genre de processus. LPIC1 / Comptia Linux+ alphorm.com™©
  • 481. Gestion des processus Priorité des processus LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Priorité des processus
  • 482. Plan • Introduction • Lancer un processus avec une priorité donnée • Modifier la priorité d'un processus LPIC1 / Comptia Linux+ alphorm.com™©
  • 483. Introduction • permet de favoriser plus ou moins l'accès des processus au matériel • de -20 (plus fort) à 19 (plus faible) LPIC1 / Comptia Linux+ alphorm.com™© • seul root peu affecter une priorité négative, et donc plus favorable
  • 484. Lancer un processus avec une priorité donnée • Options -X ou -n X ou --adjustement=X $ nice [args] [commande [commande-args]] LPIC1 / Comptia Linux+ alphorm.com™© • par défaut : 10
  • 485. Modifier la priorité d'un processus • seul root peu modifier la priorité d'un processus pour un utilisateur ou un groupe $ renice priority [[-p] pids] [[-g] gid] [[-u] users] LPIC1 / Comptia Linux+ alphorm.com™© # renice 12 12351 -u alphorm debian
  • 486. Ce qu’on a couvert • Comment sont gérées les priorités des processus. • Comment affecter une priorité particulière à un ou plusieurs processus. LPIC1 / Comptia Linux+ alphorm.com™©
  • 487. Gestion des processus Signaux et processus LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Signaux et processus
  • 488. Plan • Introduction • Signaux • Envoyer un signal à un processus • Envoyer un signal à un groupe de processus LPIC1 / Comptia Linux+ alphorm.com™© • Lancer un programme persistant
  • 489. Introduction • communication interprocessus • POSIX • notification asynchrone LPIC1 / Comptia Linux+ alphorm.com™© • signaler l'apparition d'un évènement • géré par une routine de traitement implémentée ou par défaut
  • 490. Signaux • cf man 7 signal et $ kill -l • SIGKILL (9) • SIGHUP (1) LPIC1 / Comptia Linux+ alphorm.com™© • SIGTERM (15 • …
  • 491. Envoyer un signal à un processus • par défaut : SIGTERM (15) $ kill [-s signal] pid $ kill [-signal] pid LPIC1 / Comptia Linux+ alphorm.com™© • par défaut : SIGTERM (15) • seulement si l'utilisateur est propriétaire du processus ou root
  • 492. Envoyer un signal à un groupe de processus • par défaut : SIGTERM (15) $ killall [-s signal] [-i] name $ killall [-signal] [-i] name LPIC1 / Comptia Linux+ alphorm.com™© • se base sur la commande plutôt que le PID • -i : interactif
  • 493. Lancer un programme persistant • ignore les SIGHUP $ nohup commande [options] LPIC1 / Comptia Linux+ alphorm.com™© • ignore les SIGHUP • continue à fonctionner même après déconnection
  • 494. Ce qu’on a couvert • Ce qu'est un signal. • Quels sont les principaux signaux à connaitre. • Comment envoyer un signal. LPIC1 / Comptia Linux+ alphorm.com™© • Comment ignorer les SIGHUP.
  • 495. environnement graphique Introduction LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Introduction
  • 496. Plan • Présentation LPIC1 / Comptia Linux+ alphorm.com™©
  • 497. Présentation LPIC1 / Comptia Linux+ alphorm.com™©
  • 498. Ce qu’on a couvert • La structure générale de l'environnement graphique Linux. • L'utilité de chacun de ses composants. LPIC1 / Comptia Linux+ alphorm.com™©
  • 499. environnement graphique X Window System LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum X Window System
  • 500. Plan • Historique • Fonctionnement • Démarrer le serveur X • Stopper le serveur X • Moniteur • Carte graphique • Résolution et profondeur de couleur • Informations LPIC1 / Comptia Linux+ alphorm.com™© • Outils de configuration • Fichier de configuration • Modules • Périphériques d'entrée • Informations
  • 501. Historique • Projet Athena : W • 1983 : portage de W sur Unix • 1984 : X1 - MIT (Bob Scheifler) • 1987 : X11 LPIC1 / Comptia Linux+ alphorm.com™© • 1991 : X386 - basé sur X11R4 renommé XFree86 en 1992 • 2004 : X.Org Server fork de XFree86 4.3
  • 502. Fonctionnement • client / serveur via XDMCP (protocole réseau) • /! peu paraitre "inversé" LPIC1 / Comptia Linux+ alphorm.com™© • Serveur X : gestion de l'affichage et des entrées • Clients X : chaque application affichant un ou des fenêtre(s) • envoient de instructions de "dessin" au serveur • nécessitent le plus de ressources
  • 503. Démarrer le serveur X • via le terminal $ startx LPIC1 / Comptia Linux+ alphorm.com™© • ou via un Display Manager XDM, KDM, GDM, etc …
  • 504. Stopper le serveur X • Red Hat $ init 3 LPIC1 / Comptia Linux+ alphorm.com™© • Autres (marche aussi avec kdm, gdm, etc …) /etc/init.d/xdm stop
  • 505. Outils de configuration • Red Hat • Suse # system-config-display LPIC1 / Comptia Linux+ alphorm.com™© • Debian # yast # dpkg-reconfigure xserver-xorg
  • 506. Fichier de configuration • /etc/X11/xorg.conf si absent : détection du matériel à chaque démarrage • une section par fonctionnalité majeure Section "..." ... LPIC1 / Comptia Linux+ alphorm.com™© • Générer un fichier ... EndSection # xorg -configure
  • 507. Modules • drivers pour les fonctions ou matériels spécifiques Exemple LPIC1 / Comptia Linux+ alphorm.com™© • Exemple Section “Module” Load “dbe” Load “extmod” Load “fbdevhw” EndSection
  • 508. Périphériques d'entrée • Exemple 1 : clavier Section “InputDevice” Identifier “Keyboard0” Driver “kbd” Option “XkbModel” “pc105” Option “XkbLayout” “us” Option “AutoRepeat” “500 200” EndSection LPIC1 / Comptia Linux+ alphorm.com™© • Exemple 2 : souris Section “InputDevice” Identifier “Mouse0” Driver “mouse” Option “Protocol” “IMPS/2” Option “Device” “/dev/input/mice” Option “Emulate3Buttons” “no” Option “ZAxisMapping” “4 5” EndSection
  • 509. Moniteur • Exemple Section “Monitor” Identifier “Monitor0” ModelName “VisionMaster Pro 450” HorizSync 27.0-115.0 LPIC1 / Comptia Linux+ alphorm.com™© HorizSync 27.0-115.0 VertRefresh 50.0-160.0 # My custom 1360x1024 mode Modeline “1360x1024” 197.8 1360 1370 1480 1752 1024 1031 1046 1072 -HSync -VSync EndSection
  • 510. Carte graphique • Exemple Section “Device” Identifier “Videocard0” Driver “nv” VendorName “nVidia” LPIC1 / Comptia Linux+ alphorm.com™© • Drivers : /usr/X11R6/lib/modules/drivers VendorName “nVidia” BoardName “GeForce 6100” VideoRam 131072 EndSection
  • 511. Résolution et profondeur de couleur • Exemple Section “Screen” Identifier “Screen0” Device “Videocard0” Monitor “Monitor0” DefaultDepth 24 SubSection “Display” LPIC1 / Comptia Linux+ alphorm.com™© SubSection “Display” Depth 24 Modes “1024x768” “1024x600” “800x600” “640x480” EndSubSection SubSection “Display” Depth 8 Modes “1024x768” “800x600” “640x480” EndSubSection EndSection
  • 512. Informations • générales • sur une fenêtre $ xdpyinfo [-ext extension] xwininfo [-id id] [-name name] [-root] LPIC1 / Comptia Linux+ alphorm.com™© xwininfo [-id id] [-name name] [-root]
  • 513. Ce qu’on a couvert • Qu'est ce que X11, X.org et XFree86. • Comment configurer et lancer X.org. LPIC1 / Comptia Linux+ alphorm.com™© • Comment obtenir des informations sur X.
  • 514. environnement graphique Display Manager LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Display Manager
  • 515. Plan • Introduction • Session locale • Session distante • Sélectionner un gestionnaire d'affichage LPIC1 / Comptia Linux+ alphorm.com™© • Configuration de XDM • Configuration de KDM • Configuration de GDM
  • 516. Introduction • permet de démarrer une session sur un serveur X • Nombreux et interchangeables XDM : par défaut pour X, rare pour les distributions LPIC1 / Comptia Linux+ alphorm.com™© KDM : KDE GDM : Gnome LXDM : LXDE etc …
  • 517. Session locale LPIC1 / Comptia Linux+ alphorm.com™©
  • 518. Session distante LPIC1 / Comptia Linux+ alphorm.com™©
  • 519. Sélectionner un gestionnaire d'affichage • Fedora /etc/sysconfig/desktop • DISPLAYMANAGER=KDM • Suse /etc/sysconfig/displaymanager LPIC1 / Comptia Linux+ alphorm.com™© /etc/sysconfig/displaymanager • DISPLAYMANAGER=kdm • Debian, Ubuntu choix du sysvinit script # dpkg-reconfigure gdm
  • 520. Configuration de XDM • /etc/X11/xdm/ ou /usr/X11R6/lib/X11/xdm/ • xdm-config configuration générale • Xaccress hôtes autorisés pour une connection XDMCP distante LPIC1 / Comptia Linux+ alphorm.com™© hôtes autorisés pour une connection XDMCP distante • Xservers hôtes (serveurs x) déléguant l'invite d'authentification à notre machine • Xresources propriétés X utilisées par les composants visuels
  • 521. Configuration de KDM • basé sur XDM mêmes fichiers de configuration • fonctionnalités supplémentaires : dossier kdm /etc/X11/kdm/ /etc/kde/kdm/ LPIC1 / Comptia Linux+ alphorm.com™© /etc/kde/kdm/ /usr/share/config/kdm/ /usr/share/kde4/config/kdm/ • pour la plupart : fichier kdmrc type de session, extinction, etc …
  • 522. Configuration de GDM • n'utilise pas les fichiers de configuration de XDM • dossier /etc/X11/gdm/ fichier gdm.conf - similaire à kdmrc LPIC1 / Comptia Linux+ alphorm.com™© • commande $ gdmconfig
  • 523. Ce qu’on a couvert • Ce qu'est un display manager. • Comment il fonctionne. LPIC1 / Comptia Linux+ alphorm.com™© • Comment le configurer.
  • 524. environnement graphique accès distant LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum accès distant
  • 525. Plan • Pré-requis • Méthode simple • XDM • KDM LPIC1 / Comptia Linux+ alphorm.com™© • GDM • autres solutions
  • 526. Pré-requis • iptables • Suse : /etc/sysconfig/displaymanager DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN=yes LPIC1 / Comptia Linux+ alphorm.com™© • lancement à partir de startx : /etc/X11/xinit/xserverrc enlever -nolisten tcp
  • 527. Méthode simple • ajouter l'hôte à la liste des clients autorisés • puis, sur l'hôte X client xserver$ xhost +hotexclient LPIC1 / Comptia Linux+ alphorm.com™© • lancer une application sur le client : elle s'affiche sur le terminal X hotexclient$ export DISPLAY=xserver:0.0
  • 528. XDM • xdm-config : commenter • ajouter les hôtes dans Xaccess et dans Xservers !DisplayManager.requestPort: 0 LPIC1 / Comptia Linux+ alphorm.com™©
  • 529. KDM • kdmrc [Xdmcp] … Enable=true LPIC1 / Comptia Linux+ alphorm.com™© • mêmes configuration que pour XDM
  • 530. GDM • gdm.conf DisallowTCP=false … [Xdmcp] … enable=yes LPIC1 / Comptia Linux+ alphorm.com™© • gdm.schemas <key>security/DisallowTCP</key>
  • 531. Autres solutions • VNC • SSH LPIC1 / Comptia Linux+ alphorm.com™© $ ssh -X hote
  • 532. Ce qu’on a couvert • Comment mettre en place un accès X distant. LPIC1 / Comptia Linux+ alphorm.com™©
  • 533. Impression Introduction LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Introduction
  • 534. Plan • Introduction • Ghostscript • Fonctionnement (local) • Spooling LPIC1 / Comptia Linux+ alphorm.com™© • CUPS • Autres solutions • Lancement du système d'impression
  • 535. Introduction • anecdote : "une histoire d'imprimante" Richard Stallman vs XeroX PostScript LPIC1 / Comptia Linux+ alphorm.com™© • PostScript langage d'impression • vectoriel supporté par la plupart des imprimantes de 80s standard Unix
  • 536. Ghostscript • 1986 - L. Peter Deutsch • double licence GPL et AFPL LPIC1 / Comptia Linux+ alphorm.com™© • interpréteur PS et PDF conversion vers format natifs imprimantes
  • 537. Fonctionnement (local) LPIC1 / Comptia Linux+ alphorm.com™©
  • 538. Spooling • simultaneous processing operations on line concept né en 1958 LPIC1 / Comptia Linux+ alphorm.com™© • file d'attente mémoire tampon
  • 539. CUPS • Common Unix Printing System • démon cupsd gère les files d'attentes d'impression envoi les tâches aux imprimantes LPIC1 / Comptia Linux+ alphorm.com™© envoi les tâches aux imprimantes • très fortement orienté réseau • utilise des filtres et/ou ghostscript pour réaliser les conversions
  • 540. Autres solutions • rarement employées sous Linux non couvert par la LPIC LPIC1 / Comptia Linux+ alphorm.com™© • BSD Line Printer Daemon (LPD) • LPRng • fonctionnement similaire
  • 541. Lancement du système d'impression • via services cf sysVinit scripts & runlevels livrés par défaut LPIC1 / Comptia Linux+ alphorm.com™© diffère suivant les distributions • pour vérifier $ ps -ef | grep cups
  • 542. Ce qu’on a couvert • Le fonctionnement du système d'impression Unix. • Comment lancer et arrêter CUPS. LPIC1 / Comptia Linux+ alphorm.com™©
  • 543. Impression Gestion des tâches LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Gestion des tâches d'impression
  • 544. Plan • Soumettre une tâche d'impression • Informations • Annuler une tâche d'impression LPIC1 / Comptia Linux+ alphorm.com™©
  • 545. Soumettre une tâche d'impression • Options : -P[ ]qeuename : spécifier une imprimante $ lpr [-Pimprimante] [-#nombre] [-J job] [-m] [-hr] [fichier ...] LPIC1 / Comptia Linux+ alphorm.com™© • pas d'espace pour la version d'origine (BSD) -r : supprimer le fichier après impression -h : pas de page de garde -J jobname : préciser le nom de tâche
  • 546. Informations • Sur une file d'impression Sur CUPS $ lpq -P[]qeuename LPIC1 / Comptia Linux+ alphorm.com™© • Sur CUPS$ lpstat [-h hostname[:port]] [-p [imprimante(s)]]
  • 547. Annuler une tâche d'impression • Options : -P[ ]qeuename : spécifier un spool $ lprm [-P imprimante] [-] [jobId ...] [-h serveur[:port]] LPIC1 / Comptia Linux+ alphorm.com™© -P[ ]qeuename : spécifier un spool - : tout supprimer
  • 548. Ce qu’on a couvert • Comment lancer une impression sous Linux. • Comment obtenir des informations sur : les spools LPIC1 / Comptia Linux+ alphorm.com™© les spools les imprimantes le serveur CUPS • Comment annuler une ou plusieurs tâche(s) d'impression.
  • 549. Impression Configuration de CUPS LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Configuration de CUPS
  • 550. Plan • Configurer les imprimantes • Fichiers PPD • Fichier de configuration • Interface web LPIC1 / Comptia Linux+ alphorm.com™©
  • 551. Configurer les imprimantes • /etc/cups/printers.conf à n'éditer qu'en dernier recours • Commande :$ lpadmin [-dpx] destination [-v URI] LPIC1 / Comptia Linux+ alphorm.com™© • -d : mettre par défaut • -p : ajouter ou modif • -x : supprimer • Serveur web : htpp://localhost:631
  • 552. Fichiers PPD • PostScript Printer Définition description des caractéristiques d'une imprimante PS • /etc/cups/ppd/*.ppd • fournis par : CUPS (intégré) LPIC1 / Comptia Linux+ alphorm.com™© CUPS (intégré) package http://www.linuxfoundation.org/en/OpenPrinting/Database/Foomatic GIMP Print - Gut CUPS Driver Development kit (HP & Epson) constructeur
  • 553. Fichier de configuration • /etc/cups/cupsd.conf Browsing On BrowseAddess 192.168.1.255 … <Location /printers> Order Deny,Allow Deny from All LPIC1 / Comptia Linux+ alphorm.com™© Deny from All BrowseAllow from 127.0.0.1 BrowseAllow from 192.168.1.0/24 BrowseAllow from @LOCAL Allow from 127.0.0.1 Allow from 192.168.1.0/24 Allow from @LOCAL </Location>
  • 554. Interface web LPIC1 / Comptia Linux+ alphorm.com™©
  • 555. Ce qu’on a couvert • Comment ajouter une imprimant. • Comment configurer CUPS. LPIC1 / Comptia Linux+ alphorm.com™©
  • 556. Administration système Gestion des utilisateurs et LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Gestion des utilisateurs et groupes
  • 557. Plan • Nommage • Groupes • UID et GID • Le fichier passwd • Modifier un utilisateur • Modifier le shadow pour un utilisateur • Supprimer un utilisateur • Ajouter un groupe LPIC1 / Comptia Linux+ alphorm.com™© • Le fichier group • Le fichier shadow • Le fichier gshadow • Ajouter un utilisateur • Ajouter un groupe • Modifier et supprimer un groupe
  • 558. Nommage • case sensitive • éviter les espaces LPIC1 / Comptia Linux+ alphorm.com™© • doit commencer par une lettre • maximum 32 caractères privilégier un maximum de 8
  • 559. Groupes • définition similaire aux utilisateurs • un utilisateur appartient à un groupe primaire LPIC1 / Comptia Linux+ alphorm.com™© à un groupe primaire et éventuellement à des groupes secondaires • pour changer d'identifiant de groupe en cours de session $ newgrp groupe
  • 560. UID et GID • nombre identifiant unique ??? •0-99 : outils et fonctions spécifiques système LPIC1 / Comptia Linux+ alphorm.com™© 0 : root ex : 2 (Red Hat) daemon • 100-500 ou 1000 : fonctions spécifiques liées à la distribution ex : GID 100 : users (groupe par défaut)
  • 561. Le fichier passwd • /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/bin/false daemon:x:2:2:daemon:/sbin:/bin/false adm:x:3:4:adm:/var/adm:/bin/false lp:x:4:7:lp:/var/spool/lpd:/bin/false sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt LPIC1 / Comptia Linux+ alphorm.com™© halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/bin/false news:x:9:13:news:/usr/lib/news:/bin/false uucp:x:10:14:uucp:/var/spool/uucppublic:/bin/false operator:x:11:0:operator:/root:/bin/bash ftp:x:21:21::/home/ftp:/bin/false nobody:x:65534:65534:nobody:/:/bin/false alias:x:501:501::/var/qmail/alias:/bin/bash pierre:x:509:509:Pierre Feuille:/home/pierre:/bin/bash paul:x:511:512:Paul Ogne:/home/paul:/bin/bash jacques:x:511:509:Jacques Chirac:/home/jacques:/bin/bash
  • 562. Le fichier group • /etc/group root:x:0:root bin:x:1:root,bin,daemon daemon:x:2:root,bin,daemon sys:x:3:root,bin,adm adm:x:4:root,adm,daemon tty:x:5: ... rv:x:500: LPIC1 / Comptia Linux+ alphorm.com™© rv:x:500: gdm:x:42: jackuser:x:493: nm-openconnect:x:492: icecast:x:491: stapdev:x:490: stapusr:x:489: oprofile:x:16: stap-server:x:155: ccache:x:488: pierre:x:509: paul:x:512:
  • 563. Le fichier shadow • /etc/shadow root:$1$cJtWmhbX$1iCfb31CvckZiVDeae0Zx.:13383:0:99999:7::: daemon:*:13383:0:99999:7::: bin:*:13383:0:99999:7::: sys:*:13383:0:99999:7::: sync:*:13383:0:99999:7::: games:*:13383:0:99999:7::: man:*:13383:0:99999:7::: … LPIC1 / Comptia Linux+ alphorm.com™© … proxy:*:13383:0:99999:7::: www-data:*:13383:0:99999:7::: nobody:*:13383:0:99999:7::: dhcp:!:13383:0:99999:7::: syslog:!:13383:0:99999:7::: klog:!:13383:0:99999:7::: cupsys:!:13383:0:99999:7::: messagebus:!:13383:0:99999:7::: haldaemon:!:13383:0:99999:7::: hplip:!:13383:0:99999:7::: paul:$1$tgS/4j6v$D9dP0cyqc6QydDOQDAiPm.:13383:0:99999:7:::
  • 564. Le fichier gshadow • /etc/gshadow general:!!:shelley:juan,bob LPIC1 / Comptia Linux+ alphorm.com™©
  • 565. Ajouter un utilisateur # useradd [-c commentaire] [-d rép_perso] [-e date_expiration] [-f inactive_time] [-g groupe_initial] [-G groupe[,...]] [-m [-k rép_squelette] | -M] [-p mot_de_passe] [-s shell] [-u uid [ -o]] [-n] [-r] login LPIC1 / Comptia Linux+ alphorm.com™©
  • 566. Modifier un utilisateur • Options similaires à useradd $ usermod [options] [-d repertoire [-m]] [-l login] [-L] [-U] login LPIC1 / Comptia Linux+ alphorm.com™© similaires à useradd
  • 567. Modifier le shadow pour un utilisateur # passwd [-k] [-l] [-u [-f]] [-d] [-S] [username] • modifier le mot de passe modification des paramètres LPIC1 / Comptia Linux+ alphorm.com™© # chage [-m min] [-M max] [-d dernier] [-I inactive] [-E expire] [-W alerte] [-l] utilisateur • modification des paramètres
  • 568. Supprimer un utilisateur $ userdel [-r] [-f] [-h] login LPIC1 / Comptia Linux+ alphorm.com™©
  • 569. Ajouter un groupe # groupadd [-g GID [-o]] [-r] [-f] groupname LPIC1 / Comptia Linux+ alphorm.com™©
  • 570. Modifier et supprimer un groupe • relativement au fichier group • relativement au fichier gshadow # groupmod [-g GID [-o]] [-n newgroupname] oldgroupname LPIC1 / Comptia Linux+ alphorm.com™© • suppression # gpasswd [-a user] [-d user] [-R] [-r] [-A user[,...]] [-M user[,...]] group # groupdel nom
  • 571. Ce qu’on a couvert • Comment administrer les utilisateurs et groupes sous Linux. LPIC1 / Comptia Linux+ alphorm.com™©
  • 572. Administration système Logs LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Logs
  • 573. Plan • Introduction • Historique • Concept • Implémentations Niveaux LPIC1 / Comptia Linux+ alphorm.com™© • Niveaux • Facilités • Configuration • Analyse • Log manuel
  • 574. Introduction • journalisation ou logging • enregistrement séquentiel dans un fichier LPIC1 / Comptia Linux+ alphorm.com™© dans un fichier journal ou log file • des activités du système et des applications
  • 575. Historique • 80s - Eric Allman Projet Sendmail • rapidement un standard de fait puis RFC 3164 puis 5424 LPIC1 / Comptia Linux+ alphorm.com™© puis RFC 3164 puis 5424 • GNU/Linux • Unix • périphériques réseau
  • 576. Concept • client - serveur UDP 514 centralisation LPIC1 / Comptia Linux+ alphorm.com™© centralisation • via un socket sous GNU/Linux : /dev/log
  • 577. Implémentations • syslogd + klogd historique LPIC1 3.5 LPIC1 / Comptia Linux+ alphorm.com™© Debian 4.0 • syslog-ng Fedora jsq 10, openSuse jsq 11.2 … • rsyslog
  • 578. Niveaux • définie l'importance du message • debug, info, notice, warning (warn), err (error), crit, alert, emerg (panic) LPIC1 / Comptia Linux+ alphorm.com™© • peut être précédé de '=' ou '!'
  • 579. Facilités • définie l'origine (programme ou outil) générant le message • auth (security) • authpriv, cron, kern, lpr, mail, news, syslog, user, uucp LPIC1 / Comptia Linux+ alphorm.com™© • local0 à local7 • daemon • mark • *
  • 580. Configuration • /etc/syslog.conf • format secteur1;secteur2 action facilité.priorité action LPIC1 / Comptia Linux+ alphorm.com™© • Exemples mail.* /var/log/mail *.emerg * kern.* /var/log/kernel kern.crit @logger.pangaea.edu kern.crit /dev/console kern.info;kern.!err /var/log/kernel-info
  • 581. Analyse • /var/log/ • format courant time hôte identifiant[pid]: info LPIC1 / Comptia Linux+ alphorm.com™© • Exemples Apr 14 23:17:00 speaker /USR/SBIN/CRON[6026]: (george) CMD (/usr/bin/fetchmail -f /home/george/.fetchmailrc > /dev/null) Apr 14 23:17:52 speaker sshd[6031]: Accepted publickey for george from ::ffff:192.168.1.3 port 48139 ssh2
  • 582. Log manuel $ logger [-isd] [-f file] [-p pri] [-t tag] [-u socket] [message LPIC1 / Comptia Linux+ alphorm.com™© $ logger [-isd] [-f file] [-p pri] [-t tag] [-u socket] [message ...]
  • 583. Ce qu’on a couvert • Ce qu'est syslog. • Quelles sont les différentes solutions de logging sous GNU/Linux. LPIC1 / Comptia Linux+ alphorm.com™© • Comment configurer syslogd. • Comment réaliser un log manuellement.
  • 584. Administration système Maintenir le temps système LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Maintenir le temps système
  • 585. Plan • Introduction • Configuration • Modifier et consulter l'horloge système • Modifier et consulter l'horloge matérielle LPIC1 / Comptia Linux+ alphorm.com™©
  • 586. Introduction • 2 horloges hardware software LPIC1 / Comptia Linux+ alphorm.com™© • Windows & Max OS pre-X temps local peu adapté pour le WAN
  • 587. Configuration • /etc/localtime fichier binaire copie ou lien symbolique vers /usr/share/zoneinfo/… LPIC1 / Comptia Linux+ alphorm.com™© /usr/share/zoneinfo/… • plus, pour certaines distributions Debian : /etc/timezone Fedora : /etc/sysconfig/clock
  • 588. Modifier et consulter l'horloge système • Options -u ou --utc ou --universal : temps universel $ date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] LPIC1 / Comptia Linux+ alphorm.com™© -u ou --utc ou --universal : temps universel • local par défaut
  • 589. Modifier et consulter l'horloge matérielle • afficher • modifier $ hwclock [-r | -show] $ hwclock --set --date=date [--utc | --localtime] LPIC1 / Comptia Linux+ alphorm.com™© • mettre l'heure système à l'heure de l'horloge machine • et inversement $ hwclock -s $ hwclock -W
  • 590. Ce qu’on a couvert • Comment est géré le temps sous Linux. • Comment consulter et modifier l'horloge. LPIC1 / Comptia Linux+ alphorm.com™© • Comment configurer votre timezone.
  • 591. Administration système cron LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum cron
  • 592. Plan • Introduction • Cron : démonstration LPIC1 / Comptia Linux+ alphorm.com™©
  • 593. Introduction • issu de Unix V7 Brian Kernighan extrêmement sommaire LPIC1 / Comptia Linux+ alphorm.com™© mono-utilisateur (root) • adapté pour Unix System V multi-utilisateur moderne BSD, Solaris, IRIX, HP-UX, AIX
  • 594. Cron : démonstration LPIC1 / Comptia Linux+ alphorm.com™©
  • 595. Ce qu’on a couvert • Comment administrer cron. LPIC1 / Comptia Linux+ alphorm.com™©
  • 596. Administration système anacron LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum anacron
  • 597. Plan • Introduction • Démonstration LPIC1 / Comptia Linux+ alphorm.com™©
  • 598. Introduction • Pourquoi un second outil ? LPIC1 / Comptia Linux+ alphorm.com™©
  • 599. Démonstration LPIC1 / Comptia Linux+ alphorm.com™©
  • 600. Ce qu’on a couvert • Configurer anacron. LPIC1 / Comptia Linux+ alphorm.com™©
  • 601. Administration système Gestion des interfaces réseaux LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Gestion des interfaces réseaux
  • 602. Plan • Modèle OSI • Commandes • Interfaces • Lister les interfaces Modifier une adresses MAC LPIC1 / Comptia Linux+ alphorm.com™© • Modifier une adresses MAC • Activation et désactivation d'une interface • Wi-Fi : association • Wi-Fi : sécurité • wpa_supplicant : configuration
  • 603. Modèle OSI Type de Donnée couche Protocoles Couches Hautes Donnée 7. Application FTP, SMTP, Telnet, HTTP, DNS, DHCP 6. Présentation ASCII, SMB, AFP 5. Session AppleTalk, NetBIOS, RPC LPIC1 / Comptia Linux+ alphorm.com™© 5. Session AppleTalk, NetBIOS, RPC Segment / Datagramme 4. Transport TCP / UDP Couches Matérielles Paquet 3. Réseau ICMP, IP, ARP, service DHCP Trame 2. Liaison Ethernet, PPP, Wi-Fi Bit 1. Physique -
  • 604. Commandes • solutions historique # ifconfig [ interface [aftype] options | adresse ... ] # route [options] LPIC1 / Comptia Linux+ alphorm.com™© • solution moderne# ip [ OPTIONS ] OBJECT { COMMAND | help }
  • 605. Interfaces • terme clé - numéro (cf. udev) eth[012…] ou em[012…] et p<slot>p<port> : ethernets wlan[012…] , ra[012…] , ath[012…] : wifi LPIC1 / Comptia Linux+ alphorm.com™© wlan[012…] , ra[012…] , ath[012…] : wifi tun[012…] / tap[012…] : interfaces virtuelles de tunneling lo : boucle locale ppp[012…] , pppoe[012…] : modem, 3G …
  • 606. Lister les interfaces • avec ifconfig avec iproute2 $ ifconfig -a LPIC1 / Comptia Linux+ alphorm.com™© • avec iproute2 • avec lshw $ ip link list $ lshw --class network
  • 607. Modifier une adresses MAC • avec ifconfig avec iproute2 # ifconfig <dev> hw <type> <adresse mac> LPIC1 / Comptia Linux+ alphorm.com™© • avec iproute2 • modification statique : cf udev # ip link set dev <dev> address <adresse_mac>
  • 608. Activation et désactivation d'une interface • avec ifconfig avec iproute2 # ifconfig <dev> up # ifconfig <dev> down LPIC1 / Comptia Linux+ alphorm.com™© • avec iproute2 • avec ifup (prise en compte de fichiers de configuration) # ip link set dev <dev> up # ip link set dev <dev> down # ifup <dev> # ifdown <dev>
  • 609. Wi-Fi : association • Lister les réseaux accessibles : • Afficher la configuration actuelle des interfaces réseaux : $ iwconfig $ iwlist wlan0 scan LPIC1 / Comptia Linux+ alphorm.com™© • S’associer à un réseau : # iwconfig wlan0 essid <SSID>
  • 610. Wi-Fi : sécurité • réseau ouvert • WEP # iwconfig wlan0 key open # iwconfig wlan0 key <clé wep> LPIC1 / Comptia Linux+ alphorm.com™© • WPA $ wpa_supplicant -c mon_wpa.conf -i wlan0
  • 611. wpa_supplicant : configuration • mon_wpa.conf network={ ssid="<SSID du réseau>" proto=WPA RSN key_mgmt=WPA-PSK psk="<mot de passe>" } LPIC1 / Comptia Linux+ alphorm.com™© }
  • 612. Ce qu’on a couvert • Configuration réseaux GNU/Linux en lien avec la couche liaison son modèle OSI : interfaces adresses MAC LPIC1 / Comptia Linux+ alphorm.com™© adresses MAC Wi-Fi
  • 613. Administration système Adressage IP LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Adressage IP
  • 614. Plan • Modèle OSI • Introduction au DHCP • Les clients DHCP • Adressage IP statique avec ifconfig LPIC1 / Comptia Linux+ alphorm.com™© • Adressage IP statique avec iproute2 • Configuration persistante
  • 615. Modèle OSI Type de Donnée couche Protocoles Couches Hautes Donnée 7. Application FTP, SMTP, Telnet, HTTP, DNS, DHCP 6. Présentation ASCII, SMB, AFP 5. Session AppleTalk, NetBIOS, RPC LPIC1 / Comptia Linux+ alphorm.com™© 5. Session AppleTalk, NetBIOS, RPC Segment / Datagramme 4. Transport TCP / UDP Couches Matérielles Paquet 3. Réseau ICMP, IP, ARP, service DHCP Trame 2. Liaison Ethernet, PPP, Wi-Fi Bit 1. Physique -
  • 616. Introduction au DHCP • protocole client / serveur couches 3 et 7 adressage ip dynamique LPIC1 / Comptia Linux+ alphorm.com™© • requête broadcast recherche de serveur DHCP reception des informations nécessaires à la couche réseau
  • 617. Les clients DHCP • Le plus courant Autres outils # dhclient interface LPIC1 / Comptia Linux+ alphorm.com™© • Autres outils$ pump interface $ dhcpcd interface
  • 618. Adressage IP statique avec ifconfig • xxx • Exemples# ifconfig eth0 192.168.10.20 # ifconfig <dev> <adresse_ip> [netmask <mask>] [broadcast <addr>] LPIC1 / Comptia Linux+ alphorm.com™© # ifconfig eth0 192.168.1.20 netmask 255.255.255.0 # ifconfig eth0 192.168.1.20 netmask 255.255.255.0 broadcast 192.168.1.255
  • 619. Adressage IP statique avec iproute2 # ip addr del <prev_ip_addr>/<netmask> dev <dev> # ip addr add <ip_addr>/<netmask> dev <dev> LPIC1 / Comptia Linux+ alphorm.com™©
  • 620. Configuration persistante • /etc/network/interfaces • /etc/sysconfig/ network : général LPIC1 / Comptia Linux+ alphorm.com™© network : général network-script/ifcfg-* : un par interface
  • 621. Ce qu’on a couvert • Comment allouer une adresse IP à vos interfaces réseaux. LPIC1 / Comptia Linux+ alphorm.com™©
  • 622. Administration système Route LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Route
  • 623. Plan • Modèle OSI • Vérifier • Ajouter et supprimer • MTU et TTL LPIC1 / Comptia Linux+ alphorm.com™©
  • 624. Modèle OSI Type de Donnée couche Protocoles Couches Hautes Donnée 7. Application FTP, SMTP, Telnet, HTTP, DNS, DHCP 6. Présentation ASCII, SMB, AFP 5. Session AppleTalk, NetBIOS, RPC LPIC1 / Comptia Linux+ alphorm.com™© 5. Session AppleTalk, NetBIOS, RPC Segment / Datagramme 4. Transport TCP / UDP Couches Matérielles Paquet 3. Réseau ICMP, IP, ARP, service DHCP Trame 2. Liaison Ethernet, PPP, Wi-Fi Bit 1. Physique -
  • 625. Vérifier • Exemple : Savoir par où passeraient des paquets à destination de google :# ip route get 64.233.183.147 LPIC1 / Comptia Linux+ alphorm.com™© • Visualiser les différentes routes déjà configurées # route -n
  • 626. Ajouter et supprimer • Ajouter avec route • Supprimer avec route # route add -net 172.20.10.0/24 gw 192.168.1.1 # route del -net 172.20.10.0/24 gw 192.168.1.1 LPIC1 / Comptia Linux+ alphorm.com™© • Ajouter avec iproute2 • Supprimer avec iproute2 # ip route add default via 10.0.0.1 dev eth0 # ip route change default via 10.0.0.1 dev eth0 mtu 500 hoplimit 10
  • 627. MTU et TTL • Changer le mtu et le ttl d’une route existante : # ip route change default via 10.0.0.1 dev eth0 mtu 500 hoplimit 10 LPIC1 / Comptia Linux+ alphorm.com™©
  • 628. Ce qu’on a couvert • Configurer basique du routage GNU/Linux. LPIC1 / Comptia Linux+ alphorm.com™©
  • 629. Administration système ARP LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum ARP
  • 630. Plan • Modèle OSI • Commande arp • iproute2 LPIC1 / Comptia Linux+ alphorm.com™©
  • 631. Modèle OSI Type de Donnée couche Protocoles Couches Hautes Donnée 7. Application FTP, SMTP, Telnet, HTTP, DNS, DHCP 6. Présentation ASCII, SMB, AFP 5. Session AppleTalk, NetBIOS, RPC LPIC1 / Comptia Linux+ alphorm.com™© 5. Session AppleTalk, NetBIOS, RPC Segment / Datagramme 4. Transport TCP / UDP Couches Matérielles Paquet 3. Réseau ICMP, IP, ARP, service DHCP Trame 2. Liaison Ethernet, PPP, Wi-Fi Bit 1. Physique -
  • 632. Commande arp • Ajout d’une entrée statique : Suppression d’une entrée : $ arp -s 192.168.1.2 00:40:33:2D:B5:DD LPIC1 / Comptia Linux+ alphorm.com™© • Suppression d’une entrée : • Lister les entrées : $ arp -d 192.168.1.2 $ arp -va
  • 633. iproute2 • Affficher la table : • Ajouter une entrée statique : $ ip neigh show LPIC1 / Comptia Linux+ alphorm.com™© • Ajouter une entrée statique : • Suppression d’une entrée : $ ip neigh add <adresse ip> dev <interface> lladdr <adresse MAC> $ ip neigh del <adresse ip> dev <interface>
  • 634. Ce qu’on a couvert • Ajouter et supprimer des entrées ARP statiques. LPIC1 / Comptia Linux+ alphorm.com™©
  • 635. Administration système Résolution de nom LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Résolution de nom
  • 636. Plan • Modèle OSI • Fichier hosts • Configuration des solutions de résolution • Nom d'hôte LPIC1 / Comptia Linux+ alphorm.com™© • Spécifier les serveurs DNS
  • 637. Modèle OSI Type de Donnée couche Protocoles Couches Hautes Donnée 7. Application FTP, SMTP, Telnet, HTTP, DNS, DHCP 6. Présentation ASCII, SMB, AFP 5. Session AppleTalk, NetBIOS, RPC LPIC1 / Comptia Linux+ alphorm.com™© 5. Session AppleTalk, NetBIOS, RPC Segment / Datagramme 4. Transport TCP / UDP Couches Matérielles Paquet 3. Réseau ICMP, IP, ARP, service DHCP Trame 2. Liaison Ethernet, PPP, Wi-Fi Bit 1. Physique -
  • 638. Fichier hosts • /etc/hosts • entrées statiques ont toujours la priorité ur le DNS <adresse ip> <nom d’hôte> … LPIC1 / Comptia Linux+ alphorm.com™© <adresse ip> <nom d’hôte> …
  • 639. Configuration des solutions de résolution • /etc/host.conf • tend à être remplacé par le fichier nsswitch.conf order hosts, bind multi on LPIC1 / Comptia Linux+ alphorm.com™© hosts nis files dns
  • 640. Nom d'hôte • Consultation et modification dynamique • Modification persistente $ hostname [nouveaunom] LPIC1 / Comptia Linux+ alphorm.com™© /etc/hostname
  • 641. Spécifier les serveurs DNS • /etc/resolv.conf nameserver 192.168.10.1 nameserver 127.0.1.1 search mondomaine.fr autredomaine.fr LPIC1 / Comptia Linux+ alphorm.com™©
  • 642. Ce qu’on a couvert • Configuration de la résolution de nom sous GNU/Linux. LPIC1 / Comptia Linux+ alphorm.com™©
  • 643. Connaissances complémentaires LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Introduction au scripting bash
  • 644. Plan • Introduction • Rappel : variables • Shebang • Sortie • Alternatives : si - sinon Selon • Boucles : Pour LPIC1 / Comptia Linux+ alphorm.com™© • Test • Expressions mathématiques • Composition Pour Tant que • Lecture depuis l’entrée standard • Lancement
  • 645. Introduction • automatiser LPIC1 / Comptia Linux+ alphorm.com™© • comprendre
  • 646. Rappel : variables • déclaration • paramètres de position : $#, $@, $*, $0, $1, $2, $3, etc … mavariable="valeur" LPIC1 / Comptia Linux+ alphorm.com™© • valeur de sortie de la dernière commande : $? • PID du processus de script : $$
  • 647. Shebang • Première ligne d'un script • Indique qu'un fichier est un script • Suivit de l'interpréteur • Exemples : LPIC1 / Comptia Linux+ alphorm.com™© #!/bin/sh -x #!/bin/bash #!/usr/bin/perl #!/usr/bin/tcl #!/bin/sed -f #!/usr/awk -f
  • 648. Sortie • met fin à l'exécution du script • renvoi la valeur donnée exit [valeur] LPIC1 / Comptia Linux+ alphorm.com™© • renvoi la valeur donnée 0 = bonne exécution = true
  • 649. Test • ou test expression [ expression ] LPIC1 / Comptia Linux+ alphorm.com™© • Exemples [ 2 -lt 3 ] [ "$var1" != "$var2" ] [ -x /bin/bash ]
  • 650. Expressions mathématiques • calculer et afficher le résultat sur la sortie standard exécuter une opération expr expression LPIC1 / Comptia Linux+ alphorm.com™© • exécuter une opération ou • peu être précédé de $ pour enregistrer dans une let expression ((expression))
  • 651. Composition • séquentielle : cmd1 ; cmd2 • parallèle : cmd1 & cmd2 • sur erreur (ou) : cmd1 || cmd2 LPIC1 / Comptia Linux+ alphorm.com™© • sur succès (et) : cmd1 && cmd2
  • 652. Alternatives : si - sinon if test then instructions elif test then instructions LPIC1 / Comptia Linux+ alphorm.com™© instructions … else instructions fi
  • 653. Alternatives : Selon case variable in expr) instructions ;; LPIC1 / Comptia Linux+ alphorm.com™© ;; … esac
  • 654. Boucles : Pour for var in [liste] do … done LPIC1 / Comptia Linux+ alphorm.com™© • Exemple : for (( i=1 ; i<=5 ; i++ )) do echo $i done
  • 655. Boucles : Tant que while test do … done LPIC1 / Comptia Linux+ alphorm.com™©
  • 656. Lecture depuis l’entrée standard read [-p prompt] [name...] LPIC1 / Comptia Linux+ alphorm.com™©
  • 657. Lancement $ ./script $ bash script LPIC1 / Comptia Linux+ alphorm.com™© • ou ajouter le dossier au PATH
  • 658. Ce qu’on a couvert • Comment s'écrit un script bash. • Comment lancer un script bash. LPIC1 / Comptia Linux+ alphorm.com™©
  • 659. Connaissances complémentaires LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Introduction à la gestion de bases de données
  • 660. Plan • Introduction • SGBD • Installer • Types de donnée • Clauses WHERE GROUP BY ORDER BY • Modifier des enregistrements LPIC1 / Comptia Linux+ alphorm.com™© • Gestion des bases de données • Créer une table • Ajouter un enregistrement • Afficher le contenu d'une table • Modifier des enregistrements • Supprimer des enregistrements • Combiner des tables avec JOIN
  • 661. Introduction • Structured Query Language • manipulation • définition de données LPIC1 / Comptia Linux+ alphorm.com™© • contrôle de transaction • contrôle de données
  • 662. SGBD • MySQL • MariaDB • PostgreSQL LPIC1 / Comptia Linux+ alphorm.com™© • SQLite • Oracle • etc …
  • 663. Installer • MariaDB https://downloads.mariadb.org/mariadb/reposito ries/ LPIC1 / Comptia Linux+ alphorm.com™© • MySQL • PostgreSQL # apt-get install mysql-server mysql-client # apt-get install postgresql postgresql-client
  • 664. Types de données Type Description INTEGER (INT) entier sur 4 octets SMALLINT entier sur 2 octets DECIMAL(X,Y) nombre décimal de X chiffres dont Y décimaux NUMERIC idem que DECIMAL FLOAT nombre décimal à virgule flottante DOUBLE float sur deux fois plus d'octets LPIC1 / Comptia Linux+ alphorm.com™© DOUBLE float sur deux fois plus d'octets DATETIME date et heure DATE date TIME temps (HH:MM:SS) CHAR(X) chaine de caractère de taille fixe (complétée par des espaces) VARCHAR(X) chaine de caractère de taille variable ENUM('a','b','c') liste énumérée SET('a','b','c') liste énumérée (comprenant la valeur nulle)
  • 665. Gestion des bases de données • Créer une base de données • Afficher les bases de données CREATE DATABASE nom; SHOW DATABASES; LPIC1 / Comptia Linux+ alphorm.com™© • Utiliser une base de données • Afficher les tables de la base courante USE nom; SHOW TABLES;
  • 666. Créer une table • Exemple CREATE TABLE tbl_name [(create_definition,...)]; LPIC1 / Comptia Linux+ alphorm.com™© CREATE TABLE matable ( id INT NOT NULL auto_increment, nom varchar(255) NOT NULL, prenom varchar(255) NOT NULL, date DATE DEFAULT ’0000-00-00' NOT NULL, PRIMARY KEY (id));
  • 667. Ajouter un enregistrement • Exemple INSERT INTO nom_de_la_table [(liste des colonnes)] SELECT ... LPIC1 / Comptia Linux+ alphorm.com™© INSERT INTO objects VALUES(‘lizard’,’green’,6,’soft’,10.00);
  • 668. Afficher le contenu d'une table • Exemples SELECT colones FROM table; LPIC1 / Comptia Linux+ alphorm.com™© SELECT * FROM objects; SELECT value,color FROM objects;
  • 669. Clause WHERE • permet de n'affecter qu'une partie des enregistrements grâce à une (ou plusieurs) condition(s) • Exemples SELECT * FROM table WHERE id > 10 ; LPIC1 / Comptia Linux+ alphorm.com™© SELECT * FROM objects WHERE color=’green’; SELECT * FROM objects WHERE hardness=’soft’ AND value>7.50;.
  • 670. Clause GROUP BY • groupement des enregistrements n'affiche qu'une ligne par groupe Exemple LPIC1 / Comptia Linux+ alphorm.com™© • ExempleSELECT student_name, AVG(test_score) FROM student GROUP BY student_name;
  • 671. Clause ORDER BY • trier • Exemple LPIC1 / Comptia Linux+ alphorm.com™© SELECT * FROM objects WHERE hardness=’soft’ ORDER BY value;
  • 672. Modifier des enregistrements • Exemple UPDATE tbl_name SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition]; LPIC1 / Comptia Linux+ alphorm.com™© UPDATE objects SET size=5 WHERE name=’lizard’;
  • 673. Supprimer des enregistrements • Exemple DELETE FROM table_name[WHERE where_definition]; LPIC1 / Comptia Linux+ alphorm.com™© DELETE FROM locations WHERE name=’tree’ AND location=’back yard’ ;
  • 674. Combiner des tables avec JOIN • Exemple SELECT objects.name, objects.color, locations.location FROM objects JOIN locations WHERE objects.name=locations.name AND objects.color=’green’; LPIC1 / Comptia Linux+ alphorm.com™© WHERE objects.name=locations.name AND objects.color=’green’;
  • 675. Ce qu’on a couvert • Qu'est ce qu'une base de donnée. • Les principaux SGBD sous GNU/Linux. • Comment les installer. LPIC1 / Comptia Linux+ alphorm.com™© • Les types de donnée MySQL et MariaDB. • Les commandes essentielles du SQL.
  • 676. Connaissances complémentaires LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Gestion des e-mails
  • 677. Plan • Introduction • Fonctionnement • Solutions • Envoyer un e-mail LPIC1 / Comptia Linux+ alphorm.com™© • Consulter vos e-mails • Redirections
  • 678. Introduction • un des services réseau les plus important • élément essentiel de GNU/Linux LPIC1 / Comptia Linux+ alphorm.com™© même sans réseau cf. cron
  • 679. Fonctionnement LPIC1 / Comptia Linux+ alphorm.com™©
  • 680. Solutions • Sendmail • Postfix LPIC1 / Comptia Linux+ alphorm.com™© • Exim • qmail
  • 681. Envoyer un e-mail $ mail [-v] [-s subject] [-c cc-addr] [-b bcc-addr] to-addr LPIC1 / Comptia Linux+ alphorm.com™©
  • 682. Consulter vos e-mails $ mail [-v] [-f [name] | -u user] LPIC1 / Comptia Linux+ alphorm.com™©
  • 683. Vérifier la file d'attente # mailq LPIC1 / Comptia Linux+ alphorm.com™© # sendmail -bq • équivalent de :
  • 684. Redirections • /etc/aliases ou /etc/mail/aliases • adresses name: addr1[,addr2[,...]] LPIC1 / Comptia Linux+ alphorm.com™© nom local fichier • pour redirection ou liste d'adresses (:include:) | commande
  • 685. Ce qu’on a couvert • Comment fonctionne le mailing. • Quelles sont les différents MTA disponibles sous GNU/Linux. • Comment envoyer et recevoir un mail. LPIC1 / Comptia Linux+ alphorm.com™© • Comment mettre en place une redirection.
  • 686. Sécurité Sécurité réseau LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Sécurité réseau
  • 687. Plan • Introduction • Rechercher les ports ouverts sur un serveur • Les super-serveurs • Inetd LPIC1 / Comptia Linux+ alphorm.com™© • Xinetd • Sécuriser xinetd • TCP Wrapper • Configuration du TCP Wrapper
  • 688. Introduction • nécessité de gérer les différents services • désactivation des serveurs inutiles LPIC1 / Comptia Linux+ alphorm.com™© • protection des serveurs utiles
  • 689. Rechercher les ports ouverts sur un serveur • TCP connect scan • UDP scan $ nmap -sT hostname $ nmap -sU hostname LPIC1 / Comptia Linux+ alphorm.com™© • afficher les connections actives # netstat [-ap | -lp] # lsof -i [46][protocol][@hostname|hostaddr][:service|port]
  • 690. Désactiver les services inutiles • cf sysVinit scripts & runlevels /etc/inittab /etc/init.d LPIC1 / Comptia Linux+ alphorm.com™© /etc/init.d • fichiers de configuration du super-serveur
  • 691. Les super-serveurs LPIC1 / Comptia Linux+ alphorm.com™©
  • 692. inetd • InterNET Daemon • /etc/inetd.conf + /etc/inetd.d/ service socket protocol (no)wait utilisateur programme args LPIC1 / Comptia Linux+ alphorm.com™© Exempleftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.ftpd -l
  • 693. xinetd • eXtended InterNET Daemon plus sécurisé • /etc/xinetd.conf + /etc/xinetd.d/ Exempleservice ftp LPIC1 / Comptia Linux+ alphorm.com™© Exempleservice ftp { socket_type = stream protocol = tcp wait = no user = root server = /usr/sbin/in.ftpd server_args = -l disable = yes }
  • 694. Sécuriser xinetd bind = adresse-IP only-from = adresse-IP no-access = adresse-IP LPIC1 / Comptia Linux+ alphorm.com™© no-access = adresse-IP access-time = hh:mm-hh:mm
  • 695. TCP Wrapper LPIC1 / Comptia Linux+ alphorm.com™©
  • 696. Configuration du TCP Wrapper • fichiers /etc/hosts.allow et hosts.deny • daemon-list : cf /etc/services daemon-list : client-list LPIC1 / Comptia Linux+ alphorm.com™© • client-list : nom ou adresse IP hôte réseau ALL
  • 697. Ce qu’on a couvert • sujet 110-01 : Effectuer des tâches d'administration de sécurité Être capable d'utiliser nmap et netstat pour découvrir les ports ouverts sur un système. (nmap netstat lsof) LPIC1 / Comptia Linux+ alphorm.com™© • sujet 110-02 : Configurer la sécurité d'un hôte Comprendre le rôle du TCP wrapper. (/etc/hosts.allow /etc/hosts.deny) Désactiver les services réseau inutilisés.
  • 698. Sécurité Sécurité système LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Sécurité système
  • 699. Plan • Bonnes pratiques pour les mots de passe • Limiter l'accès root • Sudo • Configuration de sudo • Configuration de sudo : Exemple LPIC1 / Comptia Linux+ alphorm.com™© • Limiter l'usage des ressources • Configuration de pam_limits • Commande ulimit • Fichier nologin • Localiser les fichiers avec SUID/SGID
  • 700. Bonnes pratiques pour les mots de passe • choisir de bons mots de passe • changer les mot de passe régulièrement • utiliser les mot de passe shadow • garder les mot de passe secrets LPIC1 / Comptia Linux+ alphorm.com™© • utiliser des protocoles d'authentification distante sécurisés • attention au "shoulder surfing" • UN mot de passe pour UN système • attention au social engineering et au fishing
  • 701. Limiter l'accès root • ne jamais se connecter directement en tant que root • limiter l'usage du compte root le plus possible LPIC1 / Comptia Linux+ alphorm.com™© • limiter l'usage du compte root le plus possible $ su -c "commande"
  • 702. Sudo • Permet de donner certains droits d'administration aux utilisateurs LPIC1 / Comptia Linux+ alphorm.com™© • définis par des groupes de commandes et des droits utilisateurs (comme root)
  • 703. Configuration de sudo • /etc/sudoers ident hote = (user : grp) commande1, (user) commande2, ... LPIC1 / Comptia Linux+ alphorm.com™© # visudo
  • 704. Configuration de sudo : Exemple ## Storage Cmnd_Alias STORAGE = /sbin/fdisk, /sbin/sfdisk, /sbin/parted, /sbin/partprobe, /bin/mount, /bin/umount ## Processes Cmnd_Alias PROCESSES = /bin/nice, /bin/kill, /usr/bin/kill, /usr/bin/killall %sys ALL = STORAGE, PROCESSES LPIC1 / Comptia Linux+ alphorm.com™© %disk ALL = STORAGE %wheel ALL=(ALL) ALL ## The user dgb may run /bin/ls, /bin/kill, and /usr/bin/lprm—but ## only as operator. E.g., ## $ sudo -u operator /bin/ls dgb boulder = (operator) /bin/ls, (root) /bin/kill, /usr/bin/lprm alan ALL = (root, bin : operator, system) ALL
  • 705. Limiter l'usage des ressources • pam_limits LPIC1 / Comptia Linux+ alphorm.com™© • intégré par défaut dans la plupart des distribributions
  • 706. Configuration de pam_limits • /etc/security/limits.conf domain type item value LPIC1 / Comptia Linux+ alphorm.com™© • Exemple @limited hard cpu 2
  • 707. Commande ulimit • commande interne bash • Options fichiers : -c -f -n # ulimit [options [limit]] LPIC1 / Comptia Linux+ alphorm.com™© fichiers : -c -f -n processus : -u -t mémoire : -v -s -m -d -l limitations : -H -S -a
  • 708. Fichier nologin • /etc/nologin • interdit la connexion à tout autre utilisateur que root pour maintenance LPIC1 / Comptia Linux+ alphorm.com™© pour maintenance • Simple message Authentification désactivée jusqu'à 14h pour maintenance.
  • 709. Localiser les fichiers avec SUID/SGID • cf. find • Exemple LPIC1 / Comptia Linux+ alphorm.com™© # find / -perm +6000 -type f
  • 710. Ce qu’on a couvert • Sujet 110.1 : Effectuer des tâches d'administration de sécurité Audit du système pour retrouver les fichiers ayant les permissions suid/guid positionnées. (find) Positionner et changer les mots de passe des LPIC1 / Comptia Linux+ alphorm.com™© Positionner et changer les mots de passe des utilisateurs ainsi que les informations de validité du compte. (chage, passwd, usermod) Imposer les limites aux utilisateurs en terme de l'utilisation de la mémoire et des processus. (ulimit)
  • 711. Sécurité SSH LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum SSH
  • 712. Plan • Introduction • Connexion du client • Copie de fichiers • Configuration basique du serveur • Comprendre le rôle des clés SSH Gestion des clés SSH LPIC1 / Comptia Linux+ alphorm.com™© Gestion des clés SSH Enregistrement des clés d'hôte Clés d'authentification • Mémorisation des passphrases • Transfert de ports Mise en œuvre
  • 713. Introduction • Telnet, VNC, X, etc … en clair LPIC1 / Comptia Linux+ alphorm.com™© • SSH : encryption OpenSSH
  • 714. Connexion du client • Syntaxe • Exemple $ ssh [options] [-F configfile] [-i identity_file] [-l login_name] [-p port] [user@]hostname [command] LPIC1 / Comptia Linux+ alphorm.com™© • Configuration : /etc/ssh/ssh-config /.ssh/config $ ssh admin1@linuxserver
  • 715. Copie de fichiers • Syntaxe • Exemple $ scp mylocalfile user@server:remotefile $ scp user@server:remotefile mylocalfile LPIC1 / Comptia Linux+ alphorm.com™© • Pour des tâches plus complexes : sftp $ scp archive.tar.gz bernard@192.168.1.1:mesarchives/archive.tar.gz
  • 716. Configuration basique du serveur • /etc/ssh/sshd-config Port 22 Protocol 2,1 ListenAddress 0.0.0.0 KeepAlive Yes LPIC1 / Comptia Linux+ alphorm.com™© KeepAlive Yes HostKey ssh_host_dsa.key HostKey ssh_host_rsa.key PermitRootLogin no PasswordAuthentication yes PubkeyAuthentication yes PermitEmptyPasswords no X11Forwarding yes
  • 717. Comprendre le rôle des clés SSH LPIC1 / Comptia Linux+ alphorm.com™©
  • 718. Gestion des clés SSH • /etc/ssh/ssh_host_rsa_key et /etc/ssh/ssh_host_dsa_key extension .pub pour les publiques générer LPIC1 / Comptia Linux+ alphorm.com™© • générer • attention aux droits d'accès des clés privées # ssh-keygen -q -t rsa1 -f /etc/ssh/ssh_host_key -C ‘’ -N ‘’ # ssh-keygen -q -t rsa -f /etc/ssh/ssh_host_rsa_key -C ‘’ -N ‘’ # ssh-keygen -q -t dsa -f /etc/ssh/ssh_host_dsa_key -C ‘’ -N ‘’
  • 719. Enregistrement des clés d'hôte • Lors d'une première authentification message • ~/.ssh/known_hosts LPIC1 / Comptia Linux+ alphorm.com™© • ~/.ssh/known_hosts • /etc/ssh_known_hosts ou /etc/ssh/ssh_known_host
  • 720. Clés d'authentification • génération des clés • transfert de la clé publique vers le serveur client$ ssh-keygen -q -t rsa -f ~/.ssh/id_rsa -C ‘’ -N ‘’ client$ scp id_rsa.pub compte@serveur:temp.rsa LPIC1 / Comptia Linux+ alphorm.com™© • accès au serveur (par mot de passe) • ajout de la clé client$ ssh compte@serveur serveur$ cat ~/temp.rsa >> ~/.ssh/authorized_keys
  • 721. Mémorisation des passphrases • lancement de ssh-agent déclarer les variables d'environnement comme présenté client$ ssh-agent LPIC1 / Comptia Linux+ alphorm.com™© présenté • exporter les clés vers le cache de l'agent client$ ssh-add [clé]
  • 722. Transfert de ports LPIC1 / Comptia Linux+ alphorm.com™©
  • 723. Transfert de ports : mise en oeuvre • Serveur : /etc/ssh/sshd_config AllowTcpForwarding yes LPIC1 / Comptia Linux+ alphorm.com™© • Client # ssh -N -f -L 2000:destination:143 user@serveurssh.com
  • 724. Ce qu’on a couvert • Sujet 110.3 : Sécuriser des échanges réseau avec le cryptage Utilisation et configuration d'un client OpenSSH 2. • ssh , ssh-keygen , ssh-agent , ssh-add Comprendre le rôle des clés ssh. • /etc/ssh/ssh_host_rsa_key and ssh_host_rsa_key.pub LPIC1 / Comptia Linux+ alphorm.com™© • /etc/ssh/ssh_host_dsa_key and ssh_host_dsa_key.pub • ~/.ssh/authorized_keys • /etc/ssh_known_hosts • ~/.ssh/id_rsa and id_rsa.pub ~/.ssh/id_dsa and id_dsa.pub Créer des tunnels chiffrés avec le port forwarding
  • 725. Sécurité GnuPG LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum GnuPG
  • 726. Plan • Introduction • Chiffrement par clés symétriques • Chiffrement par clés symétriques : pratique • Chiffrement par clés asymétriques • Signature : théorie LPIC1 / Comptia Linux+ alphorm.com™© • Génération de clés asymétriques • Certificat de révocation • Fingerprint • Gestion des clés • Signature
  • 727. Introduction • GNU Privacy Guard • Chiffrement (authenticité) et signature (confidentialité) LPIC1 / Comptia Linux+ alphorm.com™© • Werner Koch - fin 90's
  • 728. Chiffrement par clés symétriques LPIC1 / Comptia Linux+ alphorm.com™©
  • 729. Chiffrement par clés symétriques : pratique • chiffrer $ gpg -c fichier LPIC1 / Comptia Linux+ alphorm.com™© • déchiffrer $ gpg -o fichier -d fichier.gpg
  • 730. Chiffrement par clés asymétriques LPIC1 / Comptia Linux+ alphorm.com™©
  • 731. Signature : théorie LPIC1 / Comptia Linux+ alphorm.com™©
  • 732. Génération de clés asymétriques • interactif chiffrement $ gpg --gen-key LPIC1 / Comptia Linux+ alphorm.com™© longueur temps identité passphrase
  • 733. Certificat de révocation • permet de remplacer une clé publique ne devant plus être utilisée vérification des signatures $ gpg --output revoke.asc --gen-revoke name LPIC1 / Comptia Linux+ alphorm.com™© vérification des signatures mais pas de chiffrement
  • 734. Fingerprint • "empreinte digitale" $ gpg --fingerprint name LPIC1 / Comptia Linux+ alphorm.com™© • permet de rapidement vérifier qu'une clé proviens bien de la personne à qui on pense qu'elle appartient
  • 735. Gestion des clés • export --armor : permet de produire la clé en ASCII name : un bout de l'uid (prénom, nom, mail, etc ...) • import $ gpg --export [--armor] name > gpg.pub LPIC1 / Comptia Linux+ alphorm.com™© • lister • supprimer $ gpg --import filename $ gpg --list-keys $ gpg --delete-key name
  • 736. Signature • signer $ gpg --clearsign original-file LPIC1 / Comptia Linux+ alphorm.com™© • import $ gpg --verify received-file
  • 737. Ce qu’on a couvert • Sujet 110.3 Sécuriser des échanges réseau avec le cryptage Les candidats doivent être capables d'utiliser les techniques de cryptage pour assurer la confidentialité des données et des LPIC1 / Comptia Linux+ alphorm.com™© techniques de cryptage pour assurer la confidentialité des données et des communications. • Utilisation et configuration de base de GnuPG. - gpg - ~/.gnupg/*
  • 738. Conclusion Conclusion LPIC1 / Comptia Linux+ alphorm.com™© Noël Macé Formateur et Consultant indépendant Expert Unix et FOSS Contact : alphorm@noelmace.com Site : http://alphorm.com Blog : http://alphorm.com/blog Forum : http://alphorm.com/forum Conclusion
  • 739. Au revoir • Et à bientôt, pour la LPIC2 et bien d'autres sujets ! LPIC1 / Comptia Linux+ alphorm.com™©