Page 1 of 1

[RESOLU]Pb de script

Posted: 16 Oct 2014 22:19
by ernie
Bonsoir

J utilise le script suivant via cron.

#!/bin/sh
./mnt/pool1/finch/etc/finch/shutdown
monlog=rsync_verspool3_`date +%Y-%m-%d_%Hh%Mmn`.log
/usr/local/bin/rsync -avrhstx --stats --progress /mnt/pool1/finch/mnt/pool1/documents /mnt/pool3>./$monlog
echo "Sauvegarde 1 terminee" >> ./$monlog
/usr/local/bin/rsync -avrhstx --stats --progress /mnt/pool1/finch/mnt/pool1/musiques /mnt/pool3>./$monlog
echo "Sauvegarde 2 terminee" >> ./$monlog
/usr/local/bin/rsync -avrhstx --stats --progress /mnt/pool1/finch/mnt/pool1/photos /mnt/pool3>./$monlog
echo "Sauvegarde 3 terminee" >> ./$monlog
/usr/local/bin/rsync -avrhstx --stats --progress /mnt/pool1/finch/mnt/pool1/rsync /mnt/pool3>./$monlog
echo "Sauvegarde 4 terminee" >> ./$monlog
/usr/local/bin/rsync -avrhstx --stats --progress /mnt/pool1/finch/mnt/pool1/script /mnt/pool3>./$monlog
echo "Sauvegarde 5 terminee" >> ./$monlog
/usr/local/bin/rsync -avrhstx --stats --progress /mnt/pool1/finch/mnt/pool1/videos /mnt/pool3>./$monlog
echo "Sauvegarde 6 terminee" >> ./$monlog
/usr/local/bin/rsync -avrhstx --stats --progress /mnt/pool1/finch/mnt/pool1/documents /mnt/pool2>./$monlog
echo "Sauvegarde 7 terminee" >> ./$monlog
/usr/local/bin/rsync -avrhstx --stats --progress /mnt/pool1/finch/mnt/pool1/photos /mnt/pool2>./$monlog
echo "Sauvegarde 8 terminee" >> ./$monlog
/usr/local/bin/rsync -avrhstx --stats --progress /mnt/pool1/finch/mnt/pool1/videos/Perso /mnt/pool2>./$monlog
echo "Sauvegarde 9 terminee" >> ./$monlog

J ai mis les sauvegarde terminée pour tracer mon problème car j obtiens dans LOG:

sending incremental file list

Number of files: 362 (reg: 358, dir: 4)
Number of created files: 0
Number of deleted files: 0
Number of regular files transferred: 0
Total file size: 33.44G bytes
Total transferred file size: 0 bytes
Literal data: 0 bytes
Matched data: 0 bytes
File list size: 0
File list generation time: 0.001 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 5.72K
Total bytes received: 20

sent 5.72K bytes received 20 bytes 11.47K bytes/sec
total size is 33.44G speedup is 5,828,765.14
Sauvegarde 9 terminee

J ai pas le résultat des 8 précédents

Quel est le problème ?

Re: Pb de script

Posted: 16 Oct 2014 22:31
by velivole18
Bonsoir,
Un bref coup d'oeil sur votre script ...
Pourquoi ne mettez-vous pas systématiquement des ">>./$monlog" avec 2 signes supérieur ">" au lieu d'un seul ?
Je pense qu'à chaque fois vous écrasez le fichier monlog.
Il faut juste mettre un seul > sur la toute 1ère ligne, après sur les autres lignes, systématiquement 2 >.
Vous essayez et vous nous dites le résultat ?
Cordialement.

Re: Pb de script

Posted: 16 Oct 2014 22:52
by ernie
J ai corrigé et cela fonctionne.

Quelle est la différence entre > et >> ?

Ps : je suis novice en script

Re: [RESOLU] Pb de script

Posted: 16 Oct 2014 22:57
by velivole18
Bonsoir,

Un seul > crée le fichier en sortie et écrit dedans.
De nouveau un seul > et de nouveau le fichier est créé et donc le fichier précédent est écrasé !
2 >, et ce que l'on écrit dans le fichier par redirection avec les symboles > vient se rajouter au bout du fichier, donc sans écraser celui-ci mais bien en le complétant.

Cordialement.

Re: [RESOLU] Pb de script

Posted: 16 Oct 2014 23:05
by ernie
Merci bcp

Re: [RESOLU] Pb de script

Posted: 17 Oct 2014 00:01
by mtiburs
Bonsoir,

A savoir ! si le fichier n'a pas été crée, les 2 > créeront quand même le fichier

donc 1 > sera surtout valable quand on veut repartir d'un fichier neuf

Re: [RESOLU] Pb de script

Posted: 17 Oct 2014 06:33
by ernie
Quelle est la commande à ajouter pour envoyer le fichier LOG par email ?

J ai trouvé cela
#!/bin/bash
# script to send simple email
# email subject
SUBJECT="SET-EMAIL-SUBJECT"
# Email To ?
EMAIL="admin@somewhere.com"
# Email text/message
EMAILMESSAGE="/tmp/emailmessage.txt"
echo "This is an email message test"> $EMAILMESSAGE
echo "This is email text" >>$EMAILMESSAGE
# send an email using /bin/mail
/bin/mail -s "$SUBJECT" "$EMAIL" < $EMAILMESSAGE

Je vais tester en l adoptant.

Merci par avance

Re: [RESOLU] Pb de script

Posted: 17 Oct 2014 07:07
by ernie
Il n y a pas le fichier Mail dans bin.

Comment nas4free fait pour envoyer les rapports par email ?

Re: Pb de script

Posted: 28 Oct 2014 17:39
by ernie
Bon j'avance dans la solution.

Il semble qu'il faille utiliser msmtp pour envoyer les emails.
Le forum anglais donne des informations: viewtopic.php?f=70&t=4799&p=36126&hilit=msmtp#p36126
Cela renvoie à:
http://www.packetwatch.net/documents/gu ... 111301.php
Sur la base du script du 2eme lien, j'ai fait le script suivant:

Code: Select all

#!/bin/sh
file=/mnt/pool1/test
recipient="email"
printf=/usr/bin/printf
msmtp=/usr/local/bin/msmtp
#msmtp_config=/usr/local/etc/msmtp.conf
body="This is a test."
subject="Test sent from NAS"
$printf "To: $recipient\nSubject: $subject\n\n$body" | $msmtp --file=$msmtp_config -t
exit 0
En activant la ligne: #msmtp_config=/usr/local/etc/msmtp.conf
J'ai : msmtp: /usr/local/etc/msmtp.conf: No such file or directory

En la désactivant (au cas où le .conf ne soit pas vital) cela ne marche pas non plus.
msmtp: : No such file or directory

Je cherche juste à envoyer un email et un fichier avec.

Si certains peuvent m'éclairer, merci

Re: Pb de script

Posted: 28 Oct 2014 17:50
by ernie
Il y a aussi des sources d'inspiration ici:
https://github.com/fritz-hh/scripts_NAS4Free

Mais là cela sort complètement de mes compétences. Mais j'ai remarqué la fonction sendmail dans le script. Pourtant si je tape sendmail dans mon terminal connecté au nas, il dit qu'il connait pas.

Re: Re : Pb de script

Posted: 28 Oct 2014 18:31
by laster13
Je n ai pas regarde dans le détail les fonctions proposées dans le gît de Fritz... Cela dit si tu veux le tester pour nous dire ce qu il en est ..

Tout d abord tu installes le packet gît

pkg_add -r git

Ensuite tu fais

git clone https://github.com/fritz-hh/script_NAS4Free.git

Logiquement cela s installe dans le dossier root et avec la commande mv , tu le déplaces ailleurs... ./usr/local/Fritz.... Par exemple!

Je te conseille de le tester dans une jail pour ne pas compromettre le système au cas ou cela ne fonctionnerait pas.

Re: Pb de script

Posted: 28 Oct 2014 18:38
by ernie
En fait les scripts sont pour des nas en zfs, donc inadéquate dans mon cas car je suis en pur raid 5.

Re: Pb de script

Posted: 30 Oct 2014 07:05
by ernie
Hello

je viens de me rendre compte d un problème qui dure depuis 3 jours.

Mon script contient 2 lignes pour une sauvegarde identique seule la destination change:

/usr/local/bin/rsync -avrhstx --stats --progress /mnt/pool1/finch/mnt/pool1/documents /mnt/pool3>>./$monlog

/usr/local/bin/rsync -avrhstx --stats --progress /mn/pool1/finch/mnt/pool1/documents /mnt/pool2>>./$monlog

L action numéro 1 trouve des fichiers à sauvegarder, la 2 eme non. Bisard.

Hors la source n a pas été modifiée .

Quelqu un a t il une idée ?

Merci

Re: Pb de script

Posted: 30 Oct 2014 08:00
by laster13
Bonjour
ernie wrote:/usr/local/bin/rsync -avrhstx --stats --progress /mn/pool1/finch/mnt/pool1/documents /mnt/pool2>>./$monlog
N'est ce pas à cause du "t" de /mnt qui manque? :roll:

Re: Pb de script

Posted: 30 Oct 2014 20:31
by ernie
Désolé mon copier coller n est pas correct dans le post
Il y a bien le t a mnt.

Ce qui me gêne c est que rsync voit des changements sur le dossier documents, alors qu il n y a rien eu.

Est ce qu une ouverture de fichier sans modification et sans sauvegarde (simple visualisation) est considéré comme un changement d état par rsync ?

Après pourquoi le 2ème rsync ne fait rien, je comprends pas .

Je vais voir ce que cela donne cette nuit.

Re: Pb de script

Posted: 30 Oct 2014 20:45
by mtiburs
bonsoir,

rsync travaille sur des blocs, il est tout a fait possible qu'une ouverture de fichier (même sans modif) fasse un changement de bits dans un bloc.

Vous pouvez essayer avec --size-only pour ce que çà change (sachant que si le fichier est différent mais de même taille, il ne sera pas traité)

Vous pouvez aussi lancer le rsync avec l'option -n ou --dry-run pour voir ce qu'il "pense faire"

Re: Pb de script

Posted: 30 Oct 2014 22:06
by ernie
Merci

Pour mon rsync sur pool2 qui ne se fait pas j ai peut être une piste.
Mon pool2 est rempli à 95% par les données. Est ce que rsync a besoin d espace disque pour écrire sur le pool des données mises à jours ( le fichier du pool 2 est remplacé par une version plus récente) ?

Si c est le cas y a t il un message dans le rapport de rsync ? Car le rapport est aujourd'hui hui le suivant et il ne dit rien:

Code: Select all

Sauvegarde bis de documents
sending incremental file list

Number of files: 114,585 (reg: 110,032, dir: 4,553)
Number of created files: 0
Number of deleted files: 0
Number of regular files transferred: 0
Total file size: 55.47G bytes
Total transferred file size: 0 bytes
Literal data: 0 bytes
Matched data: 0 bytes
File list size: 130.94K
File list generation time: 0.001 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 2.32M
Total bytes received: 5.02K

sent 2.32M bytes  received 5.02K bytes  87.77K bytes/sec
total size is 55.47G  speedup is 23,847.74
Sauvegarde bis de document terminee
Alors que pour le pool 3 j ai pas le récapitulatif. J ai la liste des fichiers copiés vers pool3 et la ligne echo que j ai ajouté après la commande pour tracer les différent rsync.
Est ce normale qu il n'y est pas de récapitulatif ?

Et mes 3 derniers rapports rsync (1 par jours) sont identiques pour le premier rsync : la liste des fichiers copiés est la même et exactement la même et cela s arrête au même endroit et pas de synthèse.
La dernière ligne où cela semble bugguer est le chemin d un répertoire.

De plus le journal du System me dit
kernel: pid 39856 (mv), uid 0 inumber 31259 on /: filesystem full
Oct 30 02:00:07 nas4free kernel: pid 39831 (rsync), uid 0 inumber 46293 on /: filesystem full
Oct 30 02:00:00 nas4free kernel: pid 39813 (rsync), uid 0 inumber 46293 on /: filesystem full

La fonction mv a lieu en toute fin de script vers pool3 et pas pool2.

Que faire ? Est de lie au pool2 qui est plein ?

Est ce que je redémarre le nas pour purger un peu sa mémoire ?

Merci de vos aides

Re: Pb de script

Posted: 30 Oct 2014 22:26
by ernie
Du nouveau
Au niveau des points de montage dans le webgui mon pool3 est en statut erreur :(
Je clique sur réessayer rien ni fait.
Je rentre dans le para métrage , je fais save et accepter modification mais il reste en erreur.

Dans le gestionnaire de fichier du webgui, je peux rentrer dans pool3 mais tous les dossiers sont vides...

Que faire ?

Re: Pb de script

Posted: 30 Oct 2014 23:40
by mtiburs
mais / ... c'est la racine !

que dit un df -h ?

Re: Pb de script

Posted: 31 Oct 2014 07:04
by ernie
La suite ici car le sujet est différent maintenant.

viewtopic.php?f=35&t=7585