créer le répertoire /var/uscrontab
This commit is contained in:
Jephté Clain 2014-04-23 12:17:36 +04:00
parent 1fe78fe78f
commit c3a5594b00
2 changed files with 42 additions and 11 deletions

View File

@ -71,3 +71,13 @@ etitle "Installation de /etc/init.d/kvm-stop-all" \
[ -n "$openvz_service" ] && [ -n "$openvz_service" ] &&
etitle "Installation de /etc/init.d/openvz-fix-etchosts" \ etitle "Installation de /etc/init.d/openvz-fix-etchosts" \
"$scriptdir/../init.d/install-openvz-fix-etchosts" "$scriptdir/../init.d/install-openvz-fix-etchosts"
etitle "Installation des répertoires pour uscrontab"
if mkdir -p /var/uscrontab/crontabs; then
chmod 1777 /var/uscrontab/crontabs
else
eerror "Impossible de créer le répertoire /var/uscrontab/crontabs"
fi
eend
exit 0

View File

@ -6,13 +6,22 @@ function display_help() {
uecho "$scriptname: lancer une suite de commande en respectant une planification de type cron uecho "$scriptname: lancer une suite de commande en respectant une planification de type cron
USAGE USAGE
$scriptname [options] /path/to/crontab $scriptname [options] [/path/to/crontab]
$scriptname -l [/path/to/crontab] $scriptname -e [/path/to/crontab]
$scriptname -l
La première forme du script doit normalement être lancé toutes les minutes par La première forme du script doit normalement être lancé toutes les minutes par
une tâche cron. Utiliser l'option --install pour ajouter automatique la ligne une tâche cron. Utiliser l'option --install pour ajouter automatique la ligne
dans la crontab de l'utilisateur. dans la crontab de l'utilisateur.
Si aucun fichier n'est spécifié, fusionner s'il existe le fichier
$USCRONTAB_DEFAULT_FILE
avec chacun des fichiers du répertoire
$USCRONTAB_DEFAULT_DIR
puis exécuter le fichier résultat avec le nom virtuel
$USCRONTAB_DEFAULT
note: le nom virtuel est utilisé pour le verrouillage avec --lock
A chaque lancement du script, il examine quels scripts doivent être exécutés A chaque lancement du script, il examine quels scripts doivent être exécutés
dans le fichier crontab spécifié. Ce fichier est composé de lignes dans un dans le fichier crontab spécifié. Ce fichier est composé de lignes dans un
format particulier, qui sont analysées et traitées dans l'ordre. format particulier, qui sont analysées et traitées dans l'ordre.
@ -157,17 +166,25 @@ Les lignes commençant par # sont des commentaires et sont ignorées
OPTIONS OPTIONS
-A, --install -A, --install
Installer une planification toutes les minutes de ce script dans la Installer une planification toutes les minutes du script dans la crontab
crontab de l'utilisateur. L'argument /path/to/crontab est requis. de l'utilisateur. Si l'argument /path/to/crontab n'est pas spécifié,
c'est une planification générique qui exécute les fichiers par défaut.
-R, --uninstall -R, --uninstall
Désinstaller la planification toutes les minutes de ce script du crontab Désinstaller la planification toutes les minutes du script du crontab de
de l'utilisateur. L'argument /path/to/crontab est requis, et seule cette l'utilisateur. Si l'argument /path/to/crontab est spécifié, cette
instance est désinstallée le cas échéant. instance est désinstallée. Sinon, ne désinstaller que la planification
générique.
-e, --edit
Lancer un editeur pour modifier la crontab spécifiée. Si aucun fichier
n'est spécifié, éditer $USCRONTAB_DEFAULT_FILE
-l, --list -l, --list
Lister les contenus des fichiers crontab dont l'exécution a été Si l'argument /path/to/crontab est spécifié, afficher le contenu de ce
planifiée avec --install fichier. Sinon, lister les contenus des fichiers crontab qui sont
Si /path/to/crontab est spécifié, ne lister le contenu de ce fichier que exécutés avec la planification actuelle. Si une planification générique
si son exécution a été planifiée. est installée, afficher le contenu du fichier
$USCRONTAB_DEFAULT_FILE
et chacun des fichiers du répertoire
$USCRONTAB_DEFAULT_DIR
-n, --fake -n, --fake
Afficher au lieu de les exécuter les commandes qui doivent être lancées Afficher au lieu de les exécuter les commandes qui doivent être lancées
@ -201,6 +218,10 @@ OPTIONS AVANCEES
USCRONTAB_CTLINE="* * * * * $script" USCRONTAB_CTLINE="* * * * * $script"
USCRONTAB_LOCKDELAY=8 USCRONTAB_LOCKDELAY=8
USCRONTAB_STOPEC=101 USCRONTAB_STOPEC=101
USCRONTAB_BASEDIR=/var/uscrontab
USCRONTAB_DEFAULT_FILE="$USCRONTAB_BASEDIR/crontabs/$USER"
USCRONTAB_DEFAULT_DIR="$USCRONTAB_BASEDIR/$USER.d"
USCRONTAB_DEFAULT="$USCRONTAB_BASEDIR/$USER"
action=run action=run
lockfile=auto lockfile=auto