# Display help disp_help() { cat << EOF Utilisation : init.sh [OPTIONS] [-m|--module ] Initialise une machine pour l'intégrer à un réseau. Options : -m, --module Lance les modules indiqués même s'il ne sont pas dans les fichiers de configuration. -c, --check-only Lance les procédure de vérification préexecution sans rien modifier. -j, --jump Saute les procédures de vérification. -k, --keep-going L'execution continura en cas d'erreur. -r, --resume Reprend l'execution la ou elle c'est arrêté. -h, --help Affiche ce texte d'aide. -v, --version Show version of that script and version of all available modules. Attention : les options courtes ne sont pas concaténable. Variable d'environnement : LOGFILE Stocke le nom complet du fichier de log qui sera utilisé. Fichiers de configuration : Le fichier de configuration principal fournira les détails nécessaire au déploiement de la nouvelle machine. Il doit se situer dans le répertoire conf/ à coté du script init.sh. Si un fichier appelé "hostname.sh" (ou hostname est le nom d'hote) existe il sera le fichier de configuration principal. Dans le cas contraire, le nom générique "init.conf.sh" sera recherché. En l'absence de fichier de configuration ce script ne pourra pas fonctionner. Veuiller consulter les fichiers de configuration fournis en exemple pour avoir un aperçu des paramêtres disponibles. EOF } # Show version infos show_version() { echo -e "${BWhite}init.sh${DEFAULTCOL} version ${BGreen}$VERSION${DEFAULTCOL}" echo "" echo "Modules disponibles :" for mod in $MYPATH/modules/*.sh; do . $mod local modname=$(get_mod_name $mod) local version=VER_$modname echo -e "\t$BWhite$modname${DEFAULTCOL}: $BGreen${!version}$DEFAULTCOL" done [[ $EUID -ne 0 ]] && echo -e "\n${BYellow}Attention :$DEFAULTCOL Ce script requiert les droits d'administration pour fonctionner." } # Get module name from module file get_mod_name() { echo $(basename $1 | cut -f 1 -d '.') }