\documentclass{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage{geometry}
\geometry{top=15mm, bottom=15mm, left=1cm, right=1cm}
\usepackage[french]{babel}
\usepackage{pslatex}
\usepackage[colorlinks=true,urlcolor=black]{hyperref}
\usepackage{graphicx}
\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\footrulewidth}{0.4pt}
\fancyfoot[L]{Uubu.fr}
\fancyfoot[R]{dim. mai 22 20:56:09 CEST 2016}
\lfoot{\Large \textit{Uubu.fr}}
\hypersetup{pdfinfo={
Title={mdadm.conf},
Author={Sylvain Girod},
Creator={Bash script from uubu.fr's format version 1},
Producer={Bash script and PDFLaTeX},
Subject={Configuration pour mdadm},
CreationDate={D:20160522205609},
ModDate={D:20160522205609},
Keywords={raid;storages;Haute Disponibilité}
}}
\begin{document}
 
\begin{center}
{\Huge mdadm.conf }
\end{center}
\vspace{1cm}
 
\begin{flushleft}
 
{\large Configuration pour mdadm}
 
\vspace{10mm}
 
\hspace{1mm}  Le fichier est une collection de mots séparés par un espace. Les mot utilisant un espace sont entre guillemet simple. Une ligne commençant par un espace sont considérés comme la suite de la ligne précédente. Les mots clé sont les suivants:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} DEVICE]{une ligne device liste les périphériques ( ou les partitions) qui peuvent contenir un composant d'un array MD. En recherchant les composants d'un array, mdadm scanne ces périphériques. Une ligne device peut contenir plusieurs périphériques séparés par des espaces et peut contenir des wirdcard, ou les mots clés containers et partitions. Ce dernier force mdadm à lire /proc/partitions et à inclure tous les périphériques et partitions trouvés. mdadm n'utilise pas les noms dans /proc/partitions mais seulement les numéros majeur et mineur. Il scanne /dev pour trouver le nom qui matche les numéros. Si aucune ligne DEVICE n'est trouvée, assume "DEVICE partitions containers".}
\end{description}
 
\hspace{1mm} par exemple: \\
\hspace{1mm} \textbf{DEVICE /dev/hda* /dev/hdc* } \\
\hspace{1mm} \textbf{DEV /dev/sd* } \\
\hspace{1mm} \textbf{DEVICE /dev/disk/by-path/pci* } \\
\hspace{1mm} \textbf{DEVICE partitions} \\
 
\begin{description} \normalsize
\item[\hspace{1mm} ARRAY]{Les lignes array identifient les arrays. le second mot peut être le nom du périphérique où l'array est normalement assemblé, tel que /dev/md1. Si le nom ne commence pas par un '/', il est traité comme relatif à /dev/md. le mot <ignore> peut être donné auquel cas un array qui matche le reste de la ligne n'est jamais automatiquement assemblé. Si aucun nom de périphérique n'est donné, mdadm détermine lui-même un nom approprié. les autres mots identifient l'array, ou l'array comme membre d'un groupe. Si plusieurs identités sont données, un périphérique composant doit matcher toutes les identité pour matcher. Chaque identité a un tag et une valeur. Les tags sont:}
\end{description}
 
\begin{description} \normalsize
\item[\hspace{6mm} uuid=]{doit correspondre à l'uuid stocké dans le superblock}
\item[\hspace{6mm} name=]{doit correspondre au nom stocké dans le superblock}
\item[\hspace{6mm} super-minor=]{numéro mineur stocké dans le superblock}
\item[\hspace{6mm} devices=]{Liste séparé par ',' de nom de périphérique ou motif. Seul ces périphériques seront utilisés pour assembler l'array. Ces périphériques doivent également être listés dans une ligne DEVICE}
\item[\hspace{6mm} level=]{Niveau de RAID. Pour compatibilité avec la sortie de mdadm --examine --scan}
\item[\hspace{6mm} num-devices=]{nombre de périphériques dans un array actif complet. Pour compatibilité avec la sortie de mdadm --examine --scan}
\item[\hspace{6mm} spares=]{Nombre de spares attendus dans l'array.}
\item[\hspace{6mm} spare-group=]{Nom textuel pour un groupe d'array. Tous les arrays avec le même nom de spare-group sont considérés comme étant du même groupe}
\item[\hspace{6mm} auto=]{indique si mdadm utiliser des array partitionnable ou non, en l'absence de udev. cette option n'est plus nécessaire}
\item[\hspace{6mm} bitmap=]{Fichier dans lequel un bitmap write-intent devrait être trouvé.}
\item[\hspace{6mm} metadata=]{Format des métadonnées de l'array}
\item[\hspace{6mm} container=]{spécifie que cette array est un array membre d'un conteneur. contient un chemin dans /dev ou l'uuid du conteneur}
\item[\hspace{6mm} member=]{Spécifie que cet array est un array membre d'un conteneur. identifie quel membre d'un conteneur appartient l'array.}
\end{description}
 
\begin{description} \normalsize
\item[\hspace{1mm} MAILADDR]{Donne une adresse email pour les alertes à envoyer quand mdadm fonctionne en mode monitor}
\item[\hspace{1mm} MAILFROM]{Adresse de l'émetteur du mail.}
\item[\hspace{1mm} PROGRAM]{Donne le nom d'un programme à lancer quand mdadm --monitor détecte des événements potentiellement interressant.}
\item[\hspace{1mm} CREATE]{Donne les valeurs par défaut à utiliser en créant les arrays et les nouveaux membres d'un array. inclus:}
\end{description}
 
\begin{description} \normalsize
\item[\hspace{6mm} owner=]{}
\item[\hspace{6mm} group=]{id user/group ou noms à utiliser. Défaut: root/wheel ou root/disk.}
\item[\hspace{6mm} mode=]{mode de fichier. Défaut: 0600}
\item[\hspace{6mm} auto=]{correspond à l'opion --auto de mdadm. Donne yes, md, mdp, part, pour indiques combien de périphériques d'entrée manquant devraient être créés}
\item[\hspace{6mm} metadata=]{Forma de métadonnées à utiliser}
\item[\hspace{6mm} symlinks=no]{Normalement, un line dans /dev est créé par mdadm avec un nom commençant par md ou md\_. Supprime la création de ce lien}
\item[\hspace{6mm} names=yes]{Permet d'utiliser des noms arbitraires pour les périphériques md}
\item[\hspace{6mm} bbl=no]{à no, désactive la réservation de l'espace pour la liste des blocks défectueux}
\end{description}
 
\begin{description} \normalsize
\item[\hspace{1mm} HOMEHOST]{devrait être un nom d'hôte ou les mots clés <system> (utilise gethostname(2)), <none> (n'assume aucun nom) ou <ignore> (Permet de définir un nom explicit à la création)}
\item[\hspace{1mm} AUTO]{Une liste de noms de format de métadonnées peuvent être donnés, précédé par un '+' ou un '-'. homehost est également permis équivalent à all. (0.90, 1.x, ddf, imsm).}
\item[\hspace{1mm} POLICY]{Spécifie le comportement automatique permis sur les nouveaux périphériques dans le système et fournis une manière de marquer les spares qui peuvent être déplacer entre les array comme domaine de migration. Les domaine peuvent être définis via les policy en spécifiant un nom de domain pour des chemins dans /dev/disk/by-path. Un périphérique peut appartenir à plusieurs domaines. Le domaine d'un array est l'union des domaines de tous les périphériques dans cet array. Un spare peut être automatiquement déplacé d'un array à un autre si le domaine de l'array de destination contient tous les domaines du nouveau disque ou si les array ont le même spare-group. Les mots clés dans les policy sont:}
\end{description}
 
\begin{description} \normalsize
\item[\hspace{6mm} domain=]{Chaine arbitraire}
\item[\hspace{6mm} metadata=]{0.9 1.x ddf ou imsm}
\item[\hspace{6mm} path=]{glob de fichier correspondant à tout dans /dev/disk/by-path}
\item[\hspace{6mm} type=]{disk ou part}
\item[\hspace{6mm} auto=]{yes, no, ou homehost}
\item[\hspace{6mm} action=]{include, re-add, spare, spare-same-slot, ou force-spare:}
\end{description}
 
\begin{description} \normalsize
\item[\hspace{12mm} include]{Permet d'ajouter un disque à un array si les métadonnées dans ce disque matche cet array}
\item[\hspace{12mm} re-add]{Inclus le périphérique dans l'array s'il apparaît en être un membre ou qu'un membre a été récemment supprimé et l'array a un bitmap write-intent pour autoriser la fonctionnalité re-add}
\item[\hspace{12mm} spare]{Comme ci-dessus et si le périphérique est vide, il devient un spare s'il y a array qui est candidat.}
\item[\hspace{12mm} spare-same-slot]{comme ci-dessus et si le slot a été utilisé par un array qui est dégradé et que le périphérique n'a pas de métadonnées, il devient automatiquement membre de l'array (ou son conteneur)}
\item[\hspace{12mm} force-spare]{comme ci-dessus et le disque devient un spare dans tous les autres cas.}
\end{description}
 
\vspace{1cm}{\huge Exemple }
 
\
 
\hspace{1mm} DEVICE /dev/sdc1
 
{\ttfamily
DEVICE /dev/hda1 /dev/hdb1\\ ARRAY /dev/md0 UUID=3aaa0122:29827cfa:5331ad66:ca767371\\ ARRAY /dev/md1 superminor=1\\ ARRAY /dev/md2 devices=/dev/hda1,/dev/hdb1\\ ARRAY /dev/md4 uuid=b23f3c6d:aec43a9f:fd65db85:369432df spare-group=group1\\ ARRAY /dev/md5 uuid=19464854:03f71b1b:e0df2edd:246cc977 spare-group=group1\\ ARRAY /dev/md/home UUID=9187a482:5dde19d9:eea3cc4a:d646ab8b auto=part\\ ARRAY /dev/md9 name='Data Storage'\\ POLICY domain=domain1 metadata=imsm path=pci-0000:00:1f.2-scsi-* action=spare\\ POLICY domain=domain1 metadata=imsm path=pci-0000:04:00.0-scsi-\texttt{[}01\texttt{]}* action=include\\ MAILADDR root@mydomain.tld\\ PROGRAM /usr/sbin/handle-mdadm-events\\ CREATE group=system mode=0640 auto=part-8\\ HOMEHOST <system>\\ AUTO +1.x homehost -all\\
}
\vspace{8mm}
\end{flushleft}
\end{document}
