Juin 152011
 

si à un moment vous sentez que la connexion à votre serveur est assez lente, c’est peut-être parce que ce fichier est trop gros.

Faire une copie de wtmp dans un répertoire moins critique /tmp par exemple

$ cp /var/adm/wtmp /tmp/wtmp 

Convertir le fichier en ascii

$ /usr/sbin/acct/fwtmp < /var/adm/wtmp > /tmp/wtmp


Créer un fichier wtmp plus petit des 100 dernières lignes du fichier wtmp:

$ tail -100 /tmp/wtmp > /tmp/wtmp.last

Ensuite reconvertir le fichier ascii en binaire :

$ /usr/sbin/acct/fwtmp -ic < /tmp/wtmp.last > /tmp/wtmp

remplacer le fichier:

$ mv /tmp/wtmp /var/adm/wtmp

et un piti script en cadeau :

Download : fwtmp.sh

#!/bin/ksh
 
case $(uname -s)
in
	HP-UX) FWTMP=/usr/sbin/acct/fwtmp ;;
	SunOS) FWTMP=/usr/lib/acct/fwtmp ;;
	*) echo "[ $(uname -s) ] Non pris en charge"
		exit 1
		;;
esac
 
MAX_SIZE="1024000"	# taille au dela de laquelle on veut purger le fichier
REST_LINES="10000"	# le nombre d'elements que l'on veut garder
 
for XTMP in /var/adm/wtmp /var/adm/btmp /etc/utmp
do
	# on teste si le fichier a purger existe bien
	[-f "$XTMP" ] || continue
	SIZE=
	SIZE=$(/bin/ls -l $XTMP |awk '{print $5}' 2>/dev/null)
 
	# si on atteint $MAX_SIZE, on purge
	[ "$SIZE" -gt "$MAX_SIZE" ] && {
		${FWTMP} < ${XTMP} |tail -n $REST_LINES |${FWTMP} -ic > /tmp/${XTMP##*/}
 
		if [ "$?" = "0" ]
			then
				mv /tmp/${XTMP##*/} ${XTMP}
			else
				echo "Erreur a la purge du fichier [${XTMP}]"
		fi
	}
done

 Laisser un commentaire

Vous pouvez utiliser ces tags et attributs HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(requis)

(requis)

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.