Technologies Linux Technologies Linux Initiation

Technologies Linux
Technologies Linux
Initiation
Olivier Pons / 2014 - 2015
Technologies Linux
Remerciements
Yantra Technologies
C. Grondein & D. Palermo
Technologies Linux
LPIC
LPI = Linux Professional Institute
LPIC = Linux Professional Institute Certification
Cours = Aperçu
=> Pour le passer = travail personnel important
Technologies Linux
Objectif
Initiation Linux
Sommaire – LPIC 101
1 – Introduction aux systèmes d'exploitation UNIX/Linux
2 – Architecture matérielle / gestion des périphériques
3 – Le démarrage de Linux
4 – Installation / gestion des paquetages
5 – Système de fichiers
6 – GNU et les commandes Unix
7 – Programmation Bash
Olivier Pons / 2014 - 2015
Poids
2
3
5
6
8
8
Technologies Linux
Objectif
Initiation Linux
Sommaire – LPIC 102
8 – X Windows
9 – Impression
10 – Gestion des utilisateurs / groupes
11 – Administration système GNU / Linux
12 – Les réseaux TCP/IP
13 – Configuration du réseau
14 – Services système de base
15 – La sécurité
Olivier Pons / 2014 - 2015
Poids
3
2
4
5
4
4
2
3
Technologies Linux
1 - Introduction aux systèmes
d'exploitation UNIX/Linux
a–
Éléments historiques sur UNIX/Linux
b–
Qu'est-ce qu'une distribution ?
c–
Les différentes licences logicielles.
Olivier Pons / 2014 - 2015
6 / 41
Technologies Linux
1 - Introduction - UNIX/Linux
a – Éléments historiques sur UNIX/Linux
1984 – Idée d'un système d’exploitation libre - Free Software Foundation
1991 – Linux, système Unix libre sur PC, un projet de loisir de Linus Torvalds
1992 – Linux (version 0.96) est pleinement fonctionnelle. C'est la naissance des
premières distributions
1998 – Notoriété et consécration en pour Linux et les logiciels libres
Association avec le projet GNU : le système GNU / Linux (compilateur gcc)
Code source disponible (licence GPL)
Compatible POSIX (standard logiciel)
Compatible avec les autres UNIX
Possibilité de cohabitation avec d’autres systèmes
Implémentation complète de la pile TCP/IP
Services réseaux
Interface graphique X Window
http://www.linux.org
Olivier Pons / 2014 - 2015
7 / 41
Technologies Linux
1 - Introduction - UNIX/Linux
a – Éléments historiques sur UNIX/Linux
Richard Matthew Stallman (né à Manhattan, le 16 mars 1953), connu aussi sous
les initiales rms (en minuscules), est un programmeur et militant du logiciel libre.
Il est à l’origine du projet GNU et de la licence publique générale GNU connue
aussi sous l’acronyme GPL, qu’il a rédigée avec l’avocat Eben Moglen.
Il a popularisé le terme anglais « copyleft ».
Programmeur renommé de la communauté informatique américaine et
internationale, il a développé de nombreux logiciels dont les plus connus des
développeurs sont l’éditeur de texte GNU Emacs, le compilateur C de GNU, le
débogueur GNU mais aussi, en collaboration avec Roland McGrath, le moteur
de production GNU Make.
http://fr.wikipedia.org/wiki/Richard_Stallman
Olivier Pons / 2014 - 2015
8 / 41
Technologies Linux
1 - Introduction - UNIX/Linux
a – Éléments historiques sur UNIX/Linux
Unix est un système d’exploitation ayant les caractéristiques suivantes :
- Multi-utilisateurs et Multitâches : plusieurs utilisateurs peuvent accéder au système et
exécuter un ou plusieurs programmes.
- Temps partagé : les ressources du processeur et du système sont réparties entre les
utilisateurs
- Système de fichiers hiérarchiques : plusieurs systèmes de fichiers peuvent être
rattachés au système de fichiers principal
- Entrées-Sorties intégrées au système de fichiers : les périphériques sont représentés
par des fichiers, ce qui rend le système indépendant du matériel.
- Gestion de la mémoire virtuelle : un mécanisme d’échange entre la RAM et le disque
permet de pallier un manque de RAM (Random Access Memory).
- Processus réentrants : les processus exécutant le même programme utilisent une seul
copie de celui-ci en RAM.
- Interface utilisateur interactive (shell) : elle est constituée d’une interface séparée du
noyau permettant à l’utilisateur de choisir son environnement de travail. Elle intègre un
langage de commande très sophistiqué (scripts)
Olivier Pons / 2014 - 2015
9 / 41
Technologies Linux
1 - Introduction - UNIX/Linux
b – Qu'est-ce qu'une distribution ?
Olivier Pons / 2014 - 2015
10 / 41
Technologies Linux
1 - Introduction - UNIX/Linux
b – Les principales distributions
Fedora
ArchLinux
Mandriva
Slackware
Debian
RedHat
Suse
Gentoo
Ubuntu
Olivier Pons / 2014 - 2015
11 / 41
Technologies Linux
1 - Introduction - UNIX/Linux
c – Les licences
GPL
LGPL
Copyleft / Copyright
MIT Licence
BerkeleyDB Licence
Olivier Pons / 2014 - 2015
12 / 41
Technologies Linux
1 - Introduction - UNIX/Linux
f – Architecture
Interface utilisateur
Système
Machine
Olivier Pons / 2014 - 2015
13 / 41
Technologies Linux
2 – Architecture matérielle / périphériques
a – Architecture
CPU
Central Processing Unit
Mémoires
RAM
Random Access Memory
ROM
Read Only Memory
De masse Disques, disquettes, CDROM, zip...
BIOS
Olivier Pons / 2014 - 2015
Basic Input Output System
14 / 41
Technologies Linux
2 – Architecture matérielle / périphériques
b – Les périphériques - les bus
Bus
ISA
PCI
AGP
Olivier Pons / 2014 - 2015
Industry Standard Architecture
8Mo/s – 8,33 MHz – slots 8/16 bits
Peripheral Component Interconnect
132Mo/s – 33 MHz – slots 32 bits
Accelerated Graphical Port
Cartes graphiques
> 33MHz
15 / 41
Technologies Linux
2 – Architecture matérielle / périphériques
c – Les périphériques – allocation des ressources
Processeur
<=
interruption
IRQ
<=
Périphérique
0..15
Interrupt Request Number
=> Sous-programme
(pilote du périphérique)
Temps CPU ?
Olivier Pons / 2014 - 2015
16 / 41
Technologies Linux
2 – Architecture matérielle / périphériques
c – Les périphériques – allocation des ressources
Processeur
Périphérique
<=
=>
=>
RAM
<=
<=
DMA
Direct Memory Access
Transferts simultanés
Olivier Pons / 2014 - 2015
17 / 41
Technologies Linux
2 – Architecture matérielle / périphériques
c – Les périphériques – allocation des ressources
Processeur
<=>
Périphérique
Adresses d'entrées/sorties
= I/O ports
0x100 à 0x3FF
Olivier Pons / 2014 - 2015
18 / 41
Technologies Linux
2 – Architecture matérielle / périphériques
d – Les périphériques – /proc
Tout est fichier
/proc
Dans la mémoire système.
Pas d'existence sur disque.
/proc/interrupts
/proc/dma
/proc/ioports
Olivier Pons / 2014 - 2015
19 / 41
Technologies Linux
2 – Architecture matérielle / périphériques
e – Les périphériques – /sys - /sysfs
(!) Noyau > 2.6
/sys
Informations sur les périphériques
/sys/bus
Liens périphériques <=> bus
/sys/class
Périphériques groupés par classes
/sys/block
Les périphériques de type block
Olivier Pons / 2014 - 2015
20 / 41
Technologies Linux
2 – Architecture matérielle / périphériques
f – Les périphériques – /sys - /sysfs
/sys
udevd
Périphériques
Noyau
/dev
Nouveau
matériel
File d'attente
changée
Olivier Pons / 2014 - 2015
D-Bus
Chargements
- firmwares
- drivers
hald
/sysfs
Programme
Programme
Programme
...
21 / 41
Technologies Linux
2 – Architecture matérielle / périphériques
g – Les périphériques – cartes PCI / AGP
Détectées au démarrage
Informations dans /proc et /sys
Mais aussi commandes sytèmes
dmesg <=> /var/log/dmesg
lspci <=> /proc/bus/pci
lspci -v
lspci -b
udevinfo
udevinfo -p /sys/class/net/eth0/ -a
Olivier Pons / 2014 - 2015
22 / 41
Technologies Linux
2 – Architecture matérielle / périphériques
h – Les périphériques – USB
USB
- connexion à chaud (”hotplug”)
- jusqu'à 126 périphériques
- v1 : 1.5Mbit/s < transfert < 12Mbit/s
- v2 : jusqu'à 480Mbit/s
- v3 : 10Gbit/s
Contrôleurs USB intégrés à la carte mère
- USB 1 : OHCI (Compaq) et UHCI (Intel)
- USB 2 : EHCI
- USB 3 : (à compléter)
Modules noyau respectifs : usb-ohci.o, usb-uhci.o, ehci-hdc.o
lsusb
Olivier Pons / 2014 - 2015
dmesg
udevinfo
23 / 41
Technologies Linux
2 – Architecture matérielle / périphériques
i – Commandes à connaître
cat /proc/interrupts
cat /proc/dma
cat /proc/ioports
insmod
lsusb -t
lsdev
lsmod
lspci
dmesg
Olivier Pons / 2014 - 2015
24 / 41
Technologies Linux
3 – Le démarrage de Linux
a – Les niveaux de démarrage
Linux a plusieurs modes de fonctionnement.
Un mode = un niveau d'exécution
= runlevel
shut down – arrête la machine
Runlevel 0
single user mode – mode de maintenance
Runlevel 1
multi user mode – sans réseau
Runlevel 2
multi user
Runlevel 3
Runlevel 4
multi user – avec interface graphique
Runlevel 5
reboot – redémarrage du système
Runlevel 6
Olivier Pons / 2014 - 2015
25 / 41
Technologies Linux
3 – Le démarrage de Linux
a – Les niveaux de démarrage
Pour passer d'un niveau à un autre :
Olivier Pons / 2014 - 2015
- commande init
init 2
- commande telinit
telinit
26 / 41
Technologies Linux
3 – Le démarrage de Linux
b – Configuration via /etc/inittab - /etc/rcX.d
Après init – ou telinit – exécution de deux fichiers :
/etc/inittab
id : niveau : action : commande
/etc/rc2.d
2 = runlevel
Dans /etc/rc2.d – que des liens symboliques
Tous les liens pointent vers des scripts dans /etc/init.d/
Tous ces scripts prennent au minimum ces paramètres :
start
Olivier Pons / 2014 - 2015
stop
27 / 41
Technologies Linux
3 – Le démarrage de Linux
b – Configuration via /etc/inittab - /etc/rcX.d
/etc/inittab
id : niveau : action : commande
− id : identifiant de la ligne. Valeur aléatoire
− niveau : niveau de démarrage de la commande exécutée
(peut contenir plusieurs niveaux, par exemple « 2345 »)
− action : définit ce que la ligne fait
− commande : la commande à exécuter
Olivier Pons / 2014 - 2015
28 / 41
Technologies Linux
3 – Le démarrage de Linux
b – Configuration via /etc/inittab - /etc/rcX.d
/etc/inittab
id : niveau : action : commande
action :
− initdefault : niveau de démarrage par défaut
− sysinit : commande à exécuter à l’initialisation du système
− wait : exécuter la commande et attendre qu’elle se termine
− respawn : exécuter la commande au début et la re-exécuter
dès qu’elle se termine
Olivier Pons / 2014 - 2015
29 / 41
Technologies Linux
3 – Le démarrage de Linux
c – LILO et le processus de démarrage
Démarrage
BIOS
Si boot disque :
bootloader sur
premier secteur
Petit programme : bootloader
Si Linux : LILO (LInux LOader)
Charge noyau + passage paramètres
Noyau se décompresse
Noyau initialise le matériel
=> Init en mémoire.
Recharger la config:
init q
Noyau exécute le premier processus : init
Olivier Pons / 2014 - 2015
30 / 41
Technologies Linux
3 – Le démarrage de Linux
c – LILO et le processus de démarrage
Si LILO prompt :
Boot:
linux init s
Dans l'exemple :
- init initialisera le système en « single user mode »
- noyau chargé : « linux »
Très souvent « linux » = du nom du noyau par défaut.
Olivier Pons / 2014 - 2015
31 / 41
Technologies Linux
3 – Le démarrage de Linux
c – LILO - configuration
/etc/lilo.conf
Une section = un noyau
Paramètre au noyau : mot clé append
append="pci=biosirq"
append="ram=16M"
append="/dev/hdc=ide-scs"
Après modification, lancer : /sbin/lilo
Olivier Pons / 2014 - 2015
32 / 41
Technologies Linux
3 – Le démarrage de Linux
d – Le processus de démarrage
Charge noyau + passage paramètres
Noyau se décompresse
Noyau initialise le matériel = drivers présents
Autres matériels : plus tard
Lecture
seule
Noyau monte le système de fichier racine : /
Accès possible aux programmes dans : /sbin/ et /bin/
Noyau exécute le premier processus : init
Olivier Pons / 2014 - 2015
33 / 41
Technologies Linux
3 – Le démarrage de Linux
d – Le processus de démarrage
Premier processus : init
Configuration : /etc/inittab
Premier progamme : recherche du mot clé : sysinit
Souvent : /etc/rc.s/rc.sysinit
Éventuellement /sbin/fsck
Montage des fichiers
Chargement des modules /etc/modules.conf
Exécution des programmes configurés dans /etc/inittab
Olivier Pons / 2014 - 2015
34 / 41
Technologies Linux
4 – Installation / gestion des paquetages
a – Les principes d'installation
CD Rom
1.Installation Réseau (boot minimal pour l'activation réseau)
USB
Choix de la langue
Type de clavier
2. Partitionnement du disque dur
3. Choix des paquetages
Cartes graphiques
Gestionnaires de fenêtres
4. Config. interface graphique
Paramétrage de l'affichage
Installation de la souris
Olivier Pons / 2014 - 2015
35 / 41
Technologies Linux
4 – Installation / gestion des paquetages
a – Les principes d'installation
Configuration réseau local
Installation des cartes réseau
Configuration réseau du poste
5. Réseau
6. Fuseau horaire
7. Configuration imprimante
8. Config root et autres utilisateurs
9. Création disquette de démarrage
10. Configuration chargeur démarrage
Olivier Pons / 2014 - 2015
36 / 41
Technologies Linux
4 – Installation / gestion des paquetages
b – Le gestionnaire de paquetages Debian
dpkg (Debian Package Tool)
apt (Advanced Package Tool)
dpkg
-i appli.deb
-r appli.deb
-l
-l | grep appli
-L appli
--unpack
dpkg-reconfigure
Olivier Pons / 2014 - 2015
Installe appli.deb
Désinstalle appli.deb
Liste tous les paquetages
Cherche si appli est installé
Listing fichiers du paquetage appli
Désarchive mais ne l'installe pas
Reconfigure un paquetage déjà installé
37 / 41
Technologies Linux
4 – Installation / gestion des paquetages
b – Le gestionnaire de paquetages Debian
apt (Advanced Package Tool)
apt
utilise toujours la commande dpkg mais ajoute :
- la définition de la source des données
- la gestion des dépendances
Source des applications :
/etc/apt/sources.list
Options de apt, lire le fichier :
apt.conf
Olivier Pons / 2014 - 2015
38 / 41
Technologies Linux
4 – Installation / gestion des paquetages
b – Le gestionnaire de paquetages Debian
apt-get ...
install pqu
remove pqu
--purge remove pqu
install pqu1 pqu2remove pqu1 pqu2+
--reinstall
update
upgrade
-u upgrade
dist-upgrade
source pqu
-b source pqu
build-dep pqu
Olivier Pons / 2014 - 2015
installe le paquetage pqu
désinstalle le paquetage pqu
désinstalle pqu et ses fichiers de configuration
installe pqu1 et désinstalle pqu2
désinstalle pqu1 et installe pqu2
réinstalle le paquetage pqu1
met à jour la liste des paquetages disponibles
met à jour tous les paquetages pouvant être mis à jour ;
affiche en plus la liste des paquetages qui vont être mis à jour
met à jour le système tout entier (nouvelle version de la Debian)
télécharge le paquetage source pqu
télécharge le paquetage source pqu et le compile ensuite
télécharge les dépendances du paquetage source pqu
qui va être compilé.
39 / 41
Technologies Linux
4 – Installation / gestion des paquetages
b – Le gestionnaire de paquetages Debian
apt-show-versions -u
apt-cache search mot
apt-cache show pqu
apt-cache depends pqu
apt-file search nom-fichier
apt-file list pqu
Olivier Pons / 2014 - 2015
-» liste des paquetages
pouvant être mis à jour
-» recherche dans la liste des
paquetages disponibles
les occurrences de mot
-» description de pqu
-» dépendances de pqu
-» nom du paquetage qui
fournit nom-fichier
-» contenu de pqu
40 / 41
Technologies Linux
4 – Installation / gestion des paquetages
c – Le gestionnaire de paquetages RPM et YUM
Bibliothèque
= librairie
= ensemble de fonctions
partagées / partageables
utilisées par un ou plusieurs
programmes binaires exécutables
Bibliothèque statique
= avec l'image de l'exécutable
extension .a
Bibliothèque dynamique
= extension .so (shared object)
Olivier Pons / 2014 - 2015
41 / 41