\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]{jeu. mars 31 13:39:32 CEST 2016}
\lfoot{\Large \textit{Uubu.fr}}
\hypersetup{pdfinfo={
Title={systemd-journald},
Author={Sylvain Girod},
Creator={Bash script from uubu.fr's format version 1},
Producer={Bash script and PDFLaTeX},
Subject={Service de journalisation},
CreationDate={D:20160331133932},
ModDate={D:20160331133932},
Keywords={systemd;Linux;boot}
}}
\begin{document}
 
\begin{center}
{\Huge systemd-journald, systemd-journald.service, systemd-journald.socket, systemd-journald-dev-log.socket, systemd-journald-audit.socket }
\end{center}
\vspace{1cm}
 
\begin{flushleft}
 
{\large Service de journalisation}
 
\vspace{10mm}
 
\hspace{1mm}  systemd-journald est un service système qui collecte et stocke des données de log. Il créé et maintient des journaux indexés basés sur les informations de logging qui sont reçus depuis une variété de sources:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} -]{Logs du kernel, via kmsg}
\item[\hspace{1mm} -]{Logs système simple, via syslog(3)}
\item[\hspace{1mm} -]{Logs système structurés via l'api native sd\_journal\_print(4)}
\item[\hspace{1mm} -]{Sortie est erreur standard des services système}
\item[\hspace{1mm} -]{Enregistrements d'audit, via le sous-système d'audit}
\end{description}
 
\hspace{1mm}  Le service collecte implicitement de nombreux champs de métadonnées pour chaque messages de log de manière sécurisé et inaltérable. Les données de log collectées sont principalement du texte, mais peuvent également inclure des données binaire. Tous les objets stockés dans le journal peuvent avoir une taille allant jusqu'à 2\textasciicircum 64-1 octets
\vspace{5mm} \\
 
 
\hspace{1mm}  Par défaut, le journal stocke les données de logs dans /run/log/journal/. Vu que /run est volatile, les données de log sont perdue au redémarrage. Pour que les données soient persistantes, il suffit de créer /var/log/journal/, où systemd-journal va stocker les données:
\vspace{5mm} \\
 
 
{\ttfamily
mkdir -p /var/log/journal\\ systemd-tmpfiles --create --prefix /var/log/journal\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge Signaux }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} SIGUSR1]{Demande au journal de vider /run dans /var. journalctl --flush utilise ce signal.}
\item[\hspace{1mm} SIGUSR2]{Demande une rotation immédiate des fichiers journaux. journalctl --rotate utilise ce signal.}
\item[\hspace{1mm} SIGRTMIN+1]{Demande que toutes les données de log non-écrite le soient sur disque. journalctl --sync utilise ce signal.}
\end{description}
 
\vspace{1cm}{\huge Kernel Command Line }
 
\
 
\hspace{1mm}  Quelques paramètre de configuration de journald.conf peuvent être passés sur la ligne de commande du kernel:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} systemd.journald.forward\_to\_syslog=]{}
\item[\hspace{1mm} systemd.journald.forward\_to\_kmsg=]{}
\item[\hspace{1mm} systemd.journald.forward\_to\_console=]{}
\item[\hspace{1mm} systemd.journald.forward\_to\_wall=]{Active/désactive la collecte des messages dans syslog, kmsg, la console système, ou wall}
\end{description}
 
\vspace{1cm}{\huge Contrôle d'accès }
 
\
 
\hspace{1mm}  Les fichiers journaux sont par défaut possédés et lisible par le groupe systemd-journal mais ne sont pas accessible en écriture. Ajouter un utilisateur à ce groupe lui permet de lire ces fichiers journaux.
\vspace{5mm} \\
 
 
\hspace{1mm}  Par défaut, chaque utilisateur loggé a sont propre jeu de fichiers journaux dans /var/log/journal. Ces fichiers ne sont pas possédés par l'utilisateur, cependant, pour éviter que l'utilisateur puisse y écrire directement. Au lieu de ça, les ACL sont utilisées pour s'assurer que l'utilisateur a les accès en lecture seule.
\vspace{5mm} \\
 
 
\hspace{1mm} Des utilisateurs et groupes additionnels peuvent obtenir l'accès aux fichiers journaux via les ACL. Par exemple, pour donner l'accès aux membres de wheel et adm:
 
{\ttfamily
setfacl -Rnm g:wheel:rx,d:g:wheel:rx,g:adm:rx,d:g:adm:rx /var/log/journal/\\
}
\vspace{8mm}
 
\hspace{1mm}  Noter que cette commande va mettre à jours les ACL pour les fichiers journaux existants et pour les futures fichiers journaux créés dans /var/log/journal/
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Fichiers }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} /etc/systemd/journald.conf]{Configure le comportement de systemd-journald}
\item[\hspace{1mm} /run/log/journal/machine-id/*.journal]{}
\item[\hspace{1mm} /run/log/journal/machine-id/*.journal\textasciitilde]{}
\item[\hspace{1mm} /var/log/journal/machine-id/*.journal]{}
\item[\hspace{1mm} /var/log/journal/machine-id/*.journal\textasciitilde]{systemd-journald écrit les entrées dans les fichiers avec le suffix .journal. Si le service n'est pas stoppé proprement, ou si des fichiers sont corrompus, il sonts renommés en utilisant le suffix .journal\textasciitilde, et systemd-journald écrit un nouveau fichier.}
\item[\hspace{1mm} /dev/kmsg]{}
\item[\hspace{1mm} /dev/log]{}
\item[\hspace{1mm} /run/systemd/journal/dev-log]{}
\item[\hspace{1mm} /run/systemd/journal/socket]{}
\item[\hspace{1mm} /run/systemd/journal/stdout]{Sockets et autres chemins que systemd-journald écoute qui sont visible dans le système de fichier. De plus, journald peut écouter les évènements d'audit en utilisant netlink.}
\end{description}
\end{flushleft}
\end{document}
