Perché non usare sempre rsync?


17

Volevo chiedere c'è qualche motivo per non usare rsynctutto e abbandonare cp?
Non ne ero a conoscenza rsynce ora non so perché cpsia mai necessario.


9
rsyncnon è disponibile ovunque, lo cpè.
Mat

3
Quale installazione? Linux? Quale? Unix? idem. BSD? Non si sa mai cosa arriva di default.
Terdon

5
Non esiste davvero una "installazione predefinita" per Linux. Ogni distribuzione ha il suo set di pacchetti core e una miriade di variazioni in quelli. Inoltre, quando devi lavorare su molti sistemi, l'utilizzo degli strumenti disponibili ovunque semplifica le cose.
Mat

4
@Mat: esiste un'installazione predefinita (o core) in quanto conformi alle distribuzioni Linux, tramite la userland GNU di base, con POSIX, che richiede (e definisce il funzionamento di) cpma non rsync: pubs.opengroup.org/onlinepubs/007904875 /utilities/contents.htm
goldilocks,

1
Sono abbastanza sicuro che Debian GNU / Linux installi rsync di default. Tuttavia, non è disponibile nell'ambiente di installazione e salvataggio. (L'ho usato presto per trasferire il contenuto della mia partizione di root da un disco a un altro. Ho usato il DVD di installazione 7.1.0 amd64.)
Un CVn

Risposte:


24

A rigor di termini sì, puoi sempre usare rsync. Da man rsync(enfasi mia):

Rsync è uno strumento di copia dei file rapido e straordinariamente versatile. Può copiare localmente, su / da un altro host su qualsiasi shell remota o su / da un demone rsync remoto. Offre un gran numero di opzioni che controllano ogni aspetto del suo comportamento e consentono di
copiare specifiche molto flessibili dell'insieme di file . È famoso per il suo algoritmo di trasferimento delta, che riduce la quantità di dati inviati sulla rete inviando solo le differenze tra i file di origine e quelli esistenti nella destinazione. Rsync è ampiamente utilizzato per backup e mirroring e come comando di copia migliorato per l'uso quotidiano.

Ora, a volte non vale la pena digitare quei pochi personaggi extra solo per usare un carro armato per uccidere una mosca. Inoltre, rsyncspesso non è installato per impostazione predefinita, quindi cpè bello avere.


Intendi non disponibile come parte dell'installazione predefinita ma un download separato?
Jim,

1
@Jim sì, a volte è necessario installare rsyncte stesso a seconda del sistema in cui ti trovi. Se non hai rootaccesso, può essere difficile. cpè POSIX e sarà sempre lì.
Terdon

9
cpfa parte dei coreutils GNU, quindi è sempre installato su ogni sistema Linux mentre rsyncnon lo è.
Martin von Wittich,

1
sometimes it is just not worth typing those few extra characters- Alias pcp(per "copia di progresso") per quello;)
Izkata

19

Rsync può essere più lento che cpin alcune situazioni. Ad esempio, quando la destinazione esiste e rsync finisce per fare dei costosi confronti per ogni blocco, non trova blocchi uguali e copia comunque il file sorgente completo.

Inoltre, quando non esistono file di destinazione, rsync non offre alcun vantaggio al di sopra di cp.


1
Sotto, la metodologia di copia di rsync è significativamente più lenta. Vedi unix.stackexchange.com/questions/374071/… . Una serie di cp mostra (al momento della stesura di questo documento), una semplice sequenza di operazioni da 32 KB in lettura / 32 KB in scrittura. Rsync, nel frattempo, esegue una lettura / 4092 byte + 4 byte in scrittura su socket / lettura da socket / 250 KB in scrittura su file. Sto eseguendo un rsync di 36 T di file di dimensioni miste con una velocità di trasmissione di 130 MB / s. Posso triplicarlo con cp -a. rsync vince, come dici tu quando vuoi "far 'sembrare' questo '" su directory che sono già simili.
Mike S,


4

Perché questa cpbandiera manca di rsync:

-i, --interactive
       prompt before overwrite (overrides a previous -n option)

No, sebbene -nsu rsync sia presente (esecuzione a secco), che può essere una sorta di sostituto di quella funzione.
Niloct,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.