\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]{sam. mai 22 21:38:41 CEST 2010}
\lfoot{\Large \textit{Uubu.fr}}
\hypersetup{pdfinfo={
Title={crontab},
Author={Sylvain Girod},
Creator={Bash script from uubu.fr's format version 1},
Producer={Bash script and PDFLaTeX},
Subject={Installer/Désinstaller des tâches cron},
CreationDate={D:20100522213841},
ModDate={D:20100522213841},
Keywords={Linux}
}}
\begin{document}
 
\begin{center}
{\Huge crontab }
\end{center}
\vspace{1cm}
 
\begin{flushleft}
 
{\large Installer/Désinstaller des tâches cron}
 
\vspace{10mm}
 
\hspace{1mm}  \textbf{crontab} est utilisé pour installer, désinstaller ou lister les tables utilisées par cron. Chaque utilisateur peut avoir son propre crontab. Ces fichier sont maintenus dans \textbf{/var/spool/cron/crontab}.
\vspace{5mm} \\
\hspace{1mm}  Si le fichier \textbf{/etc/cron.allow} existe, l'utilisateur doit y être listé pour utiliser cette commande. si \textbf{/etc/cron.deny} existe, l'utilisateur ne doit pas y être listé pour pouvoir utiliser cette commande.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge OPTIONS }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} -u]{permet de spécifier l'utilisateur, sinon crontab utilise le crontab de l'utilisateur courant}
\item[\hspace{1mm} -l]{affiche les tâche installée}
\item[\hspace{1mm} -r]{supprimer le crontab courant}
\item[\hspace{1mm} -e ]{permet d'éditer le crontab courant}
\item[\hspace{1mm} -i]{modifie l'option -r pour demander confirmation avant de supprimer}
\end{description}
 
\vspace{1cm}{\huge Fichiers crontab }
 
\
 
\hspace{1mm}  Certaines variable sont déjà paramètrés: \textbf{SHELL} vaut \textbf{/bin/sh}, et \textbf{LOGNAME} et \textbf{HOME} sont paramétrés avec \textbf{/etc/passwd}. si \textbf{MAILTO} est paramétré, cron peut envoyer un mail.
\vspace{5mm} \\
\hspace{1mm}  Cron supporte le module \textbf{pam-env}, et charge l'environnement spécifié par \textbf{/etc/environement} et \textbf{/etc/security/pam\_env.conf}.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} le format de cron]{chaque ligne a 5 champs suivis par une commande, suivi par un le caractère newline ('\textbackslash{}n')}
\item[\hspace{1mm} le format de crontab]{Il est identique mais il inclue un champs pour spécifier l'utilisateur pour la commande.}
\end{description}
 
{\ttfamily
champs\_\_\_\_\_\_\_\_\_\_\_valeurs permises\\ minute\_\_\_\_\_\_\_\_\_\_\_\_\_\_0-59\\ heure\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_0-23\\ jour du mois\_\_\_\_\_\_\_\_1-31\\ mois\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_1-12 ou le nom\\ jour de la semaine\_\_0-7 ou le nom\\
}
\vspace{8mm}
 
\begin{description} \normalsize
\item[\hspace{1mm} -]{Un champs peut être un * qui signifie toutes les valeurs.}
\item[\hspace{1mm} -]{Les plages de nombre sont permise ex: \textbf{8-11}}
\item[\hspace{1mm} -]{Les listes sont permises ex: \textbf{"1,2,5,9", "0-4,8-12"}}
\item[\hspace{1mm} -]{des 'pas' peuvent être spécifié avec la plage. ex: \textbf{"0-23/2"} signifie \textbf{0,2,4,6,8,10,12,14,16,18,20,22}.}
\item[\hspace{1mm} -]{Le jour d'une exécution peut être spécifiée par 2 champs: jour du mois et jours de la semaine.}
\item[\hspace{1mm} 30 4 1,15 * 5]{cette commande sera exécutée à 4h30 le 1er et le 15 de chaque mois, plus tous les vendredi}
\item[\hspace{1mm} -]{Au lieu des 5 champs, un de ces 8 termes spécial peut être utilisé:}
\end{description}
 
\begin{description} \normalsize
\item[\hspace{6mm} @reboot]{Lance une fois, au démarrage}
\item[\hspace{6mm} @yearly]{Lance une fois par an, "0 0 1 1 *"}
\item[\hspace{6mm} @annually]{idem}
\item[\hspace{6mm} @monthly]{Lance une fois par mois "0 0 1 * *"}
\item[\hspace{6mm} @weekly]{Lance une fois par semaine "0 0 * * 0"}
\item[\hspace{6mm} @daily]{Lance une fois par jour "0 0 * * *"}
\item[\hspace{6mm} @midnight]{idem}
\item[\hspace{6mm} @hourly]{lance une fois par heure "0 * * * *"}
\end{description}
 
\vspace{1cm}{\huge Exemples }
 
\
 
\hspace{1mm} modifier le shell utilisé \\
\hspace{1mm} \textbf{SHELL=/bin/bash} \\
\hspace{1mm} envoyer un mail a paul \\
\hspace{1mm} \textbf{MAILTO=paul} \\
\hspace{1mm} lancer 5 minute après minuit, chaque jour \\
\hspace{1mm} \textbf{5 0 * * * \$HOME/bin/daily.job >> \$HOME/tmp/out 2>\&1} \\
\hspace{1mm} lancer à 14h14 le premier de chaque mois \\
\hspace{1mm} \textbf{15 14 1 * * \$HOME/bin/monthly} \\
\hspace{1mm} lancer à 22h les jours de la seamine \\
\hspace{1mm} \textbf{0 22 * * 1-5 mail -s "It's 10pm" joe\%Joe,\%\%Where are your kids ?\%} \\
\hspace{1mm} 23 0-23/2 * * * echo "run 23 minutes after midn, 2am, 4am ..., everyday" \\
\hspace{1mm} \textbf{5 4 * * sun echo "run at 5 after 4 every sunday"} \\
\end{flushleft}
\end{document}
