Pièce jointe « Introduction.tex »
Téléchargement 1 %% licence RAFRAB(*)
2 %%
3 %% RAFRAB : rien à f**tre, rien à battre, fais ce qu'il te plait dans la vie
4 %%
5
6
7 \documentclass[french]{beamer}
8 \usepackage{babel}
9 \usepackage[utf8]{inputenc}
10 \usetheme{Warsaw}
11
12 \title{Introduction à l'administration \\ \textit{d'un système GNU/Linux}}
13 \author{}
14 \institute{Agence universitaire de la Francophonie}
15
16 \begin{document}
17
18 \begin{frame}
19 \titlepage
20 \end{frame}
21
22 \section{Généralités}
23 \frame{\tableofcontents[current]}
24
25 \begin{frame}
26 \textbf{Linux est basé sur UNIX}
27 \begin{itemize}
28 \item philosophie
29 \item commandes
30 \item standard et conventions UNIX
31 \end{itemize}
32 \end{frame}
33
34 \begin{frame}
35 \textbf{Philosophie UNIX}
36 \begin{itemize}
37 \item Tout est fichier
38 \item Les données sont du texte
39 \item Plus c'est simple, mieux c'est
40 \item Faire une seule chose et bien le faire
41 \item Ecrit en langage C
42 \end{itemize}
43 \end{frame}
44
45 \begin{frame}
46 \textbf{Qu'est ce que LINUX?} :
47 \begin{itemize}
48 \item développé par Linus Torvalds en 1991
49 \item de manière stricte, \textbf{Linux} est juste le noyau
50 \item développé par plusieurs personnes gràce à Internet
51 \end{itemize}
52 \end{frame}
53
54 \begin{frame}
55 Le système d'exploitation \textbf{GNU/Linux}
56 \begin{itemize}
57 \item \textbf{Multi-tâches}: execution 'simultanée' de plusieurs programme
58 \item \textbf{Multi-utilisateurs}: chaque utilisateur à un login/mdp
59 \item \textbf{libre} : liberté d'éxecuter, de copier, de distribuer, d'étudier, de
60 modifier et d'améliorer
61 \item \textbf{multi-processeurs}: plusieurs processeurs
62 \item \textbf{multi-plateformes}: PC, SPARC, système embarqué, téléphones
63 mobiles
64 \end{itemize}
65 \end{frame}
66
67 \begin{frame}
68 \textbf{Distributions Linux} \\
69 ensemble cohérent de logiciels assemblé autour du système d'exploitation
70 \texttt{GNU} et du noyau \texttt{Linux}
71 \begin{itemize}
72 \item Mandriva
73 \item RedHat
74 \item Debian
75 \item Ubuntu
76 \item Fedora
77 \end{itemize}
78 \end{frame}
79
80 \begin{frame}
81 Pourquoi \texttt{"on"} utilise \textbf{Debian}?
82
83 \begin{itemize}
84 \item noyau Linux et outils GNU : Debian GNU/Linux
85 \item disponible pour 11 architectures
86 \item plus de 20000 paquets... avec suivi de sécurité
87 \item \url{http://www.debian.org/}
88 \item plus de 1000 développeurs officiels (et 2000 contributeurs)
89 \end{itemize}
90 \end{frame}
91
92 \begin{frame}
93 Les versions de Debian GNU/Linux
94 \begin{itemize}
95 \item \textit{stable}, \textit{testing} et \textit{unstable} (Sid)
96 \item Actuellement : \textit{stable} = Lenny, \textit{testing} = Squeeze
97 \item Pour info : \textit{oldstable} = Etch
98 \end{itemize}
99 \end{frame}
100
101
102 \begin{frame}
103 \begin{center}
104 Installation d'une distribution Linux
105 \end{center}
106 \end{frame}
107
108 \begin{frame}
109 Rôles de l'administrateur
110 \begin{itemize}
111 \item Créer, modifier, supprimer un utilisateur
112 \item Gérer les fichiers et les disques
113 \item Surveiller l'espace disque
114 \item Organiser les sauvegardes
115 \item Ajout de périphériques
116 \item Améliorer les performances du systèmes
117 \item Installer de nouveau produits
118 \item Veiller à la sécurité du système
119 \item Paramétrer le démarrage et l'arrêt du système
120 \item Suivre les logs du système
121 \end{itemize}
122 \end{frame}
123
124 \begin{frame}
125 Les bonnes pratiques
126 \begin{itemize}
127 \item Sauvegarder son système
128 \item Tenir un journal de bord (opérations d'exploitation)
129 \item Agir de manière réversible
130 \item Automatiser les procédures
131 \item Anticiper les problèmes
132 \end{itemize}
133 \end{frame}
134
135 \section{Les commandes de bases}
136 \frame{\tableofcontents[current]}
137
138 \begin{frame}
139 \textbf{Shell}: interpréteur de commandes, interface utilisateur et système
140 d'exploitation
141 \begin{itemize}
142 \item accès à la machine: login/motdepasse
143 \item lancement de commandes à partir d'un interpréteur \textit{Shell}
144 \item syntaxe: \textit{prompt\# [commande] [option(s)] [arguments]}
145 \item exemple: \textit{ls -l /home}
146 \end{itemize}
147 \end{frame}
148
149 \begin{frame}
150 \textbf{Opération sur les répertoires}
151 \begin{itemize}
152 \item \textbf{ls} : lister les répertoires (syntax: \texttt{ls [-options][repertoires]})
153 \item \textbf{mkdir} : création de répertoire (syntax:\texttt{mkdir [-options][nom du répertoire]})
154 \item \textbf{rmdir} : suppression de répertoire (syntax:\texttt{rmdir [-options][nom du répertoire]})
155 \item \textbf{pwd} : afficher le répertoire courant
156 \item \textbf{cd} : changer de répertoire (syntax:\texttt{cd [nom du répertoire]})
157 \item \textbf{du} : espace disque utilisé par le répertoire (syntax:\texttt{du [option][nom du répertoire]})
158 \item \textbf{df} : espace disque occupé (ou libre) sur chaque partition (syntax: \texttt{df [-options][fichier]})
159 \end{itemize}
160 \end{frame}
161
162 \begin{frame}
163 \textbf{Opération sur les fichiers}
164 \begin{itemize}
165 \item \textbf{cp} : copier les fichiers ou les répertoires (syntax: \texttt{cp [-options]<source><destination>})
166 \item \textbf{mv} : déplace ou renommer les fichiers ou les répertoires (syntax: \texttt{mv [-options]<source><destination>})
167 \item \textbf{rm} : effacer un fichier (syntax: \texttt{rm [-options][fichier]})
168 \item \textbf{find} : chercher un fichier (syntax: \texttt{find [-répertoire de départ][option][action]})
169 \item \textbf{which} : Montrer le chemin d'accès à une commande (syntax: \texttt{which [nom de pgm]})
170 \item \textbf{less ou more} : afficher à l'écran le contenu d'un fichier text (syntax: \texttt{less [-options]<nom de fichier>})
171 \item \textbf{whereis et locate}: permet de retrouver les emplacements des
172 fichiers
173 \end{itemize}
174 \end{frame}
175
176 \begin{frame}
177 \textbf{Les filtres}: commandes qui, à partir d'un flux d'entrées donné,
178 effectuent des traitements avant d'afficher un résultat en sortie.
179 \begin{itemize}
180 \item \textbf{cat} : concaténatation d'un fichier et afficher sur la sortie
181 standard. \\
182 \item \textbf{cut}: afficher suivant les options certains champs d'un
183 fichier \\
184 \textit{cut -d : -f1 /etc/passwd}
185 \item \textbf{grep} : cherche une expression dans un fichier \\
186 \textit{grep false /etc/passwd} \\
187 \textit{grep -v root /etc/passwd} \\
188 \item \textbf{sort}: tri ordre croissant
189 \item \textbf{join}: effectue des jointures des lignes de deux fichiers
190 différents dans un même champs.
191 \item \textbf{paste}: pour fusionner deux fichiers différents en prenant
192 chaque ligne de chaque fichier pour former une nouvelle ligne
193 \end{itemize}
194 \end{frame}
195
196
197 \begin{frame}
198 \textbf{Redirections} \\
199 \begin{itemize}
200 \item Entrée standard: descripteur \textbf{0}
201 \item Sortie standard: descripteur \textbf{1}
202 \item Sortie d'erreur standard: descripteur \textbf{2}
203 \item \texttt{echo 'Bonjour Dakar' > hello.txt}
204 Sortie standard et sortie d'erreur redirigé vers un fichier
205 \item \texttt{tail /etc/passwd > fichiersortie 2>\&1 }
206 \item \texttt{tail /etc/passwd >\& fichiersortie 2>1 }
207 \end{itemize}
208 \end{frame}
209
210
211 \begin{frame}
212 \textbf{Tubes}
213 \begin{itemize}
214 \item \textbf{pipe} permet que la sortie d'une commande devient l'entrée
215 d'une autre \\
216 ex: \texttt{sort /etc/passwd | head -6}
217 \item \textbf{tee}: recopie la sortie dans un fichier \\et affiche en même
218 temps le résultat sur la sortie standard \\
219 ex: \texttt{ls -l /etc | tee fichier | wc -l}
220 \item \textbf{xargs} passe en argument d'une commande les flux reçus en
221 entrée\\
222 ex: \texttt{cat lefichier | xargs ls}
223
224 \end{itemize}
225 \end{frame}
226
227
228 \section{Utilisation de l'editeur de fichiers}
229 \frame{\tableofcontents[current]}
230
231
232 \begin{frame}
233 \textbf{Vi\texttt(Visual Editor)}
234 est un éditeur de texte, présent sur toutes les version de linux. \\
235 Il existe le mode \textit{édition} et le mode \textit{commande} \\
236 Pour ajout et suppression :
237 \begin{itemize}
238 \item \textbf{insertion} : \texttt{Esc + i}
239 \item \textbf{suppression} : caractère \texttt{Esc + x} ou d'une ligne \texttt{Esc + d + d}
240 \item \textbf{copier} : \textit{Esc + y + y}
241 \item \textbf{coller} : \textit{Esc + p}
242 \item \textbf{annuler} : \textit{u}
243 \end{itemize}
244 \end{frame}
245
246 \begin{frame}
247 \begin{itemize}
248 \item \textbf{rechercher}: \textit{Esc + /text\_rechercher}
249 \item \textbf{substitue}:
250 \textit{ligne\_debut,ligne\_fins/chaine1/chaine2/g} sans confirmation \\
251 \textit{ligne\_debut,ligne\_fins/chaine1/chaine2/g} avec confirmation \\
252 \end{itemize}
253 \end{frame}
254
255 \begin{frame}
256 \begin{itemize}
257 \item \textbf{sauvegarder} : \textit{Esc} + \textit{:} + \textit{w}
258 \item \textbf{sauvegarder et quitter} : \textit{Esc} + \textit{:} +
259 \textit{w} + \textit{q}
260 \item \textbf{quitter sans sauvegarder} : \textit{Esc} + \textit{:} +
261 \textit{q} + \textit{!}
262 \end{itemize}
263 \end{frame}
264
265 \begin{frame}
266 \begin{center}
267 Travaux pratiques
268 \end{center}
269 \end{frame}
270
271 \section{Administrer son système}
272 \frame{\tableofcontents[current]}
273
274
275 \begin{frame}
276 \textbf{Utilisateur et groupe}
277 \begin{itemize}
278 \item tout ce qui utilise une machine linux est un \texttt{utilisateur}
279 \item les utilisateurs ont diffèrents privilèges
280 \item les utilisateurs peuvent appartenir à des groupes
281 \item à chaque utilisateur son répertoire de base (ex: \texttt{/home/toto})
282 \item seul l'utilisateur a les droits sur son répértoire
283 \item chaque utilisateur est identifié par un \texttt{UID} (User IDentificator)
284 \item \texttt{su} : permet de changer d'utilisateur
285 \end{itemize}
286 \end{frame}
287
288 \begin{frame}
289 \textbf{Le Superutilisateur: Root}
290 \begin{itemize}
291 \item Chaque système Linux a un utilisateur \texttt{root}
292 \item \texttt{root} est le 'tout-puissant'
293 \item seul \textbf{root} peut \texttt{créer}, \texttt{supprimer},
294 \texttt{modifier} un utilisateur
295 \item le prompt du root se termine souvent par \texttt{\#}
296 \item \texttt{su -} : permet de se connecter en tant que root
297 \end{itemize}
298 \end{frame}
299
300 \begin{frame}
301 \textbf{Gestion des droits}
302 \begin{itemize}
303 \item \textbf{chown}: change l'appartenance du fichier ou du répertoire à
304 un utilisateur\\
305 ex: \texttt{chown [toto] [logfile.txt]}
306 \item \textbf{chgrp}: change l'appartenance du fichier ou du répertoire à
307 un groupe \\
308 ex: \texttt{chgrp [staff] [document.txt]}
309 \item l'option \textbf{-R} permet de changer les droits de manière
310 \texttt{récurssive} \\
311 ex: \texttt{chown -R root /usr/local/share/music} \\
312 ex: \texttt{chown -R toto.www-docs /www/intranet/user/toto/}
313 \end{itemize}
314 \end{frame}
315
316
317 \begin{frame}
318 \textbf{Permission sur les fichiers}
319 \begin{itemize}
320 \item Les permissions représentent les actions pouvant être affectées aux fichiers
321 \item \texttt{Trois} types de permissions pour les fichiers
322 \item \textbf{r} et \textbf{x} sont nécessaires à l'éxecution d'un script
323 \end{itemize}
324 \begin{tabular}{|l|l|l|}
325 \hline
326 \textbf{Permission} & \textbf{Lettre} & \textbf{Description} \\
327 \hline
328 Read & r & Permission de lire les données dans le fichier \\
329 Write & w & Permission d'écrire, trunquer,\\
330 & & et d'écraser les données dans le fichier \\
331 Execute & x & Permission d'executer \\
332 & & le contenu du fichier comme un programme\\
333 \hline
334 \end{tabular}
335 \end{frame}
336
337 \begin{frame}
338 \textbf{Permission sur les répertoires}
339 \begin{itemize}
340 \item r,w,x ont aussi leur signification sur les répértoires
341 \item Les permissions sur les répertoires sont un petit peu différents
342 \end{itemize}
343 \begin{tabular}{|l|l|l|}
344 \hline
345 \textbf{Permission} & \textbf{Lettre} & \textbf{Description} \\
346 \hline
347 Read & r & Permission d'avoir la liste du répertoire \\
348 Write & w & Permission de créer, effacer,\\
349 & & renommer les fichiers dans le répertoire \\
350 Execute & x & Permission de changer le répertoire, ou \\
351 & & de l'utiliser comme répertoire intermédiaire \\
352 \hline
353 \end{tabular}
354 \end{frame}
355
356 \begin{frame}
357 \textbf{Concept de bases}
358 \begin{itemize}
359 \item Un fichier a un \textbf{propriétaire} et un \textbf{groupe propriétaire}
360 \item Les permissions \texttt{r,w,x} sont spécifiés pour l'utilisateur, le
361 groupe d'utilisateur est le reste (les autres)
362 \end{itemize}
363 \end{frame}
364
365 \begin{frame}
366 \textbf{Examen des permissions}
367 \begin{itemize}
368 \item ls -l \\
369 drwxr-x--- 9 toto staff 4096 Oct 12 12:57 accounts \\
370 -rw-rw-r-- 1 toto staff 11170 Dec 9 14:11 report.txt
371 \item \texttt{d} répertoire, {-} fichier texte
372 \item 3 caractères rwx pour les permissions de \textbf{l'utilisateur}
373 propriétaire
374 \item \texttt{3 caractères rwx} pour les permissions du \textbf{groupe}
375 propriétaire
376 \item \texttt{3 caractères rwx} pour les permissions des \textbf{autres}
377 \end{itemize}
378 \texttt{Note: cp -p ou -a préserves les permissions et l'horodotage}
379 \end{frame}
380
381 \begin{frame}
382 \textbf{Changer les permissions des fichiers et des répertoires: chmod }
383 \begin{itemize}
384 \item les permissions peuvent être changées seulement par son \textbf{propriétaire} ou par le \textbf{superutilisateur}
385 \item \texttt{chmod a+x un-programme}
386 \item ajoute \textbf{(+)} les permissions d'éxecution \textbf{(x)} pour tous les
387 utilisateurs \textbf{(a)} sur le fichier \texttt{un-programme}
388 \end{itemize}
389 \end{frame}
390
391 \begin{frame}
392 \textbf{Spécification des permissions}
393 \begin{itemize}
394 \item les formats de spécifications:
395 \textbf{[ugoa] [+=-] [rwx]}
396 \item ajout de permissions: \texttt{u} pour l'utilisateur, \texttt{g} pour le
397 groupe, \texttt{o} pour les autres, \texttt{a} pour tout le monde.
398 \item \texttt{=} applique la permission au fichier
399 \item \texttt{+} ajoute la permission à ceux déjà appliquer
400 \item \texttt{-} retire les permissions
401 \item La dernière lettre indique laquelle des permissions utilisés \texttt{rwx}
402 \item ex: \texttt{chmod -R g+rwx,o+rx repertoire-public}
403 \end{itemize}
404 \end{frame}
405
406 \begin{frame}
407 \textbf{La méthode octale}
408 \begin{itemize}
409 \item Les permissions peuvent être affecté grâce à des nombres
410 \begin{tabular}{|l|l|l|l|}
411 \hline
412 & \textbf{Utilisateur} & \textbf{Groupe} & \textbf{Autres} \\
413 \hline
414 Lecture & 400 & 40 & 4 \\
415 Ecriture & 200 & 20 & 2 \\
416 Execution & 100 & 10 & 1 \\
417 \hline
418 \end{tabular}
419 \item \texttt{chmod 664 *.txt}
420 \item \texttt{chmod ug=rw,o=r *.txt}
421 \end{itemize}
422 \end{frame}
423
424 %\begin{frame}
425 %\textbf{Permissions spéciales: Sticky}
426 %\begin{itemize}
427 %\item Un fichier ne peut être effacé que par son utilisateur dans un répertoire ayant une permission
428 %\texttt{sticky}
429 %\item \texttt{ex: ls -l -d /tmp}
430 %\texttt{drwxrwxrwt 30 root root 11264 Dec 21 09:35 /tmp}
431 %\item \texttt{chmod +t /data/tmp}
432 %\end{itemize}
433 %\end{frame}
434 %
435 %\begin{frame}
436 %\textbf{Permissions spéciales: Setgid}
437 %\begin{itemize}
438 %\item Si un répertoire est \textbf{'setgid'}(set group-id), les fichiers qui y
439 %sont crées acquiert les permissions du groupe de ce répertoire
440 %\item \texttt{ex: ls -l -d /data/projects}
441 %\texttt{drwxrwsr-x 16 root staff 4096 Oct 19 13:14 /data/projects}
442 %\item \texttt{chmod g+s /data/projects}
443 %\end{itemize}
444 %\end{frame}
445 %
446
447
448
449 \begin{frame}
450 Ajout/suppresion de logiciels depuis\
451 \textbf{les sources}
452 \begin{block}{Compilation du programme}
453 tar zxvf logiciel.tar.gz\\
454 cd logiciel\\
455 ./configure\\
456 make\\
457 make install\\
458 \end{block}
459 \begin{block}{Avantages}
460 Dernières versions\\
461 Logiciel adapté à la plateforme, plus performant\\
462 Options supplémentraire\\
463 \end{block}
464 \end{frame}
465
466
467 \begin{frame}
468 \begin{center}
469 Ajout/suppresion de logiciels par\\
470 \textbf{RPM: RPM Package Manager }
471 \end{center}
472 \begin{block}{YUM: Yellowdog Update Modifer}
473 \begin{itemize}
474 \item Dépots de paquets \texttt{/etc/yum.repos.d/nomdepot.repo}
475 \item \textit{yum update}: met à jour le système
476 \item \textit{yum update yum}: mise à jour après une installation toute fraîche
477 \item \textit{yum list kern\*} : recherche un paquet
478 \item \textit{yum remove paquet} : suppression du paquet
479 \item \textit{yum --exclude=kern* update} : mise à jour séléctive
480 \end{itemize}
481 \end{block}
482 \end{frame}
483
484 \begin{frame}
485 \textbf{Les dépôts}
486 \begin{itemize}
487 \item \textbf{obligatoires: } Dépôt \texttt{fedora} et dépôts
488 \texttt{updates-released}
489 \item \textbf{pour les habitués:} \texttt{Dépôt dag, dries, freshrmps, jpackage, adobe,
490 rmpforge}
491 \item \textbf{pour les experts:} \texttt{Dépôts atrpms, kde-redhat, newrmps,
492 remi, drpixel, kwizart}
493 \end{itemize}
494 \end{frame}
495
496
497 \begin{frame}
498 \begin{center}
499 Ajout/suppresion de logiciels par\\
500 \textbf{APT : Advanced Package Tool}
501 \end{center}
502 \begin{itemize}
503 \item Dépots de paquets \texttt{/etc/apt/sources.list}
504 \item \textit{install} : installation d'un paquet = téléchargement + installation + configuration
505 \item \textit{upgrade} : mise à jour de tous les paquets installés (suivi de sécurité)
506 \item Notion de dépendances entre les paquets
507 \item APT ne fait pas lui-même l'installation et la configuration, il passe par \texttt{dpkg}
508 \end{itemize}
509 \end{frame}
510
511 \begin{frame}
512 \begin{center}
513 \texttt{aptitude} : le centre de commande APT
514 \end{center}
515 \begin{itemize}
516 \item \texttt{/etc/apt/sources.list} : la configuration des dépôts
517 \item \texttt{aptitude update} : lecture des paquets disponibles dans les dépots
518 \item \texttt{aptitude search \textit{motclef}}
519 \item \texttt{aptitude show \textit{paquet}}
520 \item \texttt{aptitude install \textit{paquet}}
521 \item \texttt{aptitude safe-upgrade} et \texttt{aptitude full-upgrade}
522 \item et aussi : \textit{dpkg -l}
523 \end{itemize}
524 \end{frame}
525
526 \begin{frame}
527 Les dépôts conseillés :
528 \begin{itemize}
529 \item dépôts officiels, depuis le miroir le plus proche : \\
530 \texttt{deb \url{http://ftp.fr.debian.org/debian} lenny main}
531 \item dépôt de sécurité (obligatoire !) : \\
532 \texttt{deb \url{http://security.debian.org/} lenny/updates main}
533 \item dépôts \textit{volatile} : \url{http://volatile.debian.org}
534 \item dépôts backports (uniquement en cas de nécessité impérative) : \url{http://www.backports.org}
535 \end{itemize}
536 NB : les autres dépots ne sont pas toujours dignes de confiance !
537 \end{frame}
538
539
540
541 \section{Notion de système de fichiers}
542 \frame{\tableofcontents[current]}
543
544 \begin{frame}
545 \begin{center}
546 Système de fichiers: façon d'organiser et de stocker une arborescence sur
547 un support (disque, disquette, cd ...)
548 \end{center}
549 \begin{itemize}
550 \item \texttt{MS-DOS} : FAT16/32 (File allocation Table)
551 \item \texttt{Windows} : FAT16, FAT32, VFAT, NTFS, exFAT(extended FAT)
552 \item \texttt{Linux} : ext2/3/4 (extended File System), HFS, ReiserFS, XFS, ...
553 \end{itemize}
554 \end{frame}
555
556
557 \begin{frame}
558 L'arborescence système :
559 \begin{itemize}
560 \item \texttt{/} : le système de fichier racine doit contenir tout ce qui permet au système de démarrer
561 \item \texttt{/bin}, \texttt{/sbin} : commandes de base
562 \item \texttt{/lib} : bibliothèques associées
563 \item \texttt{/etc} : fichiers de configuration
564 \item \texttt{/usr} (\textit{unix system ressources}) : ressources non nécessaires au démarrage
565 \item \texttt{/var} : données variables
566 \item \texttt{/home} : répertoires des utilisateurs
567 \item \texttt{/mnt} et \texttt{/media} : points de montages
568 \item \texttt{/dev} : fichiers correspondants à des périphériques
569 \item \texttt{/tmp} : données temporaires
570 \item Linux : \texttt{/proc} et \texttt{/sys} : systèmes de fichiers virtuels
571 \end{itemize}
572 \end{frame}
573
574
575 \section{Gestion du disque}
576 \frame{\tableofcontents[current]}
577
578 \begin{frame}
579 Gestion des périphèriques
580 \begin{itemize}
581 \item Périphériques, disque dur, et partitions gérés sous forme de fichier dans /dev
582 \item Chaque périphérique correspond un point de montage
583 \item \texttt{/dev/hda} : disque dur maître du cannal IDE 1
584 \item \texttt{/dev/hda1} : Première partition du DD IDE 1
585 \item \texttt{/dev/hda2} : Deuxième partition du DD IDE 1
586 \item \texttt{/dev/hdb} : disque dur esclave du cannal IDE1
587 \item \texttt{/dev/sda} : disque dur maitre SATA1
588 \item Partitions primaires sont numérotées de 1-4
589 \item Partitions logiques sont numérotées à partir de 5
590 \end{itemize}
591 \end{frame}
592
593 \begin{frame}
594 \textbf{Utiliser fdisk}
595 \begin{itemize}
596 \item \textbf{fdisk} permet de créer, effacer, et changer les partitions sur
597 un disque
598 \item ex: \texttt{fdisk /dev/hda}
599 \item \textbf{p}: afficher la table de partition
600 \item \textbf{n}: crée une nouvelle partition (primaire ou logique)
601 \item spécifier la taille de la partition
602 \item \textbf{w}: changer la table de partition
603 \end{itemize}
604 \end{frame}
605
606 \begin{frame}
607 \textbf{Créer un système de fichier avec mkfs}
608 \begin{itemize}
609 \item \textbf{mkfs} initialise un fichier système sur une nouvelle partition
610 \item ex: \texttt{mkfs -t ext3 -c /dev/hda2}
611 \item \textbf{t}: applique le système de fichier
612 \item \textbf{c}: vérifie les erreurs blocs sur le disque
613 \end{itemize}
614 \end{frame}
615
616 \begin{frame}
617 \textbf{Montage et démontage}
618 \begin{itemize}
619 \item \textbf{mount} monte un système de fichier et \textbf{umount} pour démonter
620 \item ex: \texttt{mount /dev/sdb3 /mnt/extra} (monte le périphérique
621 \texttt{/dev/sdb3} sur le point de montage \texttt{/mnt/extra})
622 \item ex: \texttt{mount -t vfat /dev/hdd1 /mnt/windows} (spécifie le point de
623 montage)
624 \item \texttt{man mount}
625 \item ex: \texttt{umount /dev/sdb3 ou umount /mnt/extra} pour démonter le périphérique
626 \item il est impossible de démonter un système de fichier \texttt{occupé}
627 \end{itemize}
628 \end{frame}
629
630 \begin{frame}
631 \textbf{Montage automatique}
632 \begin{itemize}
633 \item \textbf{/etc/fstab} contient les informations des systèmes de fichiers
634 contenu de l'administrateur
635 \item et qui sont montés au démarrage
636 \end{itemize}
637 \begin{tabular}{l l l l l l l}
638 \texttt{device} & \texttt{mount point} & \texttt{type} &
639 \texttt{options} & \texttt{dump} & \texttt{pass-no}\\
640 \texttt{/dev/hda3} & /home & /ext4 & defaults & 1 & 2
641 \end{tabular}
642 \end{frame}
643
644 \begin{frame}
645 \textbf{fstab}
646 \begin{itemize}
647 \item \textbf{device}: périphériques à monter
648 \item \textbf{mount point}: point de montage
649 \item \textbf{type}: système de fichier (ext2,vfat,auto,nfs)
650 \item \textbf{options}: noauto(non chargé au démarrage),ro(read-only),users
651 \item \textbf{dump}: \texttt{1} (système de fichier normale) ou \texttt{0}
652 (système de fichier removeable)
653 \item \textbf{pass-no}: \texttt{1} (système de fichier racine), \texttt{0}
654 système de fichier non monté au démarrage, \texttt{2} pour les autres systèmes
655 de fichier.
656 \end{itemize}
657 \end{frame}
658
659 \begin{frame}
660 \textbf{Maintenir un système de fichier}
661 \begin{itemize}
662 \item \textbf{df}: affiche le résumé des espaces libre sur la partition
663 \item \textbf{du}: affiche les informations de l'espace disque utilisé sur la
664 branche d'un répertoire
665 \item \textbf{fsck} est un utilistaire qui permet le contôle de l'intégrité des
666 partions
667 \item \texttt{ex: fsck /dev/sdb3} de préférence sur un système de fichier non
668 monté
669 \end{itemize}
670 \end{frame}
671
672
673 \section{La sauvegarde}
674 \frame{\tableofcontents[current]}
675
676 \begin{frame}
677 Pourquoi sauvegardé ?
678 \begin{itemize}
679 \item Fichier perdu, abimé
680 \item Erreur humaine
681 \item Crash disque
682 \end{itemize}
683 \end{frame}
684
685 \begin{frame}
686 \textbf{tar}
687 \begin{itemize}
688 \item Sauvegarder avec tar : \texttt{tar -cvf nom\_support liste\_fichiers}
689 \item Consulter une archive : \texttt{tar -tvf nom\_support}
690 \item Restituer une archive : \texttt{tar -xvf nom\_support (liste\_fichiers)}
691 \\
692 Compression avec les options \textbf{z} (gzip) et \textbf{j} (bzip2) \\
693 \end{itemize}
694 \end{frame}
695
696 \begin{frame}
697 La commande \textbf{cpio} : sauvegarde sur la sortie standard
698 \begin{itemize}
699 \item Sauvegarder : \texttt{cpio -ov > nomsupport}\\
700 \texttt{ex : find /home/oldaccounts | cpio -ov > /dev/support}
701 \item Consulter une archive : \texttt{cpio -itv < nomsupport}
702 \item Restituer une archive : \texttt{cpio -iv listefichiers < nomsupport}
703 \end{itemize}
704 \end{frame}
705
706 \begin{frame}
707 La commande \textbf{dd}: copie physique bloc à bloc
708 \begin{itemize}
709 \item \texttt{if= le fichier à copier}
710 \item \texttt{of= fichier la copie}
711 \item \texttt{bs= n} taille des blocs
712 \item \texttt{skip= n} nombres de blocs sautés en entrée
713 \item \texttt{seek= n} nombres de bloc sautés en sortie
714 \item \texttt{count= n} nombre de bloc copiés
715 \item \textit{exemple:} \texttt{dd if=/dev/hda1 of=/dev/sda1}
716 \end{itemize}
717 \end{frame}
718
719
720 \begin{frame}
721 \textbf{Partimage} : permet de faire l'image d'une partition
722 \begin{itemize}
723 \item Contrairement a dd, ne prend en compte que les bloc occupés
724 \item Possibilité de compression (Gzip ou Bzip2)
725 \item Fonctionnement réseau (NFS, mode client serveur)
726 \item \textit{exemple:} \texttt{partimage -z1 -o -d save /dev/hda12
727 /mnt/backup/redhat-6.2.partimg.gz}
728 \end{itemize}
729 \end{frame}
730
731 \begin{frame}
732 \textbf{Rsync}
733 \begin{itemize}
734 \item Outil open source permettant la sauvegarde incrémentale
735 \item Sauvegarde de fichiers locaux
736 \item Copie locale vers une machine distante et inversement
737 \item Copie locale vers un serveurs rsync et inversement
738 \item \textit{exemple:}{rsync -avF /src/path/ /dest/dir}
739 \end{itemize}
740 \end{frame}
741
742 \begin{frame}
743 Sauvegarde réseaux
744 \begin{itemize}
745 \item Avec \textbf{tar}\\
746 \texttt{tar -zcf - /some/file | ssh <host> tar -zxf - -C /destination}
747 \item Avec \textbf{partimage}\\
748 \texttt{partimage -s <host> save /some/partition <file>}
749 \item Avec \textbf{scp}\\
750 \texttt{scp /some/file [\ more ... ]\ <host>:/destination/file}
751 \item Avec \textbf{Rsync}\\
752 \texttt{rsync -e ssh /some/file [\ more ... ]\
753 <host>:/destination/file}
754
755 \end{itemize}
756 \end{frame}
757
758
759 \section{Gestion de processus}
760 \frame{\tableofcontents[current]}
761
762 \begin{frame}
763 Gestion des appplications
764 \begin{itemize}
765 \item \textbf{Application} = ensemble de processus
766 \item Processus:\\
767 fichier exécutable / des bibliothèques partagées (.so) \\
768 un ou plusieurs “threads”
769 \item \textbf{Activation} = sh, init, inetd, cron
770 \item \textbf{Information} = fichiers de log
771 \end{itemize}
772 \end{frame}
773
774
775 \begin{frame}
776 \textbf{Les processus}
777 \begin{itemize}
778 \item Exécution d'une commande : création d'un processus
779 \item Attribution d'un PID unique
780 \item Différents états (actif, en attente, ...)
781 \item Associés à un compte utilisateur, à un ou plusieurs groupes
782 \item Création d'un processus via la primitive "fork", "exec"
783 \item Référence du père : PPID
784
785 \end{itemize}
786 \end{frame}
787
788 \begin{frame}
789 \textbf{L'environnement} \\
790 Le fils hérite de son père:
791 \begin{itemize}
792 \item le répertoire courant
793 \item le umask
794 \item le ulimit
795 \item variables d'environement
796 \item le répertoire racine (modification via « chroot »)
797 \end{itemize}
798 \end{frame}
799
800 \begin{frame}
801 \textbf{Gestion des processus}
802 \begin{itemize}
803 \item ps, top, pstree : lister les processus
804 \item kill, killall : envoyer des signaux a des processus
805 \item strace : lister les appels système
806 \item lsof : lister les fichiers ouverts
807 \end{itemize}
808 \end{frame}
809
810 \begin{frame}
811 \textbf{cron}
812 \begin{itemize}
813 \item Exécution périodique de commandes
814 \item Fichier /etc/crontab
815 \item Répertoire /etc/cron.* (hourly, daily, weekly, montly)
816 \end{itemize}
817 \texttt{17 * * * * root run-parts --report /etc/cron.hourly}
818 \end{frame}
819
820
821 \begin{frame}
822 \textbf{cron}
823 \begin{itemize}
824 \item Limitation des utilisateurs via les fichiers\\
825 /etc/cron.allow\\
826 /etc/cron.deny\\
827 (Si non présent : soit root soit tout le monde)\\
828 \item Commande crontab : \\
829 \texttt{crontab fichier} soumission d'une table cron \\
830 \texttt{crontab -l}: visualisation des tables actives \\
831 \texttt{crontab -r}: arrêt de l'exécution de la table active \\
832 \texttt{crontab -e}: modification de la table active \\
833
834 \end{itemize}
835 \end{frame}
836
837 \begin{frame}
838 \textbf{Le syslog}
839 \begin{itemize}
840
841 \item Démon syslogd
842 \item Reçoit les messages d'erreur émis par le noyau / certains services
843 \item Permet de choisir la destination des log (fichiers, machine distante)
844 \item Différents critères : origine / sévérité
845 \item Fichier de configuration : \texttt{etc/syslog.conf}
846
847 \end{itemize}
848 \end{frame}
849
850 \begin{frame}
851 \begin{block}{/etc/syslog.conf}
852 \begin{tabular}{l l l}
853 user.notice & & -/var/log/user.log \\
854 *.* & & @log.exemple.com \\
855 daemon.* & & -/var/log/syslog \\
856 lpr.!* & & /dev/xconsole \\
857 *.crit;kern.none & & * \\
858 mail.info & & root \\
859 *.=debug & & /dev/tty8 \\
860 \end{tabular}
861 \end{block}
862 \end{frame}
863
864 \begin{frame}
865 \begin{block}{Les sous systèmes}
866 \begin{tabular}{l l l}
867 authpriv & & service de sécurité et d'authentification\\
868 cron & & service cron \\
869 daemon & & les démons système\\
870 kern & & noyau \\
871 syslog & & lui-même\\
872 user & & processus utilisateurs\\
873 lpr, ftp, mail, news, ...\\ & &
874 \end{tabular}
875 \end{block}
876 \end{frame}
877
878 \begin{frame}
879 \begin{block}{Les niveaux de sévérité}
880 \begin{tabular}{l l l}
881 emerg & & système inutilisable \\
882 alert & & intervention immédiate\\
883 crit & & erreur critique\\
884 err & & erreur\\
885 warn & & avertissement \\
886 notice & & événement normal \\
887 info & & information \\
888 debug & & test, mise au point \\
889 none & & ignorer les messages \\
890 \end{tabular}
891 \end{block}
892 \end{frame}
893
894 \begin{frame}
895 \begin{block}{Syntaxe des actions}
896 \begin{itemize}
897 \item ajouter le message à un fichier \texttt{(/var/log/message)}
898 \item envoyer le message à un serveur syslog \texttt{(@log.sn.auf)}
899 \item envoyer le message dans un tube nommé préexistant \texttt{(|/dev/xconsole)}
900 \item evoyer le message aux utilisateurs qui sont connecté \texttt{(root,roger)}
901 \item écrire sur la console texte \texttt{(/dev/tty8)}
902 \end{itemize}
903 \end{block}
904 \end{frame}
905
906
907
908 \section{Documentation}
909 \frame{\tableofcontents[current]}
910
911 \begin{frame}
912 Sur le système, les pages de \texttt{man}
913 \begin{itemize}
914 \item le format d'une page de manuel : \texttt{NAME}, \texttt{SYNOPSIS}, \texttt{DESCRIPTION}, \texttt{OPTIONS}, \texttt{FILES}, \texttt{SEE ALSO}, \texttt{BUGS}, ...
915 \item \texttt{man man} : les différentes sections. En cas d'ambiguité, on précise : \texttt{man 1 crontab} ou \texttt{man 5 crontab}
916 \item \texttt{whatis} et \texttt{apropos}
917 \item en français : paquet \texttt{manpages-fr}
918 \item le système \texttt{info}
919 \end{itemize}
920 \end{frame}
921
922 \begin{frame}
923 Sur le web : à boire et à manger !
924 \begin{itemize}
925 \item Les grands sites de documentations \textbf{validées} : \url{tldp.org}
926 et \texttt{traduc.org}, \url{linux-france.fr}, \url{framabook.org},
927 \item Les sites «constructeurs» : \url{www.debian.org},
928 \url{help.ubuntu.com}, \url{fedoraproject.org}, \url{www.redhat.com}
929 \item Les sites des logiciels : \url{www.apache.org}, \url{www.php.net}, ...
930 \item Attention : aux sites \textit{wiki} publics, aux forums (par mail, sur le web ou sur les news), aux blogs et autres sites personels.
931 \end{itemize}
932 \end{frame}
933
934
935 \begin{frame}
936 Au secours je suis perdu, aidez moi !
937 \begin{itemize}
938 \item Comment poser les questions de manière intelligente
939 \item \url{http://www.linux-france.org/article/these/smart-questions/smart-questions-fr.html}
940 \end{itemize}
941 \end{frame}
942
943
944
945
946 \end{document}
Fichiers joints
Pour vous référer aux pièces jointes d'une page, utilisez attachment:filename, comme indiqué ci-dessous dans la liste de fichiers. N'utilisez pas l'URL du lien [get], car elle peut changer et donc être facilement cassée.Vous n'êtes pas autorisé à joindre un fichier à cette page.