Archive for the ‘Bash’ Category

Sauvegarde des logs SQUID

Thursday, June 19th, 2008

Comme nous impose la loi, nous devons retenir les logs de l’accès internet pendant 1 an.

Voici un petit script trouvé sur le forum français d’Ubuntu. J’ai adapté se script à mon pare feu pfsense et son module squid.

#!/bin/sh
# Initialisation de la date courante sous forme de variable
DATE=`date +”%y-%m-%d”`<br>

# Création du fichier de log du jour
touch /root/Archive/log_$DATE

# Copie des logs du jour dans le fichier d’archives
cp /var/squid/log/access.log /root/Archive/log_$DATE

# Compression du fichier de log
gzip log_$DATE.gz /root/Archive/log_$DATE

# Suppression du fichier contenant les logs du jour
rm /var/squid/log/access.log

# Rechargement de la configuration de Squid permettant de recréer un fichier de log vierge
squid -k reconfigure

# Destruction des logs datant de plus d’un an
find /root/Archive/ -ctime +365 -exec rm -f {} \;

# Fin du script
exit 0

Utiliser un Proxy dans une console

Friday, May 23rd, 2008

Pour utiliser un proxy dans la console (sur Ubuntu serveur par exemple)

export http_proxy="http://<em>[adresse</em>]:<em>[port]</em>"

exemple :

export http_proxy="http://192.168.1.1:3128"

Scripts et noms longs

Thursday, May 22nd, 2008

Lors de l’écriture de script bash il faut parfois gérer des répertoires avec des noms long et contenant sauvant des espaces.

Lors de l’ecriture de vos script pensez a double-quoté vos variables.

<br>
#!/bin/bash<br>
for x in ‘ls’<br>
do<br>
backup “$x<br>
done<br>

Edit du 24/06/2008

Lors de la création des scripts de sauvegarde pour VMWare serveur le problème des espaces était persistant. Apres une recherche sur le net j’ai trouvé une discution sur le forum de linuxfr.org.

Il suffit d’initialiser la variable IFS avec la valeur $’\n’. Il faut aussi penser a sauvegarder la valeur pour la restituer en fin de script.

Le man de bash explique IFS :

IFS    The Internal Field Separator that is used for word splitting after expansion and to  split  lines  into  words  with  the  read builtin command.  The default value is ‘‘<space><tab><newline>”.