J'ai récemment eu à transférer un gros fichier entre deux hôtes GNU/Linux et depuis une connexion internet lente.
Je vais détailler ici les différentes étapes pour y parvenir.
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 install rsync openssh-server
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 d'une coupure, rsync sera en mesure de reprendre à partir du dernier fichier transféré.
user@DESTINATION:~$ rsync --bwlimit=40k -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 toi toi 2,9G 8 déc. 23:45 glory.41.720p.hdtv.x264-verum.mkv
Contact :