Mi sono sempre chiesto perché rsync
tenta di trasferire un file in una posizione remota in cui ha le autorizzazioni di lettura / esecuzione per la directory di destinazione , ma nessuna autorizzazione di scrittura per creare il file di destinazione effettivo. Questo può essere simulato anche localmente quando si tenta di copiare un file come utente normale in / , rsync
trasferirà l'intero file (impiegando anche un po 'di tempo per file di grandi dimensioni) e alla fine fallisce con
rsync: mkstemp "/.myTargetFile" failed: Permission denied (13)
Quindi sembra già non riuscire all'avvio quando si tenta di creare il file temporaneo (il punto- file) durante il trasferimento. Perché non lo nota e si interrompe presto invece di provare a copiare l'intero file senza disporre di autorizzazioni di scrittura?
E dove copia il file se non riesce a creare il file temporaneo? Non riesco a vedere alcun aumento di memoria dei processi rsync e anche nessun file corrispondente in / tmp . Sembra che scarti direttamente i dati a destinazione ma continua comunque con il trasferimento.
--inplace
esso trasferisce l'intero file fino a notare la mancanza di autorizzazioni di scrittura.