Page 1 of 1
[RESOLU] Error Rsync
Posted: 14 Aug 2014 20:15
by ernie
Bonsoir
J'ai fait un rsync de mon nas vers un disque en firewire avant de me lancer dans l'installation de thebrig.
Tout semble s'etre bien passé à part la dernière action du fichier information:
2014/08/14 19:31:02 [6405] rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1165) [sender=3.1.0]
J'ai des milliers de lignes avant, comment identifier dans le fichier log téléchargé les erreurs ? code 23 ne donne que la ligne ci dessus et pas de ligne avec error.
J'ai utiliser le rsync local du webgui, avec seulement l'option archive cocher.
Merci de votre aide
Re: Error Rsync
Posted: 14 Aug 2014 23:34
by mtiburs
Bonsoir,
Est-ce que vous connaissez un peu de ligne de commande ?
Si vous avez un accès ssh possible, faites votre rsync depuis la console, vous comprendrez mieux le soucis, de plus, vous pouvez envoyer la sortie dans un fichier et l'analyser tranquillement.
Re: Error Rsync
Posted: 15 Aug 2014 08:52
by ernie
Bonjour
oui je connais un peu les lignes de commandes (merci fedora).
Par contre il y a énormément d'option pour rsync et je ne sais pas lesquelles utiliser.
Si je souhaite sauvegarder régulirement mon nas, faut il aussi passer par une ligne de commande dans le cron plutot que l'interface rsync ?
Quelle option utiliser pour sauvegarder 1 fois par mois mes données ?
Merci
Re: Error Rsync
Posted: 15 Aug 2014 10:41
by sleid
"J'ai utiliser le rsync local du webgui, avec seulement l'option archive cocher"
Il faut quand même conserver le temps, les permissions, voire les attributs étendus.
ET bien entendu l'utilisateur root.
Re: Error Rsync
Posted: 15 Aug 2014 12:52
by mtiburs
Bonjour,
Pour la source s'agit-il d'un module ?, le mieux est d'en faire un en lecture seule (comme ça on élimine un problème potentiel)
taper rsync adr-ip:: depuis une machine linux (pour voir si votre module est bien vu "par le autre")
(adr::ip sera l'adresse du serveur rsync)
Il n'y a pas tant d'option que ça pour rsync
Est-il possible d'indiquer:
- l'adresse_ip et le nom du module coté serveur ou le nom du rep source si on n'utilise pas de module
- l'endroit ou la sauvegarde doit avoir lieu (cela peut être un rep provisoire)
si c'est indiscret, remplacer les valeurs par un truc du genre ip_dest ou mon_rep_de_destination
Si ça vous intéresse, on continue et on met en place la solution en ligne de commande avec la création d'un fichier de log
Re: Error Rsync
Posted: 15 Aug 2014 13:02
by ernie
Merci de vos aides.
Je fais du rsync local : disque raid du nas vers disque firewire du nas. Donc j'ai pas de server et de client.
J'ai lancer depuis une machine linux : rsync -ar -verbiose /mnt/StockageNAS4free /mnt/DDfirewire
Cela a fonctionné et à la fin aucune error dans la synthèse.
Faut il mieux lancer rsync par cron ?
Re: Error Rsync
Posted: 15 Aug 2014 13:30
by mtiburs
moi j'utiliserais:
rsync -avrh --stats --progress /mnt/StockageNAS4free /mnt/DDfirewire
et pour avoir une copie identique:
rsync -avrh --stats --progress --del --force /mnt/StockageNAS4free /mnt/DDfirewire
et pour avoir les attributs, le temps, etc ...
rsync -avrhstx --stats --progress /mnt/StockageNAS4free /mnt/DDfirewire
Je copierais la ligne du rsync dans un fichier:
echo "rsync -avrhstx --stats --progress /mnt/StockageNAS4free /mnt/DDfirewire">./monrsync.sh
chmod 777 ./monrsync.sh
et je lancerait cela depuis le cron du webgui
mais j'ajouterais ceci au script:
echo "Lancement du script">>./monrsync.log
rsync -avrhstx --stats --progress /mnt/StockageNAS4free /mnt/DDfirewire>>./monrsync.log
On peut aussi faire un rsync plus souvent mais plus rapidement:
rsync -avrhstx --stats --progress --size-only /mnt/StockageNAS4free /mnt/DDfirewire
le rsync par les taille de fichier peut être entre le rsync normal
On peut aussi faire d'autre amélioration, comme inscrire la date dans le log, ne mettre le log que si le rsync ne s'est pas bien passé et mettre ok dans le log si le rsync s'est bien déroulé.
C'est ce que je suis en train de faire, on peut développer cette partie.
Il y a aussi une option géniale qui est le backup sous rsync (on peut faire un backup de chaque fichier modifié ou supprimé) et le ranger proprement par la date et l'heure
Re: Error Rsync
Posted: 15 Aug 2014 22:08
by ernie
Je suis très intéressé par l'option de tracer si cela se passe bien dans un log ainsi que si cela se passe mal. Idéalement, lister les fichiers et répertoires qui ont posé problème.
Par rapport au fichier à créer, faut il ecrire tel quel tes lignes, notamment le echo ? Est ce que echo est une commande pour dire 'ne pas prendre en compte' ainsi on met des commentaires ?
Avoir les attributs ? qu'est ce ?
Avoir le temps ?
est ce qu'il renomme les fichiers pour avoir ces 2 points ?
In fine j'aimerai, une copie à l'identique (avec ou sans attribut, temps,... en focntion de ta réponse). Mais ensuite 2 stratégies:
- x copies identiques qui s'incrémentent et je décide un seuil de x au dela du quel il efface la plus ancienne pour faire les nouvelles
- une seule copie et à chaque fois il ne sauve que ce qui a changé
le tout tracer dans un log (ce qui marche, ce qui marche pas et quoi (fichier, répetoire)
malheureusement je suis novice de chez novice (mais j'apprends vite)
merci par avance
Re: Error Rsync
Posted: 15 Aug 2014 23:30
by mtiburs
la commande du style:
rsync 192.168.0.1:: demande à la machine client de lister les modules du serveur spécifié (c'est pour cela qu'il faut les laisser visibles quand on crée le module)
à partir du moment, ou la machine répond et que le module est présent, c'est bon, cela veut dire qu'on peut l'utiliser
si, il n’apparaît pas, inutile de cherche midi à 14 h, le problème se trouve sur le serveur.
vous avez dis que vous connaissiez fedora, en avez-vous une sous la main ?
L'idéal et de faire un man rsync et de tester soi-même les différentes options. Par exemple, vous créez un module rsync en ro (lecture seule) sur votre nas et ensuite vous vous amusez à le remettre dans dans votre fedora, ensuite sur l'autre nas.
pour éviter les bêtises, on peut ajouter dans les options -n ou --dry-run pour faire le rsync sans actions
On peut faire un log pour pas cher en utilisant la commande date et en dirigeant la sortie de rsync vers un fichier de log
faite les essais suivant, en root:
moi ça donne Sat Aug 16 00:39:48 CEST 2014
mais,
donnera 2014-08-16_00h39mn
donc en faisant:
Code: Select all
set temps=`date +%Y-%m-%d_%Hh%Mmn`
puis,
on affiche quelque chose qui peut servir de nom de fichier de log de notre rsync
et en peaufinant:
Code: Select all
set temps=rsync_nas1-vers-nas2_`date +%Y-%m-%d_%Hh%Mmn`.log
donnera rsync_nas1-vers-nas2_2014-08-16_00h44mn.log
donc on peut faire (vous adapterez les noms):
Code: Select all
set monlog=rsync_nas1-vers-nas2_`date +%Y-%m-%d_%Hh%Mmn`.log
puis,
Code: Select all
rsync -avrh --stats --progress /mnt/StockageNAS4free /mnt/DDfirewire>./$monlog
et là, si on fait un ls, on trouvera un fichier .log qui contient toute la sortie du rsync, le nom de fichier sert de repère temporel
essayez ceci et dites-moi ce que vous en pensez, on améliorera par la suite, on développera les option également
Re: Error Rsync
Posted: 15 Aug 2014 23:32
by mtiburs
oui, je sais mon nas, n'est pas à l'heure

Re: Error Rsync
Posted: 19 Sep 2014 22:33
by ernie
Bonsoir,
J'ai mis en place le script suivant:
#!/bin/sh
set monlog1=save_`date +%Y-%m-%d_%Hh%Mmn`.log
set monlog2=script_`date +%Y-%m-%d_%Hh%Mmn`.log
echo "Lancement du script">>/mnt/pool1/script/$monlog1.log
rsync -avrhstx --stats --progress –-exclude /finch /mnt/pool1/finch/mnt/pool1 /mnt/DDfirewire>>/mnt/pool1/script/$monlog1.log
echo "Lancement du script">>/mnt/pool1/script/$monlog2.log
rsync -avrhstx --stats --progress /mnt/pool1/script /mnt/DDfirewire>>/mnt/pool1/script/$monlog2.log
rm -rf /mnt/DDfirewire/pool1/finch
Cela ne fonctionne pas : le fichier créé s'appelle '.log'.
Il semble que le $monlog1 et $monlog2 ne marche pas.
J'ai essayé la manipulation dans putty:
set temps=`date +%Y-%m-%d_%Hh%Mmn`
puis echo $temps
et rien ne s'affiche.
pourtant : date +%Y-%m-%d_%Hh%Mmn fonctionne
Merci de vos aides
Re: Error Rsync
Posted: 20 Sep 2014 01:55
by mtiburs
Bonjour,
Je ne vois pas de soucis.
Je me connecte:
Welcome to NAS4Free!
nas6: ~ # set temps=`date +%Y-%m-%d_%Hh%Mmn`
nas6: ~ # echo $temps
2014-09-19_23h29mn
nas6: ~ # date +%Y-%m-%d_%Hh%Mmn
2014-09-19_23h30mn
Si je reprend vos commande à l'identique:
nas6: ~ # set monlog1=save_`date +%Y-%m-%d_%Hh%Mmn`.log
nas6: ~ # set monlog2=script_`date +%Y-%m-%d_%Hh%Mmn`.log
nas6: ~ # echo $monlog1
save_2014-09-19_23h32mn.log
nas6: ~ # echo $monlog2
script_2014-09-19_23h32mn.log
En revanche, j'exécute mon script depuis root (en sh), si c'est depuis un utilisateur, c'est du csh et les commandes sont légèrement différentes.
Là, je ne connais pas trop les choses, je sais simplement que le bash et sh sont proche
J'ai vu çà (survolé car nul en anglais):
Bash is an sh-compatible command language interpreter that executes commands read from the standard input or from a file. csh / tcsh (C shell with file name completion and command line editing) is the default shell under FreeBSD. However, you can easily install and use bash as shell.
ici:
http://www.cyberciti.biz/faq/freebsd-bash-installation/
Il serait donc possible de mettre bash sous N4F

Re: Error Rsync
Posted: 20 Sep 2014 07:39
by ernie
Merci
J ai fais cela du terminal de mon post sous fedora.
Je vais essayer avec putty sur le poste Windows 7 pour voir.
Quelle version de nas4free as tu ? 972 ?
Dans mon cas je suis en 972 embedded. Peut être que cela peut jouer.
Re: Error Rsync
Posted: 20 Sep 2014 14:16
by mtiburs
Bonjour,
Je suis en 972 embeded
Je m'étais connecté en root depuis une Debian (donc, assez similaire de toi)
Essaie de faire les commande "pas à pas", comme j'ai fais, pour voir quand ça déconne.
Re: Error Rsync
Posted: 20 Sep 2014 21:42
by ernie
Hello
Tu a dit
En revanche, j'exécute mon script depuis root (en sh), si c'est depuis un utilisateur, c'est du csh et les commandes sont légèrement différentes.
Root , pour root de nas4free ou de ton debian ?
Re: Error Rsync
Posted: 20 Sep 2014 22:35
by mtiburs
Hello,
en root sur le N4F.
Etre root ou en util n'a aucune incidence sur la connexion avec N4F (sauf du point de vue de la sécurité, mais ça c'est une autre histoire)
En gros, tu te connecte en util normal sur ta Fedora et tu te connectes en root sur N4F, et là, tu essaies tes commandes.
Re: Error Rsync
Posted: 21 Sep 2014 17:24
by ernie
Bon bah je comprends pas, j'ai une ligne vide comme retour.
[root@localhost x300]# set temps=`date +%Y-%m-%d_%Hh%Mmn`
[root@localhost x300]# echo $temps
[root@localhost x300]#
Pourtant la commande fonctionne :
[root@localhost x300]# date +%Y-%m-%d_%Hh%Mmn
2014-09-21_17h25mn
Re: Error Rsync
Posted: 21 Sep 2014 17:44
by ernie
Au lieu d'utiliser le terminal de fedora, j'ai installé putty sur fedora et même symptome.
Je vais tester le poste windows, au cas où cela vienne de fedora.
Re: Error Rsync
Posted: 21 Sep 2014 23:50
by mtiburs
Bon, on va approfondir, je ne suis pas un spécialiste des shell mais on va essayer d'avancer
Que donne:
set a="test"
puis
echo $a
et:
set a=`ls`
echo $a
Normalement on a le contenu d'un ls
Est-ce bon ?
Re: Error Rsync
Posted: 22 Sep 2014 06:04
by ernie
La même chose:
Welcome to NAS4Free!
nas4free ~/ root~$ set a="test"
nas4free ~/ root~$ echo $a
nas4free ~/ root~$ set a='ls'
nas4free ~/ root~$ echo $a
nas4free ~/ root~$
Ce soir j'ai accès à mon ordi windows et je teste.
Re: Error Rsync
Posted: 22 Sep 2014 13:55
by mtiburs
Il y a un truc qui ne colle pas de ton coté.
Je viens de lancer le liveCD de N4F en 972, j'ai juste activé le SSH et mis comme quoi on peut se connecter en root
et j'ai tapé:
n4ftest: ~ # set a="test"
n4ftest: ~ # echo $a
test
Tu peux essayer la même chose ?
Re: Error Rsync
Posted: 05 Oct 2014 08:46
by ernie
Bonjour
Sur une installation toute fraiche de nas4free, cela fonctionne.
Je testerai régulièrement après l'installation de finch et de mes jails.
Re: Error Rsync
Posted: 05 Oct 2014 13:00
by mtiburs
Bonjour,
Oui, ça pourrait être intéressant de savoir quand "çà dérape" !
Re: Error Rsync
Posted: 05 Oct 2014 17:25
by ernie
Avant l'installation de finch, cela fonctionne et dans putty le prompt est en vert flashy.
Après l'installation de finch, le prompt est en gras noir et cela ne marche plus !!!
J'ai essayé un stoppant finch et rine n'y fait.
Bon bah je sèche.
Re: Error Rsync
Posted: 05 Oct 2014 21:10
by mtiburs
c'est vrai que des fois c'est énervant ce genre de chose
faudrait regarder les variables environnement avant et après

Re: Error Rsync
Posted: 05 Oct 2014 21:15
by ernie
Merci à Dremcat4 qui a su m'expliquer le problème.
Voici l'explication résumé (avec ma vulgarisation en français des choses, milles excuses aux experts). La réponse de Dreamcat4 suit ce post.
Les commandes en ssh passent par plusieurs types de shell : TCSH, bash, sh
Il semble que nas4free est basé sur TCSH.
Finch est basé sur BASH ou SH qui est en adéquation avec POSIX.2, ce qui n'est pas le cas de TCSH.
Résultat:
TCSH
janitors-man-mini ~/ id~$ set var=value
janitors-man-mini ~/ id~$ echo $var
value
BASH or SH
janitors-man-mini ~/ id~$ var=value
janitors-man-mini ~/ id~$ echo $var
value
Si je fais selon BASH, cela marche.
La réponse de Dreamcat4:
Well the 'date' command is part of the freebsd base system. That
command is provided by nas4free, and is also provided by finch So I
believe the 'date' command should be working OK in both situations.
In TCSH shell, you may use "set var=value"
But in finch, we give you a proper POSIX.2 compliant BASH shell.
Each shell sets variables slightly differently. For example:
TCSH
janitors-man-mini ~/ id~$ set var=value
janitors-man-mini ~/ id~$ echo $var
value
BASH or SH
janitors-man-mini ~/ id~$ var=value
janitors-man-mini ~/ id~$ echo $var
value
Unfortunately TCSH is not POSIX.2 compatible as some of it's syntax is
not supported by the POSIX specification. And in other places TCSH
does not recognise the POSIX.2 syntax.
So it is recommended to use a POSIX.2 compliant shell. Because that is
the internationally recognised standard. On FreeBSD those shells are:
/bin/sh
/usr/local/bin/bash