0% ont trouvé ce document utile (0 vote)
87 vues165 pages

Guide complet sur l'installation de Linux

Linux

Transféré par

Michael Johny
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
87 vues165 pages

Guide complet sur l'installation de Linux

Linux

Transféré par

Michael Johny
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Linux

Rubens Alban MOUKO


Plan du cours

A. Introduction H. Les applications


B. L'installation I. Installer des applications
C. Les commandes linux J. L'arrêt/démarrage
D. Scripts bash K. Le réseau
E. Les utilisateurs et les droits L. L'impression
F. Les disques et les systèmes de fichiers M. L'environnement graphique
G. La sauvegarde N. La sécurité
A. Introduction

1-Historique
2-Les distributions Linux
3-Notion de système d'exploitation
4-Vue générale d'Unix
Qu'est-ce que Linux ?
1-Historique
Le « noyau Linux » est né en 1991 des mains du finlandais Linus
Torvalds. Il est conçus sur le modèle Minix, un clone du système Unix.
A partir de ce noyau, il devient un système d’exploitation lors de
l’utilisation de l’ensemble des logiciels libres du projet GNU. Cela lui
vaudra donc le nom « GNU/Linux ». Par la suite, beaucoup
d’entreprises et associations distribuent Linux avec plusieurs ensembles
de logiciels libres, donnant ainsi naissance aux distributions.
GNU est un projet de système d’exploitation libre lancé en 1983 par Richard
Stallman, puis maintenu par le projet GNU. Son nom est un acronyme récursif qui
signifie en anglais « GNU’s Not UNIX » (littéralement, « GNU n’est pas UNIX »). Il
reprend les concepts et le fonctionnement d’UNIX. Le système GNU permet
l’utilisation de tous les logiciels libres, pas seulement ceux réalisés dans le cadre du
projet GNU. Son symbole est un gnou, un animal vivant en Afrique.
2-Les distributions Linux
Principales distributions Linux
• Archlinux • Linux Mint (basée sur Ubuntu)
• Kali Linux • openSUSE
• Debian • SUSE Linux Enterprise (basée sur
openSUSE)
• Fedora
• Red Hat Enterprise Linux
• Gentoo
• Slackware
• Mageia
• Ubuntu (basée sur Debian)
3-Notion de système d'exploitation

Système d’exploitation (OS)


• Une des tâches du système d’exploitation est d’offrir aux utilisateurs une
interface simple et conviviale avec le matériel.
• Un système d'exploitation (souvent appelé OS pour Operating System) est
un ensemble de programmes qui dirige l'utilisation des capacités d'un
ordinateur (matériel) par des logiciels applicatifs.
3-Notion de système d'exploitation

Fonction d’un OS
Il s’occupe au minimum de :
• La gestion des processus (programmes)
• La gestion de la mémoire
• Le système de fichiers
• La gestion des entrées/sorties
3-Notion de système d'exploitation

Caractéristiques d’un OS moderne


Linux est un système d'exploitation :
• Multi-tâches : Un système d'exploitation est multitâche (en anglais :
multitasking) s’il permet d’exécuter, de façon apparemment simultanée,
plusieurs programmes informatiques.
• Multi-utilisateurs : Un système d'exploitation multi-utilisateur est conçu pour
permettre à plusieurs utilisateurs d'utiliser l'ordinateur simultanément, tout
en limitant les droits d'accès de chacun afin de garantir l'intégrité de leurs
données.
3-Notion de système d'exploitation
Architectures matérielles
Linux est supporté sur tout type d'architecture :

• Serveurs d’entreprise • Embarqués automobile,


domotique, domestique, …
• Serveurs de Data Center
• Appareils mobiles, appareils
• Ordinateurs de bureau légers
• Ordinateurs portables • CPE,
• Ordinateurs légers • Périphériques d’infrastructure
• Mainframes réseau/stockage/multimédia

• Embarqués Industrie
4-Vue générale d'Unix

Qu’est-ce que Unix ?


• Unix a été créé par Bell Labs en 1969.
• Populaire dans les milieux académiques et sur les Mainframes (1980).
• Donne le nom à une famille de systèmes d’exploitation (notamment
FreeBSD, NetBSD et OpenBSD), Dalvik/Linux (Android), GNU/Linux,
iOS et OS X.
• Le nom « UNIX » est une marque déposée de l'Open Group, qui autorise
son utilisation pour tous les systèmes certifiés conformes à la Single
UNIX Specification.
B.L'installation

1. Installation d’un client Linux(Linux Mint)


2. Installation d’un serveur Linux (CentOS)
Installer Linux Mint

La session live
• Quand vous démarrez l’ordinateur à partir de la clé USB (ou du
DVD), Linux Mint lance une session live. Vous êtes authentifié
automatiquement en tant qu’un utilisateur appelé mint et un bureau
apparaît avec un installeur dessus :
1. Installer Linux Mint
1. Installer Linux Mint

La session live est similaire à une session normale (c’est à dire à Linux
Mint une fois installé sur l’ordinateur), mais avec les différences
suivantes :
• La session live est plus lente (elle est chargée à partir d’une clé USB ou
d’un DVD, et non d’un disque dur).
• Les changements que vous faites dans la session live ne sont pas
permanents. Ils ne sont pas écrits sur la clé USB (ou le DVD) et ils
n’ont pas d’impact sur le système installé par l’installeur.
• Certains logiciels fonctionnent différemment (voire pas du tout) dans
la session live (Timeshift, Flatpak, le Gestionnaire de mises à jour,
l’écran d’accueil ..etc.).
1. Installer Linux Mint

Pour installer Linux Mint sur


votre ordinateur :
1. Faite un double-clic sur
Install Linux Mint.
2. Sélectionnez une langue.
1. Installer Linux Mint

3. Connectez-vous à Internet.
1. Installer Linux Mint

4. Si vous êtes connecté à


Internet, cochez la case pour
l’installation des codecs
multimédia.
1. Installer Linux Mint

5. Sélectionnez un type
d’installation.
1. Installer Linux Mint

6. Sélectionnez votre zone


horaire
1. Installer Linux Mint

7. Sélectionnez l’agencement
de votre clavier
1. Installer Linux Mint

8. Entrez vos détails


d’utilisateur
1. Installer Linux Mint

Your name can be your real name, but it doesn’t have to be. It is only used locally, in the
screensaver and on the login screen.
Votre nom d'utilisateur est votre identifiant sur votre ordinateur. Le nom de votre
ordinateur est utilisé pour identifier l’ordinateur sur le réseau local.
Pour éviter les bogues n’utilisez que des minuscules, et ni accents ni signes de
ponctuation.
Pour protéger vos données personnelles contre les attaques locales (les personnes autour
de vous, ou en cas de vol de votre ordinateur), cochez Chiffrer mon dossier personnel.
*Choisissez un mot de passe robuste.
1. Installer Linux Mint

9. Regardez le diaporama
pendant l’installation.
1. Installer Linux Mint

Quand l’installation est terminée, cliquez sur Redémarrer maintenant.

L’ordinateur commencera alors à s’éteindre et vous demandera de retirer la clé USB (ou le
DVD). Après le redémarrage, votre ordinateur devrait vous montrer un menu de démarrage
ou démarrer votre nouveau système d’exploitation Linux Mint.
2. Installer CentOS

Démarrez la machine virtuelle.


2. Installer CentOS

Sélectionnez "Français French".


Cliquez sur "Poursuivre".
Ensuite, nous aurons l'écran
suivant
2. Installer CentOS

Nous allons commencer à


personnaliser les paramètres en
commençant par
LOCALISATION dans DATE &
HEURE.
Cliquez sur DATE & HEURE.
Maintenant, sélectionnez votre
fuseau horaire. Dans mon cas, je
sélectionne Région en Europe et
Ville en tant que Berlin.
Appuyez sur Terminé après
avoir terminé.
2. Installer CentOS

Le serveur DATE & TIME sera


dans le fuseau horaire Europe /
Berlin. Nous allons ensuite
personnaliser notre presse
KEYBOARD par dessus.
2. Installer CentOS

Ensuite, l'écran suivant


s'affichera. Pour ajouter d'autres
dispositions de clavier, appuyez
sur + icône.
Il montrera la fenêtre
suivante, ajoutez
simplement plus de
langues selon vos besoins.
Dans mon cas, j'ajoute
l'allemand, appuyez
ensuite sur Ajouter
2. Installer CentOS

Il montrera la fenêtre
suivante, ajoutez
simplement plus de
langues selon vos besoins.
Dans mon cas, j'ajoute
l'allemand, appuyez
ensuite sur Ajouter.
2. Installer CentOS

Nous pouvons ensuite


personnaliser les OPTIONS
DE COMMUTATION DE
MISE EN PAGE en
appuyant sur Options:
2. Installer CentOS

Ensuite, vous pouvez


utiliser n'importe quelle
combinaison de touches
pour basculer d'un clavier à
l'autre.
Dans mon cas, j'utilise Alt +
Ctrl.
Après la sélection, appuyez
sur Terminé.
2. Installer CentOS

Appuyez ensuite sur


Terminé
2. Installer CentOS

Nous ajouterons ensuite


SUPPORT LINGUISTIQUE
en le sélectionnant.
2. Installer CentOS

Par défaut, CentOS est


disponible en anglais, nous
pouvons ajouter davantage
de prise en charge
linguistique. De la même
manière que dans mon cas,
j'ajoute l'allemand
allemand avec l'allemand
Deutsch (Luxemberg).
2. Installer CentOS

Ensuite, nous passons de


LOGICIEL à SOURCE
D'INSTALLATION et
sélectionnons le support
d'installation.
2. Installer CentOS
Ensuite, vous verrez que la
source d'installation est le
support d'installation
détecté automatiquement.
Si vous disposez d'une
source d'installation
similaire à une installation
réseau, vous pouvez
indiquer le chemin Sur le
réseau avec et sans proxy
de la configuration du
proxy.
De plus, nous pouvons
ajouter des référentiels
supplémentaires selon nos
choix et besoins.
Après appuyez sur
Terminé.
2. Installer CentOS

Nous procéderons
ensuite à la SELECTION
DE LOGICIEL. Elle est
fournie par défaut avec
l’installation minimale.
2. Installer CentOS

Ensuite, nous pouvons


en ajouter d’autres si
nécessaire, mais dans
mon cas, je n’ai besoin
que d’Installation
minimale (fonctionnalité
de base). Je vais donc
enregistrer les
paramètres en appuyant
sur Terminé.
2. Installer CentOS

Nous passerons ensuite


à SYSTEM, puis à
DESTINATION
D'INSTALLATION.
2. Installer CentOS

Ensuite, si vous avez


besoin d'un schéma de
partitionnement manuel,
vous pouvez
sélectionner l'option Je
configurerai le
partitionnement. Dans
mon cas, je préférerai
Configurer
automatiquement le
partitionnement après
avoir appuyé sur OK.
2. Installer CentOS

Ensuite, nous allons


personnaliser notre
réseau et notre nom
d’hôte en le
sélectionnant.
2. Installer CentOS

En outre, nous
ajouterons le nom d’hôte
sous le nom
[Link],
puis nous
personnaliserons notre
composant Ethernet en
appuyant sur
Configurer.
2. Installer CentOS

L’écran suivant sera


comme ça, maintenant
nous voulons ajouter les
paramètres IPv4 en
sélectionnant les mêmes.
Si vous avez IPv6, vous
l'ajoutez dans les
paramètres IPv6.
2. Installer CentOS

Ensuite, vous pouvez


gérer le réseau
conformément à votre
connexion LAN / WAN.
Dans mon cas, j’utilise
une adresse IP statique.
Je vais donc sélectionner
Manuel.
2. Installer CentOS
Ajoutez ensuite les
entrées selon votre
environnement IP
statique. Dans mon cas,
j’utilise Address en tant
que [Link],
Netmask en tant que
[Link], une
passerelle en tant que
[Link] et des serveurs
DNS en tant que [Link].
[Link] Ces valeurs
peuvent varier votre
environnement réseau.
Après cela, appuyez sur
Enregistrer.
2. Installer CentOS

Ensuite, nous devons


établir la connexion
comme indiqué sur la
capture d'écran ci-
dessous. Il montrera les
détails tels que réglés
par vous précédemment.
Appuyez ensuite sur
Terminé.
2. Installer CentOS

Maintenant que nous


sommes prêts pour le
processus d'installation,
vous pouvez vérifier à
nouveau tous les
paramètres, puis
appuyer sur Commencer
l'installation.
2. Installer CentOS

Il va commencer le
processus d'installation.
Nous devons maintenant
fournir aux paramètres
utilisateur un mot de
passe racine et une
création utilisateur. Je
vais d'abord aller pour le
mot de passe root.
2. Installer CentOS

Suivant Entrez le mot de


passe de votre choix et
appuyez sur Terminé.
2. Installer CentOS

Ensuite, nous allons


passer à USER
CREATION.
2. Installer CentOS
Ensuite, je vais créer un
utilisateur, car dans mon
cas, j'ai utilisé Nom
complet en tant
qu'administrateur, Nom
d'utilisateur en tant
qu'administrateur,
cochez l'option
Demander le mot de
passe pour utiliser ce
compte, puis appuyez
sur Terminé. Bien sûr,
vous pouvez utiliser
n'importe quelle valeur
selon votre choix.
2. Installer CentOS

De plus, ayez de la
patience et attendez la
fin de la configuration.
2. Installer CentOS

Une fois l’installation


terminée, il vous sera
demandé de redémarrer,
appuyez simplement sur
Reboot.
2. Installer CentOS

Next Il s’amorcera et
votre écran de connexion
sera affiché à l’écran.
2. Installer CentOS

Now we are ready to do


login with the users just
created above or we can
use root credentials.
Systèmes de fichier sous inux

La structure du système de fichier


Systèmes de fichier sous Linux
La structure du système de fichier
• /boot Les répertoires :
• /home /dev, /bin, /sbin, /etc et/lib doivent être montés sur la partition racine.
• /root De plus, la racine doit contenir un répertoire /proc vide. Il est utilisé par le
• /tmp noyau pour informer sur le statut du système d'exploitation (processus,
statistiques d'utilisation de la mémoire, etc.).
• /usr
• /usr/local
• /opt
• /var
Systèmes de fichier sous Linux
Contenu du système de fichier
• /bin et /sbin : contiennent les binaires nécessaires au démarrage et les commandes
essentielles
• /dev : fichiers périphériques ou fichiers spécifiques
• /etc : fichiers et répertoires de configuration spécifiques à la machine
• /mnt ou /media : points de montage pour les systèmes de fichiers externes
• /proc : informations du noyau. En lecture seule sauf pour /proc/sys.
• /boot : contient le noyau Linux, le [Link] (carte des symboles du noyau) et les
chargeurs d'amorçage secondaires.
• /home (facultatif) : répertoires utilisateurs, avec, en général, une copie du contenu de
/etc/skel.
• /root : répertoire de l'utilisateur root.
• /var : données variables comme les spool ou les journaux. Les sous-répertoires peuvent être
soit partageables (comme /var/spool/mail) soit non partageables (comme /var/log).
Processus de démarrage Linux
Processus de démarrage Linux
Processus de démarrage Linux
1ère étape : le BIOS

• BIOS = Basic Input/Output system : système élémentaire d'entrée/sortie. C'est un


ensemble de fonctions contenu dans la mémoire morte (ROM) de la carte mère d'un
ordinateur lui permettant d'effectuer des opérations élémentaires lors de sa mise
sous tension.

• Exécute des opérations de vérification de l'intégrité du système.

• Cherche, charge et exécute le programme d'amorçage.

• Il cherche le programme d'amorçage sur un disque dur, une disquette, un CD-Rom ou


une clé USB.

• Une fois le programme d'amorçage trouvé et chargé en mémoire, le BIOS lui donne le
contrôle.

• Simplement, le BIOS exécute la MBR.


Processus de démarrage Linux
2e étape : la MBR

• MBR = Master Boot Record : la zone amorce.

• C'est le premier secteur adressable d'un disque dur. Le plus souvent appelé /dev/hda
ou /dev/sda.

• La taille de cette zone est de 512 bits au maximum. Elle contient :


• le programme d'amorçage se trouve dans les 446 premier bits.
• la table des partitions (les 4 partitions primaires) du disque dur sur les 64 bits
suivants.
• vérification de la validité du MBR dans les 2 derniers bits.

• Il contient une routine d'amorçage dont le but est de charger le système


d'exploitation (ou le « boot loader »/chargeur d'amorçage s'il existe - GRUB ou LiLo)
présent sur la partition active.

• Simplement, le MBR exécute le programme d'amorçage GRUB.


Processus de démarrage Linux

3e étape : le GRUB

• GRUB = Grand Unified Bootloader : un programme d'amorçage de micro-ordinateur.

• Lorsque le micro-ordinateur héberge plusieurs systèmes (on parle alors de multi-amorçage),


il permet à l'utilisateur de choisir quel système démarrer.

• Il présente une interface qui permet à l'utilisateur de choisir quel système d'exploitation
démarrer.

• Si vous avez plus d'un noyau installé sur votre système, il est possible de sélectionner celui
que vous voulez exécuter.

• Il connaît le système de fichiers (ext3, ext4, Btrfs, etc.) utilisé sur le système.

• Simplement, GRUB charge et exécute le noyau sélectionné et l'image initrd (image d'un
système minimal initialisé au démarrage du système = Initial Ram Disk).
Processus de démarrage Linux

4e étape : le noyau

• Monte le système de fichiers racine (« root »). Donc, relie une partition ou un
périphérique à un répertoire, répertoire par lequel les données présentes sur la
partition ou le périphérique sont accessibles.

• Le noyau charge et exécute le programme /sbin/init.

• Comme le programme init est le premier programme a être exécuté par le noyau
Linux, il porte le PID (ID du processus) numéro 1.

• Le initrd permet ainsi d'avoir un système minimal pouvant ensuite charger le


système de fichier principal ou bien des systèmes sans disques. Il peut être instable
d'avoir "en dur" dans le kernel tous les drivers de disques. Pour éviter cela, les
distributions compilent un kernel minimal avec les options de bases puis chargent les
modules obligatoires nécessaires contenus dans l'archive de l'initrd.
Processus de démarrage Linux

5e étape : init

• Il consulte le fichier /etc/inittab pour décider quel niveau d'exécution démarrer.


• Les niveaux d'exécution sont :

• 0 - Arrêt
• 1- Mode mono-utilisateur
• 2 - Mode multi-utilisateur sans serveur applicatif
• 3 - Mode multi-utilisateur avec serveur applicatif
• 4 - Inutilisé ou X11 -> interface graphique selon la distribution
• 5 - X11 -> interface graphique selon la distribution
• 6 - Redémarrage

• Init identifie le niveau d'exécution dans le fichier /etc/inittab et l'utilise pour charger
les programmes associés au niveau.
• En général, une distribution Linux fonctionne sur le niveau 5 ou 3.
Processus de démarrage Linux

6e étape : Runlevel
• Lorsque votre système Linux démarre, vous apercevez (en appuyant sur la touche <ESC> afin de voir la version «
verbeuse » du démarrage) divers services qui sont chargés. Ce sont les programmes du niveau d'exécution sur lequel
votre système fonctionne qui sont chargés à partir du répertoire représentant le niveau d'exécution du système.
• Les répertoires des niveaux d’exécution sont :
• Run level 0 – /etc/rc.d/rc0.d/
• Run level 1 – /etc/rc.d/rc1.d/
• Run level 2 – /etc/rc.d/rc2.d/
• Run level 3 – /etc/rc.d/rc3.d/
• Run level 4 – /etc/rc.d/rc4.d/
• Run level 5 – /etc/rc.d/rc5.d/
• Run level 6 – /etc/rc.d/rc6.d/

• Dans ces répertoires, on retrouve des noms de programme qui commencent par la lettre S et K.
• Ceux qui commencent par la lettre S sont exécutés au démarrage du système (la lettre S pour « startup » = démarrage).
• Ceux qui commencent par la lettre K sont exécutés à l'arrêt du système (la lettre K pour « kill » = arrêt).
• De plus, dans le nom de ces programmes, il y a un chiffre après la lettre S ou K. Ce chiffre indique l'ordre d'exécution de
chaque programme lors du démarrage ou de l'arrêt du système. Par exemple, S12syslog est le 12e programme qui
s'exécutera au démarrage du système.
C. Les Commandes linux
[Link] Commandes linux

La ligne de commande est un moyen simple d'interagir avec un ordinateur.


Le shell interprète les commandes tapées au clavier.
Le prompt, ou l'invite de commande, qui se termine par un $ pour un utilisateur standard
ou un # pour l'administrateur du système (désigné root), indique que le shell attend les
commandes de l'utilisateur.
Le shell est également un langage de programmation que l'on peut utiliser pour lancer des
tâches automatiquement.
Les programmes shell sont appelés par des scripts.
[Link] Commandes linux

Types de shells
On obtient la liste des shells présents sur le système en affichant le fichier /etc/shells :

$ cat /etc/shells

sh : historique, standard, "portable"


csh/tcsh : C Shell
ksh : Korn Shell
bash : Bourn Again Shell Linux, le plus utilisé
[Link] Commandes linux
Les commandes de gestion des répertoires et des fichiers

• pwd (affiche le chemin absolu du répertoire courant)


• ls (liste, affiche les répertoires et les fichiers du répertoire actif)
ls (affiche seulement les noms)
ls toto* (affiche les fichiers commençant par toto)
ls -l (affiche le format long : types + droits + Nbre de liens + ....)
• cd (change directory)
cd chemin (vers le répertoire indiqué)
cd .. (répertoire parent)
cd ~ (répertoire de base)
cd - (répertoire précédent)
cd / (répertoire racine)
[Link] Commandes linux

• cp (copie source vers destination)


cp /home/[Link] /
• mv (move, renomme et déplace un fichier)
mv source destination
mv * dossier (déplace tous les fichiers du répertoire actif vers le répertoire dossier)
• mkdir (créer un répertoire)
mkdir répertoire
rmdir (effacer un répertoire)
rmdir dossier (supprime un répertoire vide)
[Link] Commandes linux

• rm (remove, éfface!!!)
rm -R (supression récursif!!!)
rm fichier
rm -i fichier (interactivement, avec demande de confirmation)
rm -f fichier (avec force, sans demande de confirmation)
rm -r fichier (avec récursivité, avec les sous répertoires)
rm -rf dossier (supprime le répertoire et tous son contenu, sans confirmation)
Notation octale
Partitionnement
PATH
Sticky Bit
Strace
lien matériel
/etc/[Link]
Chroot
PID
etc/shadow
System de fichier
BusyBox
Commandes linux
Un argument représente souvent le chemin dans l’arborescence du système de fichiers. Ce chemin
peut être relatif ou absolu :
− le chemin absolu représente l'arborescence complète à partir de la racine « / ». Un chemin absolu
commence toujours par « / », par exemple /var/log/messages ou /home/maitre/travail ;
− le chemin relatif représente l'arborescence depuis le répertoire courant. Un chemin relatif ne
commence jamais par « / », par exemple ../var/log/messages depuis /home et travail depuis
/home/maitre.
Les interpréteurs de commandes

De nombreux interpréteurs de commandes sont actuellement disponibles.


Voici quelques interpréteurs courants :
• /bin/sh : le « bourne shell » ;
• /bin/bash : le « bourne again shell » ;
• /bin/ksh : le « korn shell » ;
• /bin/csh : le « C shell » ;
• /bin/tcsh : le « Tom's C shell ».

Les interpréteurs disponibles sur un système donné sont listés dans le


fichier /etc/shells.
Commandes linux

cp : pour copier le contenu d’un fichier, syntaxe :


• cp chemin-fichier-source chemin-fichier-destination

mv : pour déplacer ou renommer un fichier, syntaxe :


• mv ancien chemin nouveau chemin

rm : pour supprimer un fichier, syntaxe :


• rm chemin
Commandes linux
ln : pour effectuer un lien sur un fichier. Un lien permet de faire
référence à un fichier donné par plusieurs noms différents. Il existe deux
types de liens sous Unix :
• les liens matériels (hardlink) qui créent des noms différents pour désigner un même
espace sur le disque. Le fichier sera effectivement supprimé lorsque le dernier lien sera
détruit. Syntaxe :
• ln chemin fichier source chemin fichier destination
• les liens symboliques qui sont eux-mêmes de petits fichiers qui contiennent un chemin
d’accès vers un autre fichier : ils peuvent donc pointer vers un fichier qui n’existe pas. La
différence essentielle est qu’un lien symbolique peut pointer vers un fichier appartenant à
un autre système de fichiers. Syntaxe :
• ln -s chemin fichier source chemin fichier-destination
Les filtres

Les filtres sont des commandes qui, à partir d'un flux d'entrées donné, effectuent des
traitements avant d'afficher un résultat en sortie. On les nomme également commandes de
traitement de flux.

La commande cat affiche seulement le contenu du fichier /etc/passwd sans


altérer le fichier original :
• cat /etc/passwd

La commande nl affiche en sortie les lignes du fichier /etc/passwd en les numérotant sans
altérer le fichier original :
• nl /etc/passwd
Les filtres

Voici une liste des filtres les plus courants :


 cat : pour concaténer le contenu d’un fichier et l’afficher ensuite sur la sortie standard,
qui est par défaut l’écran. La commande cat sans argument (nom de fichier) attend les
suites de caractères tapés sur l’entrée standard (le clavier) :
• cat /etc/passwd
 cut : pour n’afficher que certaines colonnes (champs) d’un fichier donné. Cette
commande utilise alors comme option le séparateur de champs et le numéro du champ à
afficher pour chaque ligne. S’il n’est pas spécifié, le séparateur de champs par défaut est
le caractère de tabulation.
La commande ci-dessous permet d’afficher les noms d’utilisateurs du système. On utilise
comme séparateur de colonnes le caractère « : » et on sélectionne la première colonne
du fichier /etc/password.
• cut -d : -f1 /etc/passwd
Les filtres
 expand : pour convertir les tabulations d’un fichier en espaces. Le processus inverse, conversion
des espaces en tabulations, peut être effectué avec la commande unexpand ;
 fmt : pour formater les paragraphes dans un fichier ;
 grep : pour afficher les lignes contenant une occurrence de caractères donnée, syntaxe :
• grep CHAINE chemin
Pour afficher toutes les lignes contenant la chaîne de caractères
« false » :
• grep false /etc/passwd
CHAINE peut être une expression régulière. Pour afficher toutes les lignes
qui commencent par la chaîne « root » :
• grep ^root /etc/passwd
L'option -v permet de n’afficher que les lignes NE contenant PAS
l'expression régulière mentionnée. Pour afficher les lignes ne
commençant pas par la chaîne « root » :
• grep -v ^root /etc/passwd
Les filtres

 head : pour afficher les premières lignes d'un fichier, syntaxe :


• head -N chemin
Sans option, head affiche les 10 premières lignes d'un fichier. Pour afficher les quatre premières
lignes du fichier /etc/passwd :
• head -4 /etc/passwd
 sed : utilitaire de traitement de données très puissant, capable d'utiliser les expressions
régulières. Pour substituer toute « chaîne1 » dans le fichier « chemin1 » avec « chaine2 » et
envoyer le résultat dans le fichier « chemin2 » :
• sed 's/chaine1/chaine2/g' chemin1 > chemin2
 regexp : permet de tester une expression régulière en lui fournissant une chaîne de test. Cela
permet de vérifier les expressions régulières employées avec les commandes classiques ls,
sed, awk, etc.
Les filtres
 sort : trie le contenu d'un fichier par ligne :
• option -n pour effectuer un tri numérique,
• option -r pour effectuer un tri décroissant ;
 split : pour découper un fichier en plusieurs. On peut spécifier une taille de fichiers en option.
Par exemple, la commande pour créer les fichiers petitfichieraa, petitfichierab… d’une taille
maximum de 1,4 Mo (taille d’une disquette) est :
• split -b 1.4m /home/maitre/grosfichier petitfichier
 tac : inverse de la commande cat, affiche le contenu du fichier dans l’ordre inverse des lignes ;
 tail : pour afficher les dernières lignes d'un fichier, syntaxe :
• tail -N chemin
Sans option, tail affiche les 10 dernières lignes d'un fichier.
Pour afficher les 4 dernières lignes du fichier /etc/passwd :
• tail -4 /etc/passwd
Les filtres

 tr : pour effectuer des conversions de caractères, par exemple minuscule/majuscule, retour


chariot/passage à la ligne ...) ;
 uniq : affiche les lignes sans doublons ;
 wc : affichent des statistiques sur un fichier, nombre de caractères, nombre de mots et nombre
de lignes.
 -b : affiche seulement le nombre de caractères ;
 -w : affiche seulement le nombre de mots ;
 –l : affiche seulement le nombre de lignes.
Recherche de fichier et répertoire
(find, locate et which)

Nous souhaitons retrouver au sein de notre arborescence, un ou


plusieurs fichiers. Les commandes locate, find et which vont nous
permettre d’effectuer cette tâche.
find

La commande find, contrairement à locate va chercher le fichier au


sein de l’arborescence. La syntaxe est la suivante :
• find répertoire -name nom_du_fichier
o๠répertoire désigne le répertoire dans lequel on recherche le
fichier, s’il on veut rechercher un fichier dans toute l’arborescence, ce
qui est très long ! On peut remplacer répertoire par /, cela signifie
qu’on effectue la recherche à partir de la racine et donc dans toute
l’arborescence. Pour faire une recherche dans le répertoire courant on
utilise le ., comme dans l’exemple suivant :
• find . -name [Link]
locate
La commande locate permet de trouver très rapidement un fichier.
Contrairement à ce que l’on pourrait penser locate ne vas pas
chercher le fichier au sein de l’arborescence, mais au sein d’une base
de données contenant la liste des fichiers existants. De ce fait, il se
peut que lorque vous venez de créer un fichier ou un répertoire que
ce dernier ne soit pas dans cette base de données, il faut pour cela
réactualiser la base de données à l’aide de la commande updatedb.
Ce qui est a fortiori un inconvénient. à€ noter que le système sur
lequel vous travaillez s’occupe de mettre à jour cette base de
données. La fonction locate fonctionne comme suit :
• locate nom_de_ficher
which

La commande which permet de localiser une commande de votre


système.
Regardons l’exemple suivant : dans quel répertoire se trouve la
commande cd
Tubes et les redirections
Tubes et les redirections

De nombreux programmes UNIX donnent leurs informations à l'écran. Par commodité, il est
souvent nécessaire de sauver ces données dans un fichier pour pouvoir ensuite les voir en totalité
ou les traiter.

Toutes les commandes utilisent des canaux d'entrées/sorties pour lire des données ou tranmettre
des informations. Par défaut, le canal d'entrée est le clavier et le canal de sortie est l'écran. Mais il
est très facile de substituer au canal d'entrée ou au canal de sortie un fichier.
Tubes et les redirections
Redirection de sortie : Les symboles > et >>
Le petit symbole magique > (appelé chevron) permet de rediriger le résultat de la commande
dans le fichier de votre choix.
• Dmesg > fichier
Le double chevron >> sert lui aussi à rediriger le résultat dans un fichier, mais cette fois à la fin de
ce fichier. Avantage : vous ne risquez pas d'écraser le fichier s'il existe déjà. Si le fichier n'existe pas,
il sera créé automatiquement.
• Echo ‘’Mon message de fin’’ >> fichier

Résumé:
Nous venons de découvrir deux flux de redirection dans des fichiers :
> : redirige dans un fichier et l'écrase s'il existe déjà ;
>> : redirige à la fin d'un fichier et le crée s'il n'existe pas.
Tubes et les redirections
Redirection d'une entrée : Le symbole <
Placez-vous dans votre répertoire de login. Ensuite tapez wc .bashrc : Que fait cette commande ?
(man wc vous donnera l'aide en ligne de la commande wc). Maintenant tapez wc < .bashrc. Quelle
est la différence ? En fait le shell a d'abord listé le contenu de .bashrc et ensuite a appelé la
commande wc sur ce listing.

Le canal d'erreur :
Essayez d'exécuter la commande wc trtrer. Le fichier trtrer n'existe pas !!! Ce message est affiché
non sur le canal d'entrée mais sur le canal d'erreur. Pour voir la différence essayer de rediriger ce
message dans un fichier nommé erreur par la commande wc trtrer > erreur. Regardez le contenu
du fichier erreur (avec la commande more par exemple). Maintenant tapez
• wc trtrer 2> erreur
Regardez le résultat.
Les permissions de fichiers et
de répertoire
Les permissions de fichiers et de
répertoire

Linux permet de spécifier les droits dont disposent les utilisateurs sur un fichier ou un répertoire
par la commande chmod.
On distingue trois catégories d'utilisateurs :
− u : le propriétaire (user) ;
− g : le groupe ;
− o : les autres (others).
Ainsi que trois types de droits :
− r : lecture (read) ;
− w : écriture (write) ;
− x : exécution ;
− - : aucun droit.
Les permissions de fichiers et de
répertoire

Exemples :
− pour donner le droit de lire le fichier [Link] au propriétaire du fichier :
• chmod u+r [Link]
− pour autoriser une personne du groupe propriétaire du fichier à modifier le fichier :
• chmod g+w [Link]
− pour autoriser les autres utilisateurs à exécuter le fichier [Link] :
• chmod o+x [Link]

Les droits d'accès peuvent aussi s'exprimer en notation octale.


Notion octale

Sur les systèmes Unix/Linux/BSD, les droits sur les fichiers sont définis pour le
propriétaire, pour les utilisateurs appartenant au groupe et pour les autres utilisateurs.
Ils sont représentés – par exemple lorsque l’on invoque la commande ls -l – par une
suite de 3 lettres (r,w et x pour respectivement read/lire, write/écrire, execute/exécuter),
mais peuvent être représentés par des chiffres, par exemple comme suit :

rw-r--r-- est la même chose que 644


Notion octale
Il s’agit de la représentation octale. Pour être expliquée, il faut partir de la forme binaire
des droits, suivant ce schéma :

001 = 1
010 = 2
011 = 3
100 = 4
101 = 5
110 = 6
111 = 7
Notion octale
On peut associer chaque triplet aux trois entités (propriétaire, groupe, autres) des droits,
ainsi, un fichier ayant le droit du propriétaire en lecture et écriture (r w -) sera écrit 110,
1 pour le r, 1 pour le w et 0 pour le flag x qui n’est pas attribué. Le procédé est le même
pour les deux autres triplets.
Pour l’exemple complet, prenons : r w – r – – r – -, soit 110 100 100.
Ensuite on part du principe que l’on ajoute les chiffres des valeurs binaires des triplets
pour obtenir la valeur octale.
En continuant sur l’exemple précédent : 110 en binaire vaut 6 en décimal, 100 vaut 4,
ainsi nous avons 6 – 4 – 4, simplifié en 644. Notre fichier a les droits 644.

r w - r - - r - - = 110 100 100 = 644


rw-rw-r-- = 100 100 100 = 664
r-xr-xr-x = 101 101 101 = 555
rwxr-xr-- = 111 101 000 = 754
Les permissions de fichiers et de
répertoire
On peut utiliser la notation octale pour les droits avec la commande chmod,
cela permet de positionner plusieurs types de droits en une seule
commande.
Exemples :
attribuer les droits rw------- à tous les fichiers
chmod 600 *
attribuer les droits rw-r--r-- à tous les fichiers :
chmod 644 *
attribuer les droits rwxr-x--- à tous les fichiers :
chmod 750 *
Les permissions de fichiers et de
répertoire
Expression des droits sur les fichiers en notation octale

Droit Notation octale


--- 0
--x 2
-w- 3
-wx 4
r-- 5
r-x 6
rw- 7
rwx 8
Les permissions de fichiers et de
répertoire

Lorsqu’on crée un nouveau fichier, par exemple avec la commande touch, ce fichier
possède certains droits par défaut. La commande umask permet de changer ces droits par
défaut. Les droits sont indiqués de façon « inverse » en notation octale pour les droits de
type r et w seulement.
Pour créer des fichiers en mode rw-r--r-- :
umask 022
Pour créer des fichiers en mode ------- :
umask 666
Les permissions de fichiers et de
répertoire

Il existe trois droits spéciaux, SUID, SGID et Sticky Bit. Ils peuvent être
positionnés par la commande chmod (premier groupe de droits exprimés en
octal) :
 SUID (Set User ID) : lorsque le bit SUID est positionné, une commande se lancera avec
l'UID de son propriétaire, ce qui permet d'acquérir ses droits durant l'exécution de la
commande : par exemple la commande /usr/bin/passwd permet d’acquérir les droits de
root pour modifier le fichier /etc/shadow.
Le bit SUID est positionné par l’option s de la commande chmod, ou bien en
positionnant à « 1 » le premier bit du groupe des droits spéciaux (d’où la valeur 4 de
l’exemple suivant) :
• chmod 4755 /bin/cat
• chmod u+s /bin/grep
Les permissions de fichiers et de
répertoire

 SGID (Set Group Id) : ce droit fonctionne de la même façon que le droit SUID en ce qui
concerne les exécutables mais en donnant le droit du groupe.
Le SGID peut aussi être attribué à un répertoire : dans ce cas tout fichier créé dans un
répertoire portant le SGID aura comme groupe propriétaire le groupe du répertoire.
Ce bit est positionné par l'option s de la commande chmod, ou bien en positionnant à
« 1 » le deuxième bit du groupe des droits spéciaux (d’où la valeur « 2 » de l’exemple
suivant) :
• chmod 2755 /home/lpi102
• chmod g+s /home/lpi102
Les permissions de fichiers et de
répertoire

 Sticky Bit : si le Sticky Bit est positionné sur un répertoire, seul le propriétaire d'un
fichier contenu dans ce répertoire pourra le renommer ou le supprimer, mais tous les
utilisateurs pourront y avoir accès.
Le Sticky Bit est par exemple toujours positionné sur les répertoires /tmp ou /var/mail/.
Ce bit est positionné par l'option t de la commande chmod, ou bien en positionnant à
1 le troisième bit du groupe des droits spéciaux (d’où la valeur 1 de l’exemple) :
• chmod 1666 /home/lpi/partagé
• chmod o+t /home/lpi/partag

Historiquement, le Sticky Bit positionné sur un fichier indiquait au système de le maintenir en


mémoire à la suite d’un premier chargement pour des questions d’efficacité.
Modifier le propriétaire et le groupe sur les
fichiers et les répertoires
Modifier le propriétaire et le groupe sur les
fichiers et les répertoires

Linux permet de spécifier le propriétaire d’un fichier ou d’un répertoire par la commande
chown.
chown le_propriétaire /home/user/monfichier

Linux permet de spécifier le groupe d’un fichier ou d’un répertoire par la


commande chgrp.
chgrp le_groupe /home/user/monfichier
Les caractères spéciaux
Les caractères spéciaux

Il est nécessaire de bien identifier ces caractères particuliers pour éviter des effets
«étranges » lors de l’utilisation des commandes.
Certains caractères ont une signification particulière sur une ligne de commande :
• commande_1 && commande_2
− || : placé entre deux commandes, permet d’exécuter la deuxième
commande si et seulement si la première a renvoyé une erreur :
• commande_1 || commande_2
&> : redirige dans un fichier la sortie d’une commande, ainsi que les
erreurs éventuelles :
• commande &> le_fichier
Les caractères spéciaux

− $ : permet d’accéder au contenu d'une variable ;


− \ : placé avant un caractère spécial, permet que celui-ci soit interprété comme un simple
caractère ;
− " (guillemets) : placé de part et d’autre d’une chaîne de caractères, permet que tous les
caractères spéciaux que celle-ci contient soient ignorés, à l’exception de « $ », « \ » et « ` » :
• Un='a trop de travail’
Deux="Nicolas $Un"
echo $Deux
-> Nicolas a trop de travail
Les caractères spéciaux
- ' (apostrophe) : placée de part et d’autres d’une chaîne de caractères, permet que tous les
caractères spéciaux que celle-ci contient soient ignorés.
• Un='a très faim’
Deux='Nicolas $Un’
echo $Deux
-> Nicolas $Un

- ` (apostrophe culbutée) placée de part et d’autre d’une commande, force l’exécution de


cette commande sur la ligne de commande ellemême :
• Un=`pwd`
echo $Un
/home/nicolas/travail/
Les caractères spéciaux

− [[ ]] ou { } permettent d'effectuer une opération simple sur la ligne de commande


(addition, soustraction, multiplication, division entière).
− Les caractères suivants sont utilisés pour remplacer un ou plusieurs
caractères (wildcards) :
− * : pour remplacer aucun, un ou plusieurs caractères ;
− ? : pour remplacer un et un seul caractère ;
− [a-z] : pour remplacer un caractère ayant l’une des valeurs indiquées
dans l’intervalle « a-z » ;
− [^a-z] : pour remplacer un caractère différent de toutes les valeurs
indiquée dans l’intervalle « a-z ».
Les variables et les variables
d'environnement
Les variables et les variables d'environnement

Les interpréteurs de commande Linux distinguent deux types de variables :


les variables simples et les variables d'environnement. Les variables d'environnement
ont la particularité d'être connues de toutes les commandes lancées depuis l'interpréteur
de commande courant.
L’affectation de variables se fait comme suit : variable="valeur".

Il est important de noter qu’avec bash, il ne doit pas y avoir d’espace avant et après le signe « = ».
L’accès au contenu s’effectue en ajoutant le caractère $ au début du nom de la variable ou par
l'expression ${nom-de-la-variable} :
root@srv$echo $variab
abcdef
root@srv$echo ${variab}
abcdef
root@srv$
Les variables et les variables d'environnement

Nous venons de définir une variable simple. Pour la transformer en variable d’environnement,
on utilise la commande export :
export variab="abcdef«
La commande env seule, sans option ni argument, permet d'afficher toutes les variables
d'environnement définies.
La commande set affiche la liste complète des variables définies (variables simples ou
variables d'environnement).
La commande unset permet de détruire une variable.
unset variable
Les variables et les variables d'environnement

Voici certaines variables spéciales de bash :


− $$ : le numéro de processus (PID) de l’interpréteur de commande ;
− $! : le numéro de processus (PID) de la dernière commande lancée en
tâche de fond (c'est-à-dire avec l’opérateur « & ») ;
− $? : la valeur retournée par la dernière commande ;
− $ : la liste des options avec lesquelles l’interpréteur de commande a été
appelé.
Les variables et les variables d'environnement

Dans le cadre d’une commande lancée à partir d'un fichier script :


− $# : désigne le nombre de paramètres accompagnant l’appel du script ;
− $@ et $* : désignent l’ensemble des paramètres ;
− $1, ..., $9, ${10}, ${11}, ... : désignent la valeur de chaque paramètre ;
− $0 : désigne le nom (le chemin) du script.

Plusieurs variables sont définies au démarrage de l’interpréteur de commandes. La définition


de ces variables peut se trouver dans les fichiers lus par l’interpréteur au démarrage comme
le fichier /etc/profile pour tous les utilisateurs du système ou dans les fichiers personnels de
l'utilisateur
~/.profile, ~/.bash_profile, etc.
UTILISATION DE L’ÉDITEUR « VI »
Utilisation de l’éditeur « vi »

L’éditeur « vi » est présent depuis les toutes premières versions d’Unix. Malgré
une ergonomie parfois étrange, il reste très utilisé par les administrateurs,
essentiellement pour des raisons pratiques : par exemple, il fonctionne avec
n’importe quel terminal.
Utilisation de l’éditeur « vi »

L’éditeur vi se trouve systématiquement sur toutes les versions de Linux et


est surtout utile lorsque l’on intervient sur une machine à distance. Il
fonctionne en deux modes différents, le mode édition et le mode commande.
On bascule de l’un à l’autre par la commande esc.

Pour ouvrir un fichier avec l’éditeur vi :


• vi mon_fichier
Utilisation de l’éditeur « vi »

Pour se déplacer dans le texte :


− l : vers la droite ;
− h : vers la gauche ;
− j : vers le haut ;
− k : vers le bas ;
− L : se déplace sur la dernière ligne de la page courante ;
− H : se déplace sur la première ligne de la page courante ;
− nG : se déplace sur la ligne « n » du fichier courant.
Utilisation de l’éditeur « vi »

Pour ajouter ou supprimer du texte :


− i : ajoute le texte à partir de la position du curseur ;
− A : ajoute le texte à partir de la fin de la ligne ;
− O : crée une nouvelle ligne ;
− R : remplace le texte ;
− r : remplace le caractère courant ;
− dd : supprime la ligne courante, 4dd supprime 4 lignes à partir de la ligne courante ;
− x : supprime le caractère courant, 5x supprime 5 caractères.
Utilisation de l’éditeur « vi »

Pour rechercher du texte : /texte_cherché

Pour substituer du texte :

− :ligne_début,ligne_fin/chaine1/chaine2/g : substitue la chaine2 à la chaine1 entre les


lignes ligne_début et ligne_fin sans demande de confirmation ;

− :ligne_début,ligne_fin/chaine1/chaine2/c : substitue la chaine2 à la chaine1 entre les


lignes ligne_début et ligne_fin avec demande de confirmation.
Utilisation de l’éditeur « vi »

Pour annuler la dernière commande : u

Pour sauvegarder le fichier :


− :wq (ou ZZ) : sauvegarde le fichier et quitte ;
− :w son_fichier : sauvegarde dans le fichier son_fichier ;
− :q! : quitte sans sauvegarde ;
− :w! : force la sauvegarde lorsque le fichier est en lecture seule ;
− :e nouveau_fichier : sauvegarde le fichier courant et édite le fichier_fichier ;
− :e! nouveau_fichier : édite le fichier nouveau_fichier sans sauvegarder le fichier courant.
LE GESTIONNAIRE DE PAQUET
LE GESTIONNAIRE DE PAQUET
Il existe plusieurs types d’installation du système d’exploitation Linux selon l’utilisation
prévue du poste. Les bons choix effectués lors de l’installation facilitent la maintenance et la
gestion d’un poste de travail.

En général, une installation du système d’exploitation Linux passe par les étapes suivantes :
1) Démarrage de l’installation, avec choix de la langue d’installation et du type de clavier.
L’installation peut être effectuée à partir du système local lui-même (cédérom ou
disquette) ou à partir du réseau (démarrer avec un système minimal à partir d’une
disquette ou d’un cédérom qui permettra de configurer l’accès réseau). Les fichiers
d’installation eux-mêmes se trouvent sur une autre machine du réseau : le serveur
2) Partitionnement du disque dur : le schéma de partitionnement dépendra de la taille du
disque ainsi que du type d’utilisation du poste. Les outils de partitionnement intégrés
dans l’interface d’installation peuvent être disk druid, fips, fdisk, sfdisk ou cfdisk selon
les distributions
LE GESTIONNAIRE DE PAQUET

3) Choix des paquetages à installer


4) Configuration de l’interface graphique : choix des cartes graphiques, des gestionnaires
de fenêtres et paramétrage de l’affichage. L’installation de la souris s’effectue également
à cette étape
5) Configuration du réseau local : installation des cartes réseaux. Configuration réseau du
poste
6) Choix du fuseau horaire
7) Configuration de l’imprimante
8) Définition du mot de passe du super-utilisateur (root) : la création éventuelle des
premiers utilisateurs peut être effectuée lors de cetten étape
9) Création de la disquette de démarrage
10) Création de la disquette de démarrage
Le gestionnaire de paquetage Debian
Le système de gestion de paquetage Debian offre deux outils de bases pour l’installation et
la suppressions des paquetage Debian : DPKT (Debian package tool) et APT (Advanced
package tool). L’extension des fichiers paquetage Debian est .deb.

a) DPKG
DPKG est l’outil de gestion de paquetage pour la distribution Debian. Il permet d’installer, de
désinstaller, de visualiser, de configurer et de construire des paquetages Debian. Les options
courantes de la commande dpkg sont :
-i [Link] : installe l’application [Link].
-r [Link] : désinstalle l'application [Link].
-l | grep appli : cherche si le paquetage appli est installé. Sans le grep, liste tous les paquetages.
-L nom-application : liste les fichiers du paquetage nom-application (s’il est installé) et leur
emplacement.
--unpack : permet de désarchiver mais de ne pas effectuer l’opération de configuration du
paquetage.
Le gestionnaire de paquetage Debian
La commande dpkg-reconfigure permet de reconfigurer un paquetage déjà installé.
Les options contrôlant le comportement de la commande dpkg sont décrites dans
le fichier /etc/dpkg/[Link].
La base de données des paquetages Debian se trouve dans l’arborescence
/var/lib/dpkg.

b) apt-get
Le système de gestion de paquetages Debian est doté d'un autre outil de gestion
avancé appelé APT (Advanced Package Tool). APT utilise toujours la commande
dpkg mais ajoute des fonctionnalités supplémentaires : la définition de la source
des applications à installer (disques locaux, cédérom ou sur Internet par le
protocole HTTP ou FTP) et la gestion des dépendances.
Le gestionnaire de paquetage Debian

La définition des sources des applications à installer s’effectue dans le fichier


/etc/apt/[Link].
Voici un exemple du contenu de ce fichier :
# See [Link](5) for more information, especialy
# Remember that you can only use http, ftp or file URIs
# CDROMs are managed through the apt-cdrom tool.
deb [Link] stable main contrib nonfree
deb [Link] stable/non-US main
contrib non-free
deb [Link] stable/updates main contrib nonfree
Le gestionnaire de paquetage Debian

Les options de fonctionnement générales de la commande apt sont décrites dans le


fichier [Link]. Le fichier de configuration principal se trouve dans
/etc/apt/[Link] (ou parfois /etc/[Link]), les options personnelles peuvent être
modifiées dans un fichier [Link] se trouvant dans le répertoire home de
l’utilisateur.
apt-get se connecte à tous les sites indiqués dans /etc/apt/[Link], et recherche
la liste des programmes disponibles. Les options de base de la commande apt sont:
- apt-get install nom-paquetage : installe le paquetage nom-paquetage.
- apt-get remove nom-paquetage : désinstalle le paquetage nom-paquetage.
- apt-get --purge remove nom-paquetage : désinstalle nom-paquetage et ses
fichiers de configuration.
Le gestionnaire de paquetage Debian

- apt-get install nom-paquetage1 nom-paquetage2- : installe nompaquetage1 et


désinstalle nom-paquetage2.
- apt-get remove nom-paquetage1 nom-paquetage2+ : désinstalle
nompaquetage1 et installe nom-paquetage2.
- apt-get --reinstall nom-paquetage1 : réinstalle le paquetage nompaquetage1.
- apt-get update : met à jour la liste des paquetages disponibles.
- apt-get upgrade : met à jour tous les paquetages pouvant être mis à jour
- apt-get -u upgrade : affiche en plus la liste des paquetages qui vont être mis à
jour.
- apt-get dist-upgrade : met à jour le système tout entier (nouvelle version de la
Debian)
Le gestionnaire de paquetage Debian
- apt-get source nom-paquetage : télécharge le paquetage source nompaquetage.
- apt-get -b source nom-paquetage : télécharge le paquetage source nompaquetage et le
compile ensuite.
- apt-get build-dep nom-paquetage : télécharge les dépendances du paquetage source nom-
paquetage qui va être compilé.
D'autres commandes de la famille apt existent. Elles permettent d'avoir des informations sur les
paquetages. Voici les options courantes de ces commandes :
- apt-show-versions -u : affiche une liste des paquetages pouvant être mis à jour.
- apt-cache search foobar : recherche dans la liste des paquetages disponibles les
occurrences de foobar.
- apt-cache show nom-paquetage : affiche la description de nom-paquetage.
- apt-cache depends package : montre les dépendances de package.
- apt-file search nom-fichier : affiche le nom du paquetage qui fournit nom-fichier.
- apt-file list package : affiche le contenu de package.
Le gestionnaire de paquetage Debian

a) aptitude
Le programme aptitude est une interface en mode texte pour la gestion des paquetages
Debian. Il permet à l’utilisateur de connaître la liste des paquetages et de réaliser des tâches
d’administration comme l’installation, la mise à jour et la suppression des paquetages.
Le programme aptitude fonctionne en mode interactif ou à partir de la ligne de commande.
Le gestionnaire de paquetage RPM et YUM

c) RPM (Red Hat Package Manager)


RPM est utilisé originellement par la distribution Red Hat mais actuellement employé par
bon nombre de distributions.
La gestion des paquetages est principalement réalisée par la commande rpm. RPM stocke
sa base de données dans le répertoire /var/lib/rpm. Les noms des paquetages au format
RPM respectent souvent la syntaxe [Link].
Exemple : [Link]
Le gestionnaire de paquetage RPM et YUM

Voici les options courantes de la commande RPM :


-i (ou --install) : installe un paquetage.
-U (ou --update) : met à jour un paquetage déjà installé ou l’installe s’il n’est pas encore
présent dans le système.
-e (ou --erase) : désinstalle un paquetage.
-q (ou --query) : envoie une requête sur un paquetage afin d'afficher des informations.
-V (ou --verify) : vérifie l’intégrité d’un paquetage.
-F (ou --freshen) : met à jour un paquetage déjà installé.
--version : affiche la version de la commande rpm.
--help : affiche les options de la commande rpm.
Le gestionnaire de paquetage RPM et YUM

Options à utiliser avec l'option -q (ou --query) :


- c : affiche la liste des fichiers de configuration d'un paquetage donné.
- f : affiche le nom du paquetage auquel appartient un fichier donné.
- i : affiche les informations relatives à un paquetage.
- l : affiche tous les fichiers et répertoires relatifs à un paquetage.
- p : spécifie que la requête est spécifique au fichier du paquetage.
- b : crée un paquetage rpm à partir d'un répertoire contenant les fichiers sources.
--rebuild : crée un paquetage à partir d'un fichier de source rpm.
--requires PACKAGE : pour connaître la liste des paquetages dépendants d’un paquetage.
Le gestionnaire de paquetage RPM et YUM

Les options spéciales :


--nodeps : installe un paquetage sans se soucier des dépendances ;
--force : force la mise à jour ;
--import : importe le fichier de signature d'un paquetage ;
--checksig : vérifie l'authenticité du paquet par sa signature ;
h : ajoute l'état d'avancement d'un processus en cours ;
v : mode bavard ;
a : applique l'option à tous les paquetages installés.
Le gestionnaire de paquetage RPM et YUM

Le fichier rpmrc contrôle les actions de la commande rpm. Il permet de définir l’architecture
machine et le système sur lequel la commande rpm s’exécute. Il contient également des
informations allant du chemin des bases de données « rpm » jusqu’aux noms des personnes
ayant développé les paquetages.
Plusieurs fichiers rpmrc sont présents sur le système, /usr/lib/rpm/rpmrc, /etc/rpmrc ainsi
que des fichiers rpmrc personnalisés dans le répertoire home de l’utilisateur. Ils sont traités
dans l’ordre énoncé précédemment, les différentes options étant modifiées par les derniers
fichiers considérés.
Le gestionnaire de paquetage RPM et YUM

Le contenu final est affiché par l’option –showrc de la commande rpm.


rpm --showrc
ARCHITECTURE AND OS:
build arch : i586
compatible build archs: i686 i586 i486 i386 noarch
build os : Linux
compatible build os's : Linux
install arch : i686
install os : Linux
compatible archs : i686 i586 i486 i386 noarch
compatible os's : Linux
RPMRC VALUES:
macrofiles : /usr/lib/rpm/macros:/usr/lib/rpm/i686-
linux/macros
Le gestionnaire de paquetage RPM et YUM

La base de données des paquetages RPM se trouve dans l’arborescence /usr/lib/rpm.


Le répertoire /usr/lib/rpm/ contient également les raccourcis des commandes les plus
utilisées dans le processus de création des paquetages comme la commande patch. Ces
commandes se trouvent dans le fichier macros.
On peut extraire des données d’un paquetage RPM sans l’avoir installé. Cela peut être utile
pour récupérer le code source d’un paquetage ou extraire des polices ou d’autres données.
Pour accomplir cette tâche on utilise la commande rpm2cpio qui prend comme seul
argument le fichier RPM. Le résultat est envoyé vers la sortie standard qui peut être
redirigée vers une archive cpio :
rpm2cpio [Link] > [Link]
On peut ensuite utiliser la commande cpio, avec l’option –i pour extraire les fichiers et
–make-directories pour créer des répertoires :
cpio –i –make-directories [Link]
Le gestionnaire de paquetage RPM et YUM

Le résultat est une extraction des fichiers de l’archive cpio dans le répertoire courant. Ce
sera une série de sous-répertoires qui imitent la structure de l’arborescence Linux à savoir
usr, lib, etc et ainsi de suite, ou bien une archive tar contenant du code source.

b) YUM (Yellow dog Updater Modified)


YUM est un outil permettant l’installation, la mise à jour et la suppression des paquetages
rpm.
YUM gère les dépendances entre les paquetages. Il trouve ces paquetages sur différentes
sources appelées dépôts : des fichiers images ISO Red Hat, le réseau Red Hat, le site Dags,
etc.
La configuration de YUM se fait à travers le fichier /etc/[Link] qui contient deux types de
sections :
- [main] : définit les options globales de configuration.
- [repository] : définit la configuration pour chaque dépôt.
Le gestionnaire de paquetage RPM et YUM

Des fichiers de configuration supplémentaires sont également lus à partir des répertoires
configurés par l’option reposdir, du fichier [Link], dont la valeur par défaut est le
répertoire /etc/yum/repos.d.
Les options de base de la commande yum sont :
- yum install paquetage(s) : installe la dernière version d'un paquetage ou d’un groupe de
paquetages en s'assurant que toutes les dépendances sont satisfaites.
- yum update paquetage(s) : met à jour les paquetages indiqués. Si aucun nom de
paquetage n'est fourni avec la commande, update met à jour tous les paquetages
installés. Lors de la mise à jour des paquetages, yum s'assure que toutes les
dépendances sont satisfaites.
- yum remove paquetage(s) ou yum erase paquetage(s) : supprime du système le(s)
paquetage(s) indiqué(s), ainsi que tous les paquetages qui en dépendent.
Le gestionnaire de paquetage RPM et YUM

- yum search chaine : cherche des paquetages dont la description, le résumé, le nom, ou le
nom de l'empaqueteur, contiennent la chaîne indiquée. Très pratique pour chercher un
paquetage quand on n’en connait pas le nom mais que l’on connaît quelques mots clés
s’y rapportant.
- yum list : affiche diverses informations sur les paquetages.
La commande list peut prendre plusieurs arguments :
- yum list [all | glob_exp1] [glob_exp2] [...] : affiche tous les paquetages disponibles et
installés ;
- yum list available [glob_exp1] [...] : affiche tous les paquetages disponibles dans le(s)
dépôt(s) pouvant être installés.
- yum list updates [glob_exp1] [...] : affiche tous les paquetages dont des mises à jour sont
disponibles dans le(s) dépôt(s).
- yum list installed [glob_exp1] [...] : affiche les paquetages mis à jour.
Système de fichiers
A. Disques durs et partitionnement

Un disque dur est composé de plateaux reliés à un moteur central, avec des têtes de lecture
de part et d’autre de chacun des plateaux. Sur chaque plateau se trouvent des pistes
cylindriques découpées en secteurs. L’adressage d’un secteur est une référence au cylindre,
à la tête de lecture utilisée, à la piste, et enfin au secteur.

À l’installation, un disque dur n’est ni partitionné, ni formaté. Partitionner signifie définir sur
le disque un ou plusieurs espaces, ou partitions, et formater signifie préparer une partition à
recevoir des informations en utilisant un système de fichiers défini.
A. Disques durs et partitionnement

a) Les partitions
Une partition est définie par son type, son emplacement de début de partition et enfin soit
sa taille, soit son emplacement de fin de partition. Un partitionnement est réversible (non
physique).
Une seule partition est activée à la fois au niveau du BIOS : cette activation indique où le
BIOS doit aller chercher le noyau du système d’exploitation pour le démarrage.
Il existe trois sortes de partitions :
- les partitions principales : leur nombre est limité à quatre et elles supportent tous types
de systèmes de fichiers;
- la partition étendue : elle ne peut contenir que des partitions logiques et ne peut pas
recevoir de systèmes de fichiers. Elle ne peut exister que s’il existe une partition
principale;
- les partitions logiques : elles sont contenues dans une partition étendue. Elles ne sont
pas limitées en nombre et acceptent tous types de systèmes de fichiers
A. Disques durs et partitionnement

b) Organisation des partitions sous Linux


Les descripteurs de disques durs dans le répertoire /dev commencent par hd pour les
périphériques de type IDE ou par sd pour les périphériques de type SCSI. Une lettre
additionnelle est ajoutée au descripteur pour désigner le périphérique.
Il y a généralement deux contrôleurs IDE en standard sur un PC, chaque contrôleur
supportant deux périphériques (disques, lecteur de cédérom/DVD, lecteur ZIP...).

Tableau. Désignation des périphériques IDE

Primaire Secondaire
Maître a C
Esclave b D
A. Disques durs et partitionnement

Pour le périphérique maître sur le contrôleur primaire : hda Pour le périphérique esclave sur
le contrôleur secondaire : hdd.
Les périphériques SCSI sont désignés en fonction de leur position dans la chaîne SCSI (sda,
sdb, sdc, etc.).
On utilise la commande fdisk pour configurer une nouvelle partition. Par exemple, pour le
premier disque IDE :
fdisk /dev/hda
A. Disques durs et partitionnement
Voici une liste des différentes commandes internes de fdisk :

- a : (dés)active un indicateur « bootable » ; - q : quitte le programme sans enregistrer les


modifications ;
- b : édite le libellé de disque bsd ;
- s : crée un nouveau libellé de disque Sun
- c : (dés)active l'indicateur de compatibilité vide ;
DOS ;
- t : change l'ID système d'une partition ;
- d : supprime une partition ;
- u : change l'unité d'affichage/saisie ;
- l : répertorie les types de partition connus ;
- v : vérifie la table de partition ;
- m : affiche la liste des commandes ;
- w : écrit la table sur le disque et quitte le
- n : ajoute une nouvelle partition ; programme ;
- o : crée une nouvelle table de partition DOS - x : fonctions supplémentaires (experts
vide ; seulement).
- p : affiche la table de partition ;
A. Disques durs et partitionnement

Le système d’exploitation utilise une zone d’échange (swap) sur le disque comme une
extension de la mémoire physique. Selon les besoins, il y aura donc un échange entre la
mémoire physique et la zone swap.
Linux utilise deux types de partitions : Linux (Linux native) et Echange Linux (swap) comme
on peut le constater sur la figure 1. La première partition est une partition qui peut contenir
un système Windows et la quatrième une partition de type étendu qui permet de créer des
partitions logiques.
A. Disques durs et partitionnement

c). Formatage et types de systèmes de fichiers


Les principaux types de système de fichiers supportés par Linux sont présentés dans le
tableau:

Tableau. Commandes de création de systèmes de fichiers

Système de fichiers Commande de création


ext2 mke2fs ou mkfs.ext2
ext3 mke2fs -j ou mkfs.ext3
reiserfs Mkreiserfs
Xfs [Link]
vfat [Link]
A. Disques durs et partitionnement

Le système de fichiers ext3 est une simple extension du format standard ext2 de Linux : il
intègre un journal qui enregistre toutes les opérations effectuées sur le disque. Ceci permet
une récupération plus rapide et sûre du système en cas d'arrêt brutal de la machine.

L'instruction générale de création d’un système de fichiers est :


mkfs -t type de fichier partition

Il existe des commandes équivalentes pour chaque type de systèmes de fichiers, par
exemple mkfs.ext3, [Link] (voir tableau)
A. Disques durs et partitionnement

Exemples de formatage de la partition hda1 avec création d'un système de


fichiers de type ext3 (les trois commandes sont équivalentes) :
mkfs.ext3 /dev/hda1
mkfs -t ext3 /dev/hda1
mke2fs -j /dev/hda1 # création du journal spécifique

Il est aussi très facile de transformer une partition ext2 en ext3 avec l'instruction
tune2fs pour créer le journal :
tune2fs -j /dev/hda1
A. Disques durs et partitionnement
d). Contrôle de l'intégrité du système de fichiers et réparation
Si le système de fichiers est endommagé ou corrompu, l'utilitaire fsck est utilisé pour vérifier
et corriger le système.
L'instruction générale de vérification du système de fichiers est :
fsck -t type-de-fichier partition

De même que précédemment, il existe des commandes équivalentes pour chaque type de
systèmes de fichier, par exemple fsck.ext3.
L'option -i permet de laisser l'utilitaire fsck essayer de corriger lui-même les problèmes
rencontrés. Un expert pourrait mieux faire, mais en général l’opération se déroule bien.
L'exemple qui suit permet de vérifier l'intégrité d'un système de fichiers reiserfs :
[Link] /dev/hda1
A. Disques durs et partitionnement

Une vérification de toutes les partitions est faite au démarrage du système par la
commande fsck.
La commande e2fsck est équivalente à fsck –t ext2.
En cas de problèmes plus important, il est possible d’utiliser l’utilitaire debugfs. Il est utilisé
pour examiner et modifier l’état d’un système de fichiers formaté en ext2. Il permet par
exemple de retrouver des inodes de fichiers supprimés (récemment) et de les restaurer.

L’utilitaire dumpe2fs permet d’afficher les informations d’un système de fichiers formaté en
ext2. Il est par exemple ainsi possible de connaître la date du dernier montage d’un système
de fichiers.
A. Disques durs et partitionnement
e). Montage et démontage d'un système de fichiers
Pour pouvoir utiliser un système de fichiers, celui-ci doit être monté sur un point de
montage de l'arborescence Linux : son contenu est alors accessible comme un simple
répertoire.
Le système d'exploitation réalise alors diverses tâches de vérification afin de s'assurer que
tout fonctionne correctement.
La commande mount accepte deux arguments :
- le premier est le fichier spécial correspondant à la partition contenant le système de
fichiers ;
- le second est le répertoire sous lequel il sera monté (point de montage).

Il peut être nécessaire de spécifier le type de fichiers avec l'option -t au cas où Linux ne
parviendrait pas à le déterminer automatiquement.
A. Disques durs et partitionnement

La commande umount permet le démontage du système de fichiers.


Voici un exemple de montage et de démontage d'une clé USB de type « flashdisk » décrite
par le fichier device sda :
mount /dev/sda1 /mnt/flashdisk
umount /mnt/flashdisk

Montage et démontage automatique


Le fichier /etc/fstab est utilisé pour le montage automatique des systèmes de fichiers au
moment du démarrage du système.
Chaque ligne du fichier fstab décrit la manière de montage d’un système de fichiers, et ceci
à travers six champs séparés par des espaces.
A. Disques durs et partitionnement

#cat /etc/fstab
LABEL=/ / ext3 defaults 0 1
/dev/hda5 /home ext3 defaults 0 2
none /proc proc defaults 0 0
/dev/cdrom /media/cdrom iso9660 ro,noauto,owner 0 0
/dev/hda3 /usr ext3 defaults 0 2
/dev/hda6 /var ext3 defaults 0 2
/dev/hda2 swap swap defaults 0 0
A. Disques durs et partitionnement
- Le premier champ donne le nom de périphérique ou plus de détails sur chacune de ces options) ;
l’étiquette (LABEL) associé à ce périphérique. Ce premier
champ peut aussi inclure des systèmes de fichiers - Le cinquième champ est destiné théoriquement à être
distants, dans ce cas la notation d’un chemin NFS utilisé par
(Network File System) est utilisée : l’utilitaire dump pour déterminer les systèmes de fichiers
serveur:/chemin_distant. à sauvegarder. Mais en pratique ce champ n’est pas
Ceci indique que /chemin_distant est un répertoire exploité et il est presque toujours à 0 ;
partagé via NFS sur une machine distante dont le nom - Le sixième champ est utilisé par l’utilitaire fsck pour
est « serveur » ; déterminer l’ordre de vérification de l’intégrité des
- Le second champ indique le point de montage, qui est systèmes de fichiers lors du démarrage du système. Le
le chemin d’accès dans l’arborescence Linux ; système de fichier racine doit avoir la valeur 1, les autres
systèmes de fichiers ont la valeur 2 et seront vérifiés à la
- Le troisième champ décrit le type de système de suite. Si ce champ vaut 0, fsck ne vérifie pas le système de
fichiers, par exemple ext2, ext3, reiserfs, iso9660, etc. ; fichier.
- Le quatrième champ indique les options de montage.
Il s’agit d’une liste d’options séparées par des virgules,
ce sont en fait les options de
la commande mount. Le mot clé « default » indique la
combinaison des options rw, suid, dev, exec, auto, nouser,
et async (voir le manuel de la commande mount pour
A. Disques durs et partitionnement

Les commandes mount et umount utilisent le fichier fstab. Il est important que les données
de ce fichier soient complètes et exactes. Par exemple on peut monter un système de fichier
en spécifiant seulement le point de montage ou le nom de périphérique. Ainsi, au lieu
d’exécuter la commande :
#mount –t iso9660 –o ro,noauto,owner, /dev/cdrom /media/cdrom
on peut écrire
#mount /media/cdrom

et les autres informations sont extraites automatiquement par la commande mount à partir
de fichier fstab.
La commande mount –a monte tous les systèmes de fichiers répertoriés dans le fichier
fstab. Cette commande est généralement exécutée au moment de démarrage du système.
Les processus
Les processus

Ce qui est désigné comme processus est une instance de programme s’exécutant à un
instant donné ainsi que son contexte (ou environnement). Ce dernier terme désigne
l’ensemble des ressources utilisées par le programme pour pouvoir se dérouler, comme par
exemple la mémoire, les fichiers ouverts, les droits associés, la priorité...
Les processus sont identifiés par un numéro unique dans le système à un moment donné, le
PID. C'est à l’aide de ce nombre que l’on peut désigner une instance de programme et
interagir avec.
Les processus sont également caractérisés par un propriétaire. Il s’agit de l’utilisateur qui en
a demandé l’exécution. En général, seul ce propriétaire pourra entreprendre des actions sur
le processus.
Les processus sont créés par « clonage », ce qui permet la recopie d’une partie des
informations citées ci-dessus. Le premier processus créé est le processus init qui est
l’ancêtre de tous les autres.
Les processus

La commande pstree affiche les processus sous forme d’arborescence, on peut donc
visualiser qui est le processus parent d’un autre. L’option –p affiche le PID de chaque
processus et l’option –u affiche le nom de l’utilisateur ayant lancé le processus.
pstree -pu

Vous aimerez peut-être aussi