Bonjour,
Quand je fais rsync -options chemin_src chemin_dst, tout va bien sauf qu'à la fin je me retrouve avec le dossier chemin_src (et son contenu) dans chemin_dst, or j'aurais préféré avoir le contenu de chemin_src dans chemin_dst (ce qui générerait deux dossiers strictement identiques mis à part le nom racine).
La combine que j'ai trouvée pour m'en sortir se résume à ça :
C'est pas mal, ça fonctionne, sauf que je ne vous ai pas tout dit : chemin_src et chemin_dst sont en fait des points de montage pour des fichiers de disques virtuels, montés avec force vérifications et contrôles par vdfuse et mount -o loop, et démontés avec umount après le backup.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 olddir=$(pwd) cd chemin_src rsync -options . chemin_dst cd $olddir
Et donc,
- si j'utilise rsync -options chemin_src chemin_dst ça fonctionne tip-top (mis à part src dans dst comme expliqué ci-dessus) ;
- si j'utilise les 4 lignes de la combine le démontage échoue en erreur comme quoi chemin_src est en cours d'utilisation.
fuser chemin_src me dit1 que c'est mon script qui le tient, alors j'ai déporté les 4 lignes de la combine dans un second_script.sh, et là c'est lui qui est remonté par fuser alors qu'il est bien terminé.
Qu'est-ce qui cloche avec cd chemin pour que "chemin" soit encore tenu après que cd autre_chemin, appelé ensuite, ait bien fonctionné ?
---
1 : quand il le dit (un seul script), car ce n'est pas toujours le cas (utilisation du second script) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 # le drame c'est que des fois fuser ne voit rien quand mount voit : ## mount #/data/nobackup/fic_source.vdi on /mnt/vhd-vdi/mountpointsrc type fuse.vdfuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other) #/mnt/vhd-vdi/mountpointsrc/Partition1 on /mnt/vdisksrc/Partition1 type ext4 (rw,relatime,data=ordered) #2 lignes : #- celle du haut ## fuser /mnt/vhd-vdi/mountpointsrc --> rien ## fuser /data/nobackup/fic_source.vdi --> /data/nobackup/fic_source.vdi: 7332 #- celle du bas ## fuser /mnt/vdisksrc/Partition1 --> rien mais le umount ne peut pas la démonter ## fuser /mnt/vhd-vdi/mountpointsrc/Partition1 --> rien # quant au kill de fuser... euh... ## fuser -k /data/nobackup/fic_source.vdi #/data/nobackup/fic_source.vdi: 7332 ## fuser /data/nobackup/fic_source.vdi --> sans le -k = ligne vide donc c'est fait... ## mount ... à moitié : les 2 lignes sont toujours là, celle du bas a un peu changé #/data/nobackup/fic_source.vdi on /mnt/vhd-vdi/mountpointsrc type fuse.vdfuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other) #/dev/loop0 on /mnt/vdisksrc/Partition1 type ext4 (rw,relatime,data=ordered) # et le kill l'a mise en vrac : ## ls -Al #ls: impossible d'accéder à mountpointsrc: Noeud final de transport n'est pas connecté #drwxr-xr-x 2 root root 4096 oct. 14 11:00 mountpointdst #d????????? ? ? ? ? ? mountpointsrc
Partager