Académique Documents
Professionnel Documents
Culture Documents
GNU - LINUX
PLAN
1. Introduction
2. Installation du système
3. FHS
4. Démarrage et arrêt
5. Installation et dés-installation des paquetages
6. Gestion des utilisateurs
7. Impression sous Linux
8. Gestion des Systèmes de Fichiers
9. Noyau : Compilation et Installation
10. Journalisation et Observation
11. Configuration réseau
●
Termes à définir
– UNIX
– GNU/LINUX
– Distributions GNU/LINUX
Ci-contre la
première image
qui s'affiche
lorsque la
machine
démarre à
partir du
USB/DVD
d'installation
de CentOS
Carte réseau
activée
Écran de
configuration de
l’interface réseau
donnant le choix entre
une configuration
statique (manuelle) ou
dynamique (via dhcp)
On coche la liste
des disques dans
lesquels le système
sera installé
Choisir entre le
Partitionnement
Manuel ou
automatique
Le détail concernant
le volume
sélectionné
Boutons pour créer/
supprimer les
volumes
Chaque processus qui tourne dans le système est représenté par un répertoire
sous /proc dont le nom n’est rien autre que le pid correspondant et qui
contient les fichiers et répertoires suivants:
cmdline La ligne de commande du processus. Les arguments sont séparés
par le caractère null
cwd Un lien sur le répertoire de travail courant
environ Contient l'environnement du processus. Liste (variable, valeur)
exe Un pointeur sur le fichier binaire exécuté,
fd Un sous-répertoire contenant un lien pour chaque fichier ouvert.
maps Un fichier contenant les régions mémoire actuellement
Projetées et leurs autorisations d'accès.
mem L'espace mémoire du processus
root Racine du système de fichier du processus, configurable (chroot)
stat Informations sur l'état du processus.
grub>
/sbin/grub-install <location>
où <location> est l’endroit où l’on désir mettre la première
partie du chargeur GRUB. Ex:
/sbin/grub-install /dev/sda
− L'installation du chargeur
− Configuration
● grub2-install /dev/sda
● grub2-mkconfig -o /boot/grub2/grub.cfg
– Redémarrer
●
GRUB_SAVEDEFAULT :
Si cette option est positionnée à true, lorsqu’une entrée est démarrée, elle est
aussi sauvegardée pour servir d’entrée par défaut lors de la prochaine
exécution de GRUB2. Elle n’est utile que si GRUB_DEFAULT =saved.
L’installateur de Fedora ne déclare pas cette entrée dans /etc/default/grub ; elle
a donc a priori sa valeur par défaut : false.
●
GRUB_TIMEOUT :
Il s’agit du temps en secondes, écoulé depuis d’affichage du menu, après
lequel l’entrée par défaut est démarrée. L’installateur Anaconda la positionne
à 5 par défaut. Les valeurs 0 et -1 conduisent à un fonctionnement particulier.
0 : L’entrée par défaut est démarrée immédiatement sans attendre l’affichage
du menu.
-1 : Le temps d’attente du choix de l’utilisateur est infini.
●
Celle option modifie la prise en compte de GRUB_TIMEOUT
●
Sa valeur peut être :
➔ menu (non définie) : L’option GRUB_TIMEOUT est prise en compte
comme décrit précédemment.
➔ hidden : Dans ce cas, GRUB2, n’affiche pas le menu et attend
silencieusement l’écoulement du temps indiqué par GRUB_TIMEOUT.
Si la touche [ESC] est pressée avant que le temps ne soit écoulé, le
menu est affiché et le timeout est désactivé. Si un raccourci clavier
associé à une entrée est pressé, l’entrée correspondante est démarrée
immédiatement. Si le temps d’attente expire l’entrée par défaut est
démarrée.
➔ countdown : hidden + affichage d’un compte à rebours
●
GRUB_DISTRIBUTOR
Cette option enrichit le titre des entrées avec le nom du distributeur sous
forme d’option --class. L’installateur de Fedora la postionne à "$(sed 's,
release .*$,,g' /etc/system-release)" qui aboutit à --class fedora dans le titre de
l’entrée.
●
GRUB_DISABLE_SUBMENU
Normalement, la commande grub-mkconfig -o <destination> génère une
entrée de menu de niveau supérieur pour le noyau possédant le plus haut
numéro de version et place les autres noyaux trouvés, ou les entrées
alternatives pour les modes de récupération, dans un sous-menu. Pour les
entrées retournées par os-prober la première entrée est placée au niveau
supérieur et les autres dans un sous-menu. Si cette option est définie à true,
tout est rapporté au niveau supérieur.
ou
service nom-script [start | stop | restart | status]
●
l’ensemble de ces scripts ont été mis en place au moment
de l’installation des paquetages correspondants.
●
La valeur numérique permet de spécifier l'ordre d'arrêt ou de
démarrage du service.
●
La plupart des démons du système enregistrent leur numéro de
processus dans un fichier du répertoire /var/run.
init /etc/rc.d/rc.sysinit
/sbin/mingetty tty1
… /etc/rc.d/rcN.d/S* start
/sbin/mingetty tty6
X (pour le Niveau 5)
– Rafraîchir
(c-a-d : mettre à jour uniquement
si le paquetage est déjà installé) rpm -F fichier_paquetage
●
Outils utilisés
– L’ interfaces graphique
[ali@Shems ali]$ id
uid=510(ali) gid=501(ginfo)
groupes=501(ginfo),100(users),601(musiq)
[ali@Shems ali]$ groups
ginfo users musiq
[ali@Shems ali]$ lid -g musiq
ali(uid=510)
salia(uid=600)
Comptes systèmes
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
......
......
es
samir:x:501:501:Samir Amiss:/home/depinfo/samir:/bin/bash
p t s
alia:x:502:501:alia hamza:/home/alia:/bin/bash m
Co sateur
i
Util
Groupes systèmes
root:x:0:root
bin:x:1:root,bin,daemon
daemon:x:2:root,bin,daemon
sys:x:3:root,bin,adm
adm:x:4:root,adm,daemon
lp:x:7:daemon,lp
sshd:x:74:
users:x:100:samir, ali, bouchra
... p es
r o u rs
ginfo:x:501: G a te u
t i li s
musiq:x:601:samir,alia U
Groupes systèmes
bin:::root,bin,daemon
daemon:::root,bin,daemon
sys:::root,bin,adm
adm:::root,adm,daemon
lp:::daemon,lp
sshd:x::
users:::samir, ali, bouchra
...
ginfo:!:: Gro
musiq:!::samir,alia Util upes
is a t
astronomie:f3XsyLytVF.fg::samir,ali eur
s
Inode Table
Data
Blocks
●
Les informations du Super Block sont utilisées
principalement par les différents appels système (creat,
mknod, write, mount, umount, ..).
●
Le système garde et utilise une copie du Super Block
en mémoire. Le Super Block disque est mis à jours à
l'exécution de la commande sync.
Blocs de
données
. 1230
Noms de fichiers .. 1214
Numéros
et sous fic1 1234
d'inodes
répertoires
fic2 554
rep1 1200
5
. 2
.. 2 . 1200
etc 123 .. 2 . 1300
home 1200 Ali 1235 .. 1200
bin 105 Shems 1300 mail 1283 #include <stdio.h>
main() {
Zayd 1500 pr.c 1530 printf("hello\n");
img 4005 }
●
Découpage de chaque disque en groupes de cylindres
permettant :
➔
Une dispersion de la table des i-nodes
➔
Un rapprochement des inodes par rapport aux blocs
de données
➔
Une réplication du super bloc assurant une meilleur
sécurité
Secteu
r
Platea
u
Bloc
Tête de
lecture/écriture
Surface
s
Groupe de cylindre N
Groupe de cylindre 0 Data Block Bitmap
Inode Bitmap
Boot Block
Inode Table
Data
Blocks
●
Ext3 devient le standard
– Préconisé par RedHat, Mandrake, etc…
Avant le montage :
●
Deux systèmes de fichiers complètement indépendants
●
Le répertoire /usr du premier système est vide
Partition 1: Système de fichiers racine Partition 2
/ /
●
attache le système de fichier du périphérique au répertoire
spécifié
●
Exemple :
# mount /dev/hda2 /usr
# ls /usr
games src X11R6
– RAID-1: mirroring
Software RAID
– RAID-5
Device Driver
– RAID-10
– Autres niveaux rarement
utilisés: 2,3,4,6,50
●
Code source
– /usr/src/linux/drivers/md/raid0.c (or raid1.c, raid5 …)
●
Combine RAID-1 et RAID-0.
●
Ce qui signifie avoir les avantages des deux -
de bonnes performances et une bonne gestion
du basculement.
●
Est le niveau le plus couteux
●
Aussi appelé «RAID imbriqué».
●
Puis relancer le service mdmonitor
# systemctl restart mdmonitor.service
# systemctl status mdmonitor.service
●
Informations sur le statut du RAID :
# cat /proc/mdstat
●
Pour surveiller en temps réel un agrégat
# watch -n 1 cat /proc/mdstat
●
Lister les grappes RAID présents sur le système :
# mdadm --detail --verbose --scan
●
Lister les informations détaillées d'une grappe :
# mdadm --detail /dev/md0
●
Puis on le rajoute à la grappe Raid entant que disque de rechange :
# mdadm /dev/md0 --add-spare /dev/sdd1
mdadm: added /dev/sdd1
● La commande mdadm --detail /dev/md0 doit montrer que la nouvelle état
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 1
Spare Devices : 0
Consistency Policy : resyn
Number Major Minor RaidDevice State
3 253 17 0 active sync /dev/sdb1
4 259 1 1 active sync /dev/sdd1
2 253 33 - faulty /dev/sdc1
●
/dev/sdc1 doit maintenant être retiré et remplacé
# mdadm /dev/md0 --remove /dev/sdc1 /dev/sdc1 est ajouté entant que
spare disk
# mdadm /dev/md0 --add /dev/sdc1
●
Maintenant on arrête la grappe
# mdadm –stop /dev/md0
●
Puis on supprime le périphérique
# mdadm –remove /dev/md0
●
Et pour finir, on met à zéro les superblocs de tous les périphériques constituant la
grappe RAID
# mdadm –zero-superblock /dev/sd[b-d]1
●
Maintenant les disques sont prêts à être utilisés pour autres choses