cours linux intermediaire

24

Upload: grenois-sempre

Post on 26-Jun-2015

265 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Linux - Cours d'introduction

Emmanuel BoudreaultSamuel Demers

16 février 2010

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 2: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Table des matieres

Processus d'amorçage

Con�guration système

Processus

Accès à distance

Compilation d'une application

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 3: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

L'amorçage, en bref

Lorsqu'on allume l'ordinateur, on fait appel à beaucoup de monde :

1. Bios

2. Boot loader

3. Noyau Linux

4. Initrd

5. Init

6. Gestionnaire d'a�chage

7. Serveur X

8. Bureau

Remarque : parfois remplacé par un autre type de �rmware (EFI,Coreboot, ...)

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 4: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Bios

But : initialiser les composantes du système.

I Vient avec la carte mère

I S'exécute dès qu'on appuie sur l'interrupteur de l'ordinateur

I Exécute le premier programme qu'il voit

I En général, ce programme est le boot loader

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 5: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Boot loader

But : démarrer le système d'exploitation souhaité avec les bonsparamètres.

I Con�gurable

I Peut a�cher un menu de démarrage

I Exécute le noyau Linux

Exemples : Grub, LILO, winload.exe

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 6: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Noyau Linux

But : exécuter les applications et abstraire le matériel.

I Système d'exploitation à proprement parler

I Doit exécuter un premier programme

I Le premier programme est dans une archive Initrd

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 7: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Initrd

But : préparer le système pour le démarrage des autresprogrammes.

I Contient un script (/linuxrc)

I Charge des modules

I Prépare la partition racine (/)

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 8: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Init

But : démarrer les programmes de base du système.

I Appelé par Linux lorsque le script /linuxrc a terminé

I Démarre de nombreux services système

I Démarre un gestionnaire d'a�chage

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 9: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Gestionnaire d'a�chage

But : gérer l'exécution de l'environnement graphique.

I Demande à l'usager de s'authenti�er

I Permet de choisir l'environnement de bureau et la langue

I Démarre le serveur X

I Démarre l'environnement de bureau

Exemples : GDM, KDM, XDM

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 10: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Serveur X

But : a�cher des fenêtres.

I A�che des rectangles avec des pixels

I D'autres programmes doivent lui dire quoi a�cher dans cesrectangles, incluant les bordures de fenêtres

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 11: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Bureau

But : fournir un environnement de travail à l'usager.

I Inclut un gestionnaire de fenêtre, qui dessine les bordures defenêtres

I Inclut généralement des barres d'outils, un bureau, des icônes,etc.

Exemples : Gnome, KDE

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 12: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Que faire lorsque les choses se compliquent ?

Problèmes courants :

I Changer les entrées du boot loader

I Modi�er son noyau

I Con�gurer X manuellement

I Utiliser un autre environnement de bureau

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 13: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Changer les entrées du boot loader

I Grub : /boot/grub/menu.lst

I Grub2 : /boot/grub/grub.conf

Entrée typique :

title Ubuntu 9.10, kernel 2.6.31-19-generic

root (hd0,2)

kernel /boot/vmlinuz-2.6.31-19-generic root=[...]

initrd /boot/initrd.img-2.6.31-19-generic

quiet

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 14: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Modi�er son noyau

Comment obtenir le code source du noyau Linux :

I Ubuntu : apt-get install linux-source

I http ://kernel.org/

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 15: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Modi�er son noyau

I Beaucoup d'options

I Instructif

I Pas obligatoire avec la plupart des distributions

Exemple :

cd /usr/src

tar xvjf linux-source-2.6.31.tar.bz2

cd linux-source-2.6.31

make menuconfig

make

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 16: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Modules du noyau

I Permettent d'ajouter des fonctionnalités au noyau sans lerecompiler

I Peuvent venir avec le noyau

I Peuvent être déjà compilés (.deb, .rpm, etc.)

I Peuvent devoir être compilés

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 17: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Modules du noyau

I Liste des modules actifs : lsmod

I Activer un module : modprobe, insmod

I Désactiver un module : modprobe -r, rmmod

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 18: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Con�gurer X manuellement

I /etc/X11/xorg.conf

I Clavier, souris, carte vidéo, écran, etc.

I man xorg.conf

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 19: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Utiliser un autre environnement de bureau

I Gnome, KDE, WindowMaker, XFCE, ...

I Beaucoup sont inclus avec les distributions

I Le gestionnaire d'a�chage permet de choisir parmi ceuxinstallés

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 20: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Les processus sous Linux

I Identi�és par le PID (process ID)

I Priorité entre -20 (plus prioritaire) et 19 (moins prioritaire)

I A�chés par les commandes top et ps

I Contrôlés par la commande kill

I Priorité choisie avec la commande nice

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 21: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

SSH (secure shell)

Exemple :

ssh [email protected]

I Permet d'accéder à une machine distante en ligne decommande

I Est sécurisé

I Nécessite un client et un serveur (sshd)

I La façon la plus courant d'accéder à une machine à distance

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 22: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

A�chage à distance avec X11

Exemple :

ssh -X [email protected]

I Architecture client/serveur

I Possibilité d'a�cher des clients distants sur un serveur local

I Variable d'environnement : $DISPLAY

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 23: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Quand compiler soi-même une application ?

I Il n'existe pas encore de paquetages pré-compilés (.deb, .rpm,etc.)

I On veut la toute dernière version

I On veut contribuer à l'application

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction

Page 24: Cours linux intermediaire

Table des matieresProcessus d'amorçageCon�guration système

ProcessusAccès à distance

Compilation d'une application

Comment compiler une application ?

Procédure générique :

tar xvzf [programme].tar.gz

cd [repertoire]

./configure

make

make install

Emmanuel Boudreault Samuel Demers Linux - Cours d'introduction