##@cooked comments # -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8 ## Outils pour les distributions redhat ##@cooked nocomments ##@require base ##@require sysinfos ##@require service uprovide redhat urequire base sysinfos service ################################################################################ # Gestion des packages function pkg_check() { # Vérifier que les packages sont installés sur le système local pkg for pkg in "$@"; do rpm -q "$pkg" >/dev/null || return 1 done return 0 } function pkg_update() { # Mettre à jour la liste des packages silencieusement sans confirmation LANG=C yum check-update -q } function pkg_upgrade() { # Mettre à jour la liste des packages silencieusement sans confirmation LANG=C yum update -qy } function pkg_install() { # Installer les packages silencieusement et sans confirmation if check_sysinfos -v rhel4 centos4 redhat4 -b 64; then LANG=C up2date --channel=rhel-x86_64-es-4 "${pkgs[@]}" #elif check_sysinfos -v rhel4 centos4 redhat4 -b 32; then # LANG=C up2date --channel=rhel-i386-es-4 "${pkgs[@]}" else LANG=C yum install -qy "$@" fi } function pkg_installm() { # Installer les packages silencieusement et sans confirmation # Retourner 0 si au moins un des packages a été installé. Sinon, les # packages n'ont pas été instllés, soit parce qu'ils sont déjà installé, # soit parce qu'il y a eu une erreur. if ! pkg_check "$@"; then # essayer d'installer les packages pkg_install "$@" else # aucun package n'a été installé return 1 fi } ################################################################################ # Gestion des services function service_disable() { # Désactiver le service $1 pour qu'il ne se lance pas automatiquement au # démarrage chkconfig "$1" off } function service_enable() { # Activer le service $1 pour qu'il se lance automatiquement au démarrage chkconfig "$1" on } ################################################################################ # Gestion des interfaces réseau function create_bridge() { # Créer un nouveau pont nommé $1 avec les paramètres $2 eerror "non implémenté" return 1 }