Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1602 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Rsync, Batch et crontab

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Rsync, Batch et crontab

n°1337900
Gasayo
Posté le 16-05-2013 à 19:05:34  profilanswer
 

Bonjour,
 
Je rencontre un souci sous Linux avec Rsync :
J'ai un script contenant 4 lignes de Rsync
En lançant ce script en ligne de commande, pas de souci
Je le mets en crontab et là, il me fait n'importe quoi. Il me dit synchroniser plus de 100 fichiers alors qu'il n'y a eut aucune modif'. Des fichiers ne sont pas copiés, etc...
Que ce soit en ligne de commande ou en crontab, c'est le même user,  pas d'utilisation de sudo...
 
Donc la je sèche un peu et je suis preneur pour toute piste.  
 
Merci

mood
Publicité
Posté le 16-05-2013 à 19:05:34  profilanswer
 

n°1337920
goblin_rie​ur
ingé systemes unix
Posté le 17-05-2013 à 09:02:59  profilanswer
 

mets les chemins absolus. crontab n'est pas un shell il n'a pas de .profile ou .bashrc donc pas d'envrionnement dédié....
par exemple cette cron avec plusieurs rsync fonctionne parfaitement parce que les chemins sont complets
 

17 */3 * * * sync                                                                
15 1 * * * rsync -zauv /home/francois/tmps/ordis/ /home/backup/Videos/ordis/    
15 2 * * 0 rsync -zauv /home/francois/tmps/modelisme/ /home/backup/Videos/modeli
sme/                                                                            
30 3 * * 0,4  mysqldump -u root -p"*******" --all-databases | gzip > Documents/
mysql.dump.full.$(date +\%Y\%m\%d).gz                                            
30 4 * * 1-5  mysqldump -u root -p"*******" perso | gzip > Documents/mysql.dump.$(date +\%Y\%m\%d).gz                                                          
45 */3 * * * find /home/francois -type f -name "*.out" -exec rm {} \; -print    
45 */5 * * * find /home/francois -type f -name "*.core" -exec mv {} /tmp/ \; -print                                                                              
45 5 * * * find /home/francois -type f -name "mysql*" -mtime +361 -exec rm {} \; -print                                                                          
55 6 * * * rsync -zauv /home/francois/tmps/velo/ /home/backup/Videos/velo        
55 7 * * * rsync -zauv /home/francois/Public/ /home/backup/Public/              
55 8 * * * rsync -zauv /home/francois/Images/ /home/backup/Images/              
55 9 * * * rsync -zauv /home/francois/Documents/ /home/backup/Documents          
20 */2 * * * sysctl | grep Ah >> /var/tmp/last.Ah.sysctl.log                    
2 10 * * 0 gzip /var/tmp/last.Ah.sysctl.log                                      
55 11 * * * rsync -zauv /home/francois/GSM/ /home/backup/GSM                    
52 12 * 1 * tar czvf /home/francois/Documents/GSM.$(+ \%Y\%m\%d).tar.gz /home/francois/GSM/                                                                      
50 13 * 1 * find /home/francois/Documents/ -type f -name "GSM*" -mtime +90 -exec rm {} \; -print  
55 9 1 * * rsync -zauv /home/backup/ /mnt/frs/


 
 :hello:


Message édité par goblin_rieur le 17-05-2013 à 09:08:08

---------------
Collectionner les vieux serveurs c'est chouette mais c'est lourd et ça prend de la place ;)
n°1338052
_pollux_
Pan ! t'es mort
Posté le 19-05-2013 à 12:13:14  profilanswer
 

pour relancer sur le sujet,
 
je souhaite synchroniser un dossier partager windows vers un serveur linux, à partir de linux.
Le serveur doit donc :  
1. monter le dossier partagé si ce n'est pas déjà fait
2. synchroniser le contenu
 
Comme j'y connais rien, je bloque à chaque étape évidemment :D
Par exemple, pour monter un dossier partagé, je dois utiliser la commande mount, qui n'est accessible qu'en root sur ma machine.
 
Faut-il donc que mon script soit lancé par l'admin ? où y a t-il un moyen de lancer le mount via un utilisateur normal ? Si oui, comment faire ? Si je donne les droits en sudo, je vais être obligé de mettre mon mot de passe en clair dans le script, c'est pas top :D


---------------
Le topic du sport électronique@hfr : watch the l33t !
n°1338054
_pollux_
Pan ! t'es mort
Posté le 19-05-2013 à 12:16:00  profilanswer
 

en fouillant un peu, je crois qu'il faudrait que je mette mount dans sudoers, ou un truc du genre ... ?


---------------
Le topic du sport électronique@hfr : watch the l33t !
n°1338140
roscocoltr​an
L'enfer c'est les utilisateurs
Posté le 20-05-2013 à 12:57:43  profilanswer
 

_pollux_ a écrit :

en fouillant un peu, je crois qu'il faudrait que je mette mount dans sudoers, ou un truc du genre ... ?


 
de mémoire
chmod u+s /sbin/mount.cifs et /bin/umount


---------------
"Your god is too small", Giordano Bruno, 1548 - 1600
n°1338170
_pollux_
Pan ! t'es mort
Posté le 20-05-2013 à 17:39:33  profilanswer
 

A oué, bourrin mais pourquoi pas.
 
j'ai trouvé une autre solution entre temps, j'aurai du la rapporter ici.
Le truc, c'est d'autoriser l'utilisateur à utiliser la fonction mount via /etc/sudoers, programmable via le programme visudo.


---------------
Le topic du sport électronique@hfr : watch the l33t !
n°1338413
rengzehn
Posté le 25-05-2013 à 11:48:22  profilanswer
 

_pollux_ a écrit :

A oué, bourrin mais pourquoi pas.

 

j'ai trouvé une autre solution entre temps, j'aurai du la rapporter ici.
Le truc, c'est d'autoriser l'utilisateur à utiliser la fonction mount via /etc/sudoers, programmable via le programme visudo.

 

Ce n'est pas la bonne solution.

 

Il faut bien configurer le point de montage dans le fichier /etc/fstab en ajoutant les options qui vont bien pour autoriser les utilisateurs a monter la partition.

n°1338417
_pollux_
Pan ! t'es mort
Posté le 25-05-2013 à 13:20:02  profilanswer
 

ah ?

 

C'est pas con, mais le principe précisément c'est ? :??:
J'ai un dossier partagé sur ma machine windows en 192.168.0.10/Musique par exemple.
Je veux qu'un utilisateur puisse la monter sur /mnt/musique le temps de faire le rsync.

 

Je dois rajouter quelle type de ligne dans fstab ?

 

quelque chose de ce genre ?

 
Code :
  1. UUID = ?????? /mnt/musique noauto user 0 0


et ça va monter le dossier à quel moment ? Dès que je vais y faire une requête ?

 

je crois avoir compris, faut que je teste :)


Message édité par _pollux_ le 25-05-2013 à 13:40:55

---------------
Le topic du sport électronique@hfr : watch the l33t !
n°1338432
_pollux_
Pan ! t'es mort
Posté le 25-05-2013 à 19:20:56  profilanswer
 

bon, j'ai essayé, mais j'ai une erreur à la con, je trouve pas le problème.

 

En gros, sur un dossier, ça se passe bien, sur l'autre, j'ai cette erreur:

 
Code :
  1. cedric@Tyndare:/mnt$ mount /mnt/photos/
  2. mount error(115): Operation now in progress
  3. Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
 

Pour un autre fichier partagé, aucun problème.
Les deux sont référencés de la façon suivante dans fstab :

Code :
  1. //192.189.0.10/Photos   /mnt/photos     cifs    uid=1000,username=cedric,password=****,user,noauto   0 0
  2. //192.189.0.10/Musique  /mnt/music      cifs    uid=1000,username=cedric,password=****,user,noauto   0 0


Message édité par _pollux_ le 25-05-2013 à 19:23:34

---------------
Le topic du sport électronique@hfr : watch the l33t !
n°1338448
rengzehn
Posté le 26-05-2013 à 11:10:08  profilanswer
 

Tu es sur que le répertoire est bien partagé dans windows ? Qu'il n'y a pas un firewall qui bloque ou autre ?

 

Si ça marche pour un ça doit marcher pour un autre :)

mood
Publicité
Posté le 26-05-2013 à 11:10:08  profilanswer
 

n°1338451
_pollux_
Pan ! t'es mort
Posté le 26-05-2013 à 12:14:41  profilanswer
 

bah j'ai bein vérifié, essayé de créer d'autres dossiers partagés, etc, etc ...

 

Le fait est que j'arrive à partager un dossier, mais pas plus.

 

En passant par sudo mount, je peux tout monter sans problème, en passant par fstab, je ne monte qu'un seul dossier.

 

je comprends vraiment pas :D


Message édité par _pollux_ le 26-05-2013 à 12:15:36

---------------
Le topic du sport électronique@hfr : watch the l33t !
n°1338452
rengzehn
Posté le 26-05-2013 à 12:28:37  profilanswer
 

En effet c'est étrange.
 
Au  pire tu fais un script en bash (toute façon faut en faire un pour automatiser ton backup) qui
 
1 mount du premier rep,
2 rsync
3 unmount
4 mount du second
5 sync du second
4 umount
 
Comme ça tu n'en montes qu'un a la fois ^^

n°1338454
_pollux_
Pan ! t'es mort
Posté le 26-05-2013 à 14:59:02  profilanswer
 

oué, mais c'est ça le truc bizarre, ça ne le fait que sur certains dossiers...

 

C'est pour ça que j'y comprends rien. Même si je n'en monte qu'un seul, c'est passe pas. En gros, j'ai un dossier qui se monte, je sais pas pourquoi, et pas les autres. J'ai vérifié les droits sur /mnt/photos et /mnt/music et ce sont les mêmes...

 

donc, je pense qu'il y a effectivement un problème de droit quelque part, qui fait que je peux monter ce que je veux en root, mais pas en user, mais je n'arrive pas à voir de différence entre les fichiers. Faudra que je fasse ça à tête reposée :/

 
Code :
  1. cedric@Tyndare:/mnt$ ls -al
  2. total 20
  3. drwxr-xr-x  5 root root 4096 mai   25 19:26 .
  4. drwxr-xr-x 26 root root 4096 mai   19 00:57 ..
  5. drwxr-xr-x  2 root root 4096 mai   25 17:47 music
  6. drwxr-xr-x  2 root root 4096 mai   25 17:48 photos
  7. drwxr-xr-x  2 root root 4096 mai   25 19:26 test
  8. cedric@Tyndare:/mnt$ mount music
  9. Password:
  10. cedric@Tyndare:/mnt$ mount photos
  11. mount error(115): Operation now in progress
  12. Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
  13. cedric@Tyndare:/mnt$
 

je crois que je dois halluciner, mais je ne vois pas trop où :D


Message édité par _pollux_ le 26-05-2013 à 15:02:22

---------------
Le topic du sport électronique@hfr : watch the l33t !
n°1338455
rengzehn
Posté le 26-05-2013 à 15:14:36  profilanswer
 

Tente un chown cedric sur les repertoires

n°1338456
_pollux_
Pan ! t'es mort
Posté le 26-05-2013 à 15:19:15  profilanswer
 

pas mieux

 

pendant ce temps :

 
Code :
  1. cedric@Tyndare:/mnt$ sudo mount -t cifs //192.168.0.10/Photos /mnt/photos -o username=cedric
  2. Password:
  3. cedric@Tyndare:/mnt$
 

pas de soucis via sudo :/


Message édité par _pollux_ le 26-05-2013 à 15:20:32

---------------
Le topic du sport électronique@hfr : watch the l33t !
n°1338475
rengzehn
Posté le 26-05-2013 à 22:57:12  profilanswer
 

smbtree -b -N  
 
ça donne quoi en user normal puis en root ?

n°1338497
_pollux_
Pan ! t'es mort
Posté le 27-05-2013 à 19:49:48  profilanswer
 

Dans les 2 cas :

 
Code :
  1. cedric@Tyndare:~$ smbtree -b -N
  2. LEDA
  3.         \\TYNDARE                       Debian GNU/Linux
  4.                 \\TYNDARE\backup                monrep backup
  5.                 \\TYNDARE\toto                  partage samba
  6.                 \\TYNDARE\IPC$                  IPC Service (Debian GNU/Linux)
  7.         \\CASTOR                        castor
 

Le partage samba sur le serveur est normal, il n'a rien à voir, je pensais au départ utiliser un client sur windows pour backup, mais je trouve que travailler à partir du serveur est plus pratique (interrogation des clients qui si allumés sont backupés)


Message édité par _pollux_ le 27-05-2013 à 19:51:35

---------------
Le topic du sport électronique@hfr : watch the l33t !
n°1338778
_pollux_
Pan ! t'es mort
Posté le 02-06-2013 à 14:01:24  profilanswer
 

bon bé problème résolu.
 
J'ai recréé un dossier sous windows et le partage a fonctionné.
J'ai toujours pas compris pourquoi ça ne marchait pas sachant que j'avais a priori exactement les mêmes droits sur chaque dossier, mais ... c'est windows [:spamafote]


---------------
Le topic du sport électronique@hfr : watch the l33t !

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Rsync, Batch et crontab

 

Sujets relatifs
Script de sauvegarde Rsync à distanceRetour différents selon script lancé en crontab ou prompt
executable introuvable quand lancé en crontabscript ok ligne de commande pas en crontab
[Résolu] Question sur crontabcrontab et ssh
rsync : via ssh ou le démon ?Repérer un email particulier et l'effacer en batch.
rsync : copie incrémentale qui ne l'est pas. 
Plus de sujets relatifs à : Rsync, Batch et crontab


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR