Pièce jointe « fhs.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{FHS : Filesystem Hierarchy Standard \\ \textit{norme de la hiérarchie des systèmes de fichiers}}
  13 \author{}\institute{Agence universitaire de la Francophonie}
  14 
  15 \begin{document}
  16 
  17 \begin{frame}
  18 \titlepage
  19 \end{frame}
  20 
  21 \section{Vue globale}
  22 \frame{\tableofcontents[current]}
  23 
  24 \begin{frame}
  25 La FHS (Filesystem Hierarchy Standard) définit l'arborescence et le contenu des
  26 principaux répertoires des systèmes de fichiers des systèmes d'exploitation
  27 Linux et de la plupart des systèmes Unix.
  28 
  29 \begin{itemize}
  30 \item \url{www.pathname.com/fhs/}
  31 \item norme du Free Standards Group = Hewlett-Packard, Red Hat, IBM, Dell, etc.
  32 \item suivie à quelques exceptions près par tous les systèmes Unix (sauf MacOS X)
  33 \item ... dont toutes les distributions Linux, dont Debian GNU/Linux.
  34 \end{itemize}
  35 \end{frame}
  36 
  37 \begin{frame}
  38 Les grands répertoires sous la racine :
  39 \begin{itemize}
  40 \item \texttt{/bin}, \texttt{/sbin} et \texttt{/lib} : commandes de base et bibliothèques associées
  41 \item \texttt{/etc} : fichiers de configuration
  42 \item \texttt{/usr} (\textit{unix system ressources}) : ressources non nécessaires au démarrage
  43 \item \texttt{/var} : données variables
  44 \item \texttt{/home} : répertoires des utilisateurs
  45 \item \texttt{/mnt} et \texttt{/media} : points de montages
  46 \item \texttt{/dev} : fichiers correspondants à des périphériques
  47 \item \texttt{/tmp} : données temporaires
  48 \item Linux : \texttt{/proc} et \texttt{/sys} : systèmes de fichiers virtuels
  49 \end{itemize}
  50 \end{frame}
  51 
  52 \section{Les deux grandes hiérachies : \texttt{/} et \texttt{/usr}} 
  53 \frame{\tableofcontents[current]}
  54 
  55 \begin{frame}
  56 \begin{center}
  57 \texttt{/} : le système de fichier racine doit contenir tout ce qui
  58 permet au système de démarrer\footnote{c'est un peu moins vrai avec le démarrage par \texttt{initrd}}
  59 \end{center}
  60 \begin{itemize}
  61 \item \texttt{/bin} et \texttt{sbin} : commandes de base (utilisation et administration)
  62 \item \texttt{/lib} : bibliothèques nécessaires à \texttt{/bin} et \texttt{/sbin} et modules du noyau
  63 \item \texttt{/etc} : fichiers de configuration
  64 \item \texttt{/boot} : fichiers statiques pour le démarrage
  65 \item \texttt{/dev} : périphériques nécessaires au démarrage
  66 \item \texttt{/root} : répertoire de l'administrateur
  67 \item \texttt{/tmp} : données temporaires
  68 \end{itemize}
  69 \end{frame}
  70 
  71 \begin{frame}
  72 \begin{center}
  73 \texttt{/usr} : la «sous-arborescence» contenant les ressources nécessaires au fonctionnement
  74 \end{center}
  75 \begin{itemize}
  76 \item \texttt{/usr/bin} : la plupart des commandes utilisateur
  77 \item \texttt{/usr/lib} : bibliothèques logicielles
  78 \item \texttt{/usr/sbin} : commande d'administration non vitales
  79 \item \texttt{/usr/share} : données partageables non liées à une architecture matérielle
  80 \item \texttt{/usr/include} : fichiers d'entêtes pour développement (C en général)
  81 \item \texttt{/usr/local} : hiérarchie purement locale (vide au départ)
  82 \item \texttt{/usr/X11}, \texttt{/usr/games} : sous-systèmes
  83 \item \texttt{/usr/src} : codes sources
  84 \item \texttt{/usr/games} : indispensable ;)
  85 \end{itemize}
  86 Note : \texttt{/etc} reste le lieu des configurations.
  87 \end{frame}
  88 
  89 \section{Les répertoires à valeur ajoutée}
  90 \frame{\tableofcontents[current]}
  91 
  92 \begin{frame}
  93 \begin{center}
  94 \texttt{/etc} : les fichiers de configuration
  95 \end{center}
  96 \begin{itemize}
  97 \item des fichiers textes, souvent auto-documentés grâce à la possibilité de commentaires
  98 \item présence de fichiers fondamentaux : \texttt{/etc} n'est pas le répertoire où il faut jouer ;)
  99 \item en général pour un logiciel il existe un sous-répertoire \texttt{/etc/\textit{logiciel}/} 
 100 \item \texttt{/etc/init.d/} et \texttt{/etc/rc?.d/} : instructions pour le démarrage et l'arrêt
 101 \end{itemize}
 102 \end{frame}
 103 
 104 \begin{frame}
 105 \begin{center}
 106 \texttt{/var} : les fichiers de données variables
 107 \end{center}
 108 \begin{itemize}
 109 \item \texttt{/var/lib} : données d'état pour les applications (exemple : SGBD)
 110 \item \texttt{/var/log} : les logs (fichiers «journaux»)
 111 \item \texttt{/var/spool} : files d'attentes
 112 \item \texttt{/var/mail} : les boîtes aux lettres
 113 \item \texttt{/var/cache} : données cachées (au sens «déjà calculées»)
 114 \item \texttt{/var/tmp} : données temporaires non effacées lors d'un reboot
 115 \item \texttt{/var/www} : données pour le système web
 116 \end{itemize}
 117 C'est un répertoire fondamental !
 118 \end{frame}
 119 
 120 \begin{frame}
 121 \begin{center}
 122 \texttt{/home} : les répertoires des utilisateurs
 123 \end{center}
 124 \begin{itemize}
 125 \item \texttt{/home/login}
 126 \item \texttt{/home/group/login}
 127 \item \texttt{/home/t/h/thomas}
 128 \end{itemize}
 129 \end{frame}
 130 
 131 \section{Les répertoires «étranges»}
 132 \frame{\tableofcontents[current]}
 133 
 134 \begin{frame}
 135 \begin{center}
 136 \texttt{/dev} : les périphériques et fichiers spéciaux
 137 \end{center}
 138 \begin{itemize}
 139 \item \texttt{/dev/sda}, \texttt{/dev/cdrom} (lien vers), etc.
 140 \item \texttt{/dev/null}, \texttt{/dev/zero},  \texttt{/dev/tty}, ...
 141 \item sous-répertoires : \texttt{disk} \texttt{input} \texttt{snd} \texttt{net} (et LVM)
 142 \end{itemize}
 143 Aujourd'hui souvent géré dynamiquement par \texttt{udev}.
 144 \end{frame}
 145 
 146 \begin{frame}
 147 \begin{center}
 148 \texttt{/proc} et \texttt{/sys} : systèmes de fichiers \textit{virtuels}
 149 \end{center}
 150 \begin{itemize}
 151 \item \texttt{/proc} : un sous-répertoire par processus et des fichiers d'état noyau
 152 \item \texttt{/sys} : amélioration de \texttt{/proc} pour la vision hierarchique du système
 153 \end{itemize}
 154 \end{frame}
 155 
 156 
 157 \section{Des exemples}
 158 \frame{\tableofcontents[current]}
 159 
 160 \begin{frame}
 161 \begin{center}
 162 Exemple de répartition dans la FHS : \textit{apache2}
 163 \end{center}
 164 \begin{itemize}
 165 \item \texttt{/etc/apache2/*} : configuration
 166 \item \texttt{/usr/sbin/apache2} : le binaire principal
 167 \item \texttt{/usr/bin/htpasswd}, \texttt{/usr/sbin/split-logfiles}, etc. : utilitaires associés
 168 \item \texttt{/usr/lib/libapr*} : bibliothèques logicielles partagées
 169 \item \texttt{/usr/lib/apache2/} : modules pour apaches (\textit{php4}, \textit{fastcgi}, ...)
 170 \item \texttt{/etc/init.d/apache2} : script de démarrage, d'arrêt, rechargement, status, ...
 171 \item \texttt{/usr/share/doc/apache2/*} et \texttt{/usr/share/man/} : documentation
 172 \item \texttt{/var/www/*} : les données du site (pages HTML) 
 173 \end{itemize}
 174 \end{frame}
 175 
 176 \begin{frame}
 177 \begin{center}
 178 Exemple de répartition dans la FHS : \textit{openvz}
 179 \end{center}
 180 \begin{itemize}
 181 \item \texttt{/boot} et \texttt{/lib/modules/...} : le petit noyau OpenVZ
 182 \item \texttt{/usr/sbin/vz*} : les outils
 183 \item \texttt{/etc/vz} : les configurations
 184 \item \texttt{/var/lib/vz} : les données... dont les racines (\texttt{/}) des CT !
 185 \item \texttt{/usr/share/doc/vzctl/*} : la documentation (hors page de \textit{man})
 186 \end{itemize}
 187 Rappel : \texttt{dpkg -L vzctl}, \texttt{dpkg -L vzquota}, ...
 188 
 189 Note : sur Debian, \texttt{/vz} est un lien vers \texttt{/var/lib/vz}
 190 \end{frame}
 191 
 192 
 193 \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.
 All files | Selected Files: delete move to page copy to page

Vous n'êtes pas autorisé à joindre un fichier à cette page.