J'ai régulièrement à transférer quelques gros fichier entre deux hôtes GNU/Linux mais depuis une connexion internet lente.
Je vais détailler ici les différentes étapes pour faciliter cela.
Pour cet exemple j'utiliserai une adresse ip privée (192.168.1.200) mais ça fonctionnera évidement aussi avec une adresse ip publique.
L'opération consiste à découper notre gros fichiers en plusieurs petits. De cette façon, si notre transfert est coupé nous serons en mesure de reprendre depuis le moment ou cela s'est arrété.
root@host:~# apt-get update && apt-get install rsync openssh-server
user@SOURCE:~$ du -sh MyBigFile.mkv
-rw-r--r-- 1 user std 2,9G 8 déc. 12:12 MyBigFile.mkv
user@SOURCE:~$ split MyBigFile.mkv -d -b 5M
user@SOURCE:~$ ls -lh
-rw-r--r-- 1 std std 5,0M 8 déc. 23:47 x00
-rw-r--r-- 1 std std 5,0M 8 déc. 23:47 x01
[...]
-rw-r--r-- 1 std std 5,0M 8 déc. 23:48 x9481
-rw-r--r-- 1 std std 5,0M 8 déc. 23:48 x9482
Maintenant nous pouvons transférer nos fichiers de 5Mo vers notre destination. Dans le cas ou la connexion se coupe durant le transfert, rsync sera en mesure de reprendre la copie à partir du dernier fichier transféré.
user@DESTINATION:~$ rsync --bwlimit=400k -a -v --rsh='ssh -p 22' --stats --progress user@192.168.1.200:/home/SOURCE/x* /home/DESTINATION/
user@DESTINATION:~$ cd /home/DESTINATION/
user@DESTINATION:~$ cat x* > glory.41.720p.hdtv.x264-verum.mkv
user@DESTINATION:~$ ls -lh glory.41.720p.hdtv.x264-verum.mkv
-rw-r--r-- 1 user std 2,9G 8 déc. 23:45 glory.41.720p.hdtv.x264-verum.mkv
Contact :