20/fév/2009 Posté dans Linux/Unix | 0 commentaire #!/bin/sh
echo -n > /tmp/liste-espace
echo « * Liste des fichiers de zone avec des espaces dans le domaine (find dans /var/named/) : » > /tmp/liste-espace
find /var/named/ -name « *.fwd » -print0 | xargs -0 grep -F » . » | awk -F »: » {‘ print $1 ‘} >> /tmp/liste-espace
echo « » >> /tmp/liste-espace
echo « * Liste des domaines avec un espace dans le named.com » >> /tmp/liste-espace
grep ‘zone « ‘ /etc/named.conf | grep -F ‘ » {‘ >> /tmp/liste-espace
echo « » >> /tmp/liste-espace
echo « * Liste des domaines avec un _ dans le nom dans le fichier de zone (grep du named.conf) : » >> /tmp/liste-espace
grep ‘zone « ‘ /etc/named.conf | awk -F’ »‘ {‘ print $2 ‘} | grep « _ » >> /tmp/liste-espace
echo « » >> /tmp/liste-espace
echo « * Liste des fichiers de zone manquant (grep dans syslog): » >> /tmp/liste-espace
grep ‘named’ /var/log/syslog | grep « file not found » | awk ‘{ print $7}’ | awk -F »/ » ‘{ print $1 }’ | sort | uniq >> /tmp/liste-espace
echo « » >> /tmp/liste-espace
grep named /var/log/syslog | grep « file not found » >> /tmp/liste-espace
echo « * Nombre de zones : » >> /tmp/liste-espace
echo « Nombre de zone dans /etc/named.conf : `grep zone /etc/named.conf | wc -l`, nombre de fichier de zones : `ls -la /var/named/ | wc -l` » >> /tmp
/liste-espace
echo « » >> /tmp/liste-espace
cat /tmp/liste-espace | mail -s « sujet mail » user@domain.ltd
20/fév/2009 Posté dans Linux/Unix | 0 commentaire Ce script rechercher les fichiers de plus de 30 jours et les effaces puis efface les dossiers vide.
#!/bin/sh
##
# Configuration
PWD_DIR=/home/ftp_users
TEMP_DIR=/tmp
LOG_SCRIPT=/var/log/menage_ftp.log
DATE_MAX_FICHIER=30
DATE_MAX_DOSSIER=30
##
# Fichiers temporaire
LISTEFICHIER=$TEMP_DIR/menagemail_listefichier
LISTEDOSSIER=$TEMP_DIR/menagemail_listedossier
##
# Recherche des fichiers
find /home/ftp_users/*/* -type f -mtime $DATE_MAX_FICHIER | sort -r > $LISTEFICHIER
##
# Recherche des dossiers
find /home/ftp_users/*/* -type d -mtime $DATE_MAX_DOSSIER | sort -r > $LISTEDOSSIER
cat $LISTEDOSSIER | while read i; do
$CONTENU_DOSSIER_USER=`ls -a $i | sed -e « /\.$/d » | wc -l`
if [ $CONTENU_DOSSIER_USER -eq 0 ]; then
echo « a » > /dev/null
else
rm -fr $i
fi
done
20/fév/2009 Posté dans Linux/Unix | 0 commentaire Avec le binaire iconv :
iconv -f utf-8 -t iso-8859-15 fichier-ISO.txt > fichier-utf8.txt
le paquet debian :
# dpkg -l | grep iconv
ii libtext-iconv-perl 1.4-3 converts between character sets in Perl
6/fév/2009 Posté dans Linux/Unix | 0 commentaire Voici un exemple de script qui synchronise la configuration et base utilisé par Vulture il utilise nc (netcat) pour emmètre les alerte par mail
#!/bin/sh
DATE=`date +"%Y%m%d-%N"`
SHORT_DATE=`date +"%Y%m%d"`
RESULT=""
SRV_MAIL="IP_SERV_MAIL"
MAIL_DST_ALERT="email@domaine.net"
HOSTNAME=`hostname -f`
REMOTE_SRV="ip-server-master"
##
# Synchro de la base sqlite
rsync -t -o -g -e ssh $REMOTE_SRV:/var/www/vulture/sql/* /var/www/vulture/sql/
sync_db=$?
if [ $sync_db -eq 0 ]; then
echo $SHORT_DATE" - SYNC DB : OK" >> /var/log/Vulture-sync.log
else
echo $SHORT_DATE" - SYNC DB : NOK" >> /var/log/Vulture-sync.log
(echo "HELO "$HOSTNAME; echo "mail from: "; echo "rcpt to: <"$MAIL_DST_ALERT">"; echo "DATA"; echo "From: root@"$HOSTNAME; echo "Subject: ["$HOSTNAME"] "$SHORT_DATE" - Synchro de la base Vulture NOK"; echo "To: "$MAIL_DST_ALERT; echo; echo "Synchronisation de la base Vulture en echec."; echo; echo "."; echo "QUIT") | nc $SRV_MAIL 25
fi
##
# Synchro des fichiers de configuration
rsync --exclude=httpd.conf -l -t -o -g -e ssh $REMOTE_SRV:/var/www/vulture/conf/*.\{conf,crt,tpl,key,chain\} /var/www/vulture/conf/
sync_conf=$?
if [ $sync_db -eq 0 ]; then
echo $SHORT_DATE" - SYNC CONF : OK" >> /var/log/Vulture-sync.log
else
echo $SHORT_DATE" - SYNC CONF : NOK" >> /var/log/Vulture-sync.log
(echo "HELO "$HOSTNAME; echo "mail from: "; echo "rcpt to: <"$MAIL_DST_ALERT">"; echo "DATA"; echo "From: root@"$HOSTNAME; echo "Subject: ["$HOSTNAME"] "$SHORT_DATE" - Synchro des fichiers de configuration Vulture NOK"; echo "To: "$MAIL_DST_ALERT; echo; echo "Synchronisation des fichiers de configuration Vulture en echec."; echo; echo "."; echo "QUIT") | nc $SRV_MAIL 25
fi 5/fév/2009 Posté dans Linux/Unix | 2 commentaires Ce script rechercher les fichiers de plus de 30 jours et les effaces puis efface les dossiers vide.
#!/bin/sh
##
# Configuration
PWD_DIR=/home/ftp_users
TEMP_DIR=/tmp
LOG_SCRIPT=/var/log/menage_ftp.log
DATE_MAX_FICHIER=30
DATE_MAX_DOSSIER=30
##
# Fichiers temporaire
LISTEFICHIER=$TEMP_DIR/menagemail_listefichier
LISTEDOSSIER=$TEMP_DIR/menagemail_listedossier
##
# Recherche des fichiers
find /home/ftp_users/*/* -type f -mtime $DATE_MAX_FICHIER | sort -r > $LISTEFICHIER
##
# Recherche des dossiers
find /home/ftp_users/*/* -type d -mtime $DATE_MAX_DOSSIER | sort -r > $LISTEDOSSIER
cat $LISTEDOSSIER | while read i; do
$CONTENU_DOSSIER_USER=`ls -a $i | sed -e "/\.$/d" | wc -l`
if [ $CONTENU_DOSSIER_USER -eq 0 ]; then
echo "a" > /dev/null
else
rm -fr $i
fi
done