Le Lundi 03 D�cembre 2001 17:32, Bernard Lambey a �crit :
> Serge Carrere �crivait Dimanche 2 D�cembre 2001 � 20h46
> ������������������������������������������������������
>
> > Voici le script de sauvegarde de fichiers log., copie de l'article de
> > Fr�d�ric Mazu� de "LINUX+" n�9 de Novembre 2000.
> > [ ... ]
> > Ensuite, on efface le fichier temporaire.
>
> ������������������������������������������������������
> Tout �a m'a l'air bel et bon, Serge, merci donc mille fois comme promis.
> Par hasard, une question, l'as tu test� toi-m�me ? Car je suis bien trop
> nul en bash pour me rendre compte s'il comporte une couillonnade et
> laquelle !!! Alors c'est, en fait, avec des script comme �a que je vais
> commencer mon apprentissage... je pr�f�rerai donc que tu me dises
> vas-y je l'ai test�, c'est tout bon !!!
> Mais, je ne sais pas, comme �a, � vue de pif, il me parait sympa ! ;-)))
> ... Amicalement
> Bernard L.(Montpellier)
Ben, avant de l'envoyer sur la liste, je l'ai test� sur des copies de 
fichiers (on n'est jamais trop prudent) et �a marche.
Je ne voulais pas envoyer de fausses commandes qui auraient pu causer des 
d�g�ts sur des machines.
Si tu veux tester et voir "en direct" ce que cela donne, en console sous root 
tu copies les fichiers /var/log/dmesg et messages par exemple dans ton 
r�pertoire /home/bernard. Change leur les droits en root 
chown bernard.bernard /home/bernard/messages et dmesg
Cr�e ces fichiers "cleantab" et "cleaner" dans ton home
cleantab-------------------
/home/serge/dmesg
/home/serge/messages
------------------------------
cleaner---------------------------
#! /bin/bash
# d'abord, s'assurer que la cleantab existe

if [ ! -e /home/bernard/cleantab ]
then
        exit 0
fi

# cr�er le fichier temporaire qui servira de tampon

temporaire=$(mktemp /home/bernard/cleantemp.XXXXXX)

# lire les entr�es de la cleantab
#conserver les xx derni�res lignes de chaque ent�re

for fichier in $(awk ' { print $0 } ' /home/bernard/cleantab)
do
        tail --lines=10 $fichier >$temporaire
        cat <$temporaire >$fichier
done

#cr�e par copie un fichier tempo du temporaire

cp -f $temporaire /home/bernard/tempo 

#effacer le fichier temporaire

rm -f $temporaire

exit 0
-----------------------------------------------------------------------------
rend ce cleaner ex�cutable
chmod 744 /home/bernard/cleaner
ouvre konqueror sur ton r�pertoire /home/bernard tu verras tes fichiers 
cr��s, dans une console (m�me en user) tapes ./cleaner et tu verras ce qui se 
passe et nottament que tes fichiers dmesg et messages auront fondu jusqu'� 10 
lignes.
Voil�.
Mais ce script est peut-�tre obsol�te, car depuis la MDK8.0 si tu vas dans le 
r�pertoire /var/log, tu remarqueras que les gens de Mandrake ont pr�par� des 
scripts qui "zippent" les fichiers de log. Par exemple, tu as messages (250k 
env.) et � c�t� messages.1.gz, messages.2.gz etc.. chacun faisant environ 80 
k. 
Donc, une part du boulot est d�j� fait, si vraiment tu as un manque de place, 
tu peux faire un script plus simple qui d�place les fichiers zipp�s dans un 
r�pertoire de /tmp et qui ensuite le d�truit.
A ciao, serge.

-- 
T'as le bonjour de LEO!
http://leoloden.free.fr

Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft?
Rendez-vous sur "http://www.mandrakestore.com";

Répondre à