Je voulais demander s'il y a une raison de ne pas utiliser rsyncpour tout et d'abandonner cp?
Je n'étais pas au courant rsyncet maintenant je ne sais pas pourquoi cpon en a jamais besoin.
Quelle installation? Linux? Laquelle? Unix? idem. BSD? Vous ne savez jamais ce qui vient par défaut.
terdon
5
Il n'y a vraiment pas "d'installation par défaut" pour Linux. Chaque distribution a son ensemble de packages de base et une multitude de variations dans ceux-ci. De plus, lorsque vous devez travailler sur de nombreux systèmes, l'utilisation des outils disponibles partout simplifie les choses.
Mat
4
@Mat: Il existe une installation par défaut (ou principale) dans la mesure où les distributions Linux se conforment, via l'espace utilisateur GNU de base, à POSIX, qui nécessite (et définit le fonctionnement de) cpmais pas rsync: pubs.opengroup.org/onlinepubs/007904875 /utilities/contents.htm
goldilocks
1
Je suis sûr que Debian GNU / Linux installe rsync par défaut. Il n'est cependant pas disponible dans l'environnement d'installation et de secours. (J'ai utilisé cela tôt aujourd'hui pour transférer le contenu de ma partition racine d'un disque à un autre. J'ai utilisé le DVD d'installation 7.1.0 amd64.)
un CVn du
Réponses:
24
À strictement parler, oui, vous pouvez toujours utiliser rsync. De man rsync(souligné par moi):
Rsync est un outil de copie de fichiers rapide et extrêmement polyvalent. Il peut copier localement, vers / depuis un autre hôte sur n'importe quel shell distant, ou vers / depuis un démon rsync distant. Il offre un grand nombre d'options qui contrôlent tous les aspects de son comportement et permettent une spécification très flexible de l'ensemble de fichiers à
copier. Il est célèbre pour son algorithme de transfert delta, qui réduit la quantité de données envoyées sur le réseau en n'envoyant que les différences entre les fichiers source et les fichiers existants dans la destination. Rsync est largement utilisé pour les sauvegardes et la mise en miroir et comme commande de copie améliorée pour un usage quotidien.
Maintenant, il n'est parfois pas utile de taper ces quelques caractères supplémentaires simplement pour utiliser un tank pour tuer une mouche. De plus, il rsyncn'est souvent pas installé par défaut, donc cpc'est bien d'avoir.
Vous voulez dire non disponible dans le cadre de l'installation par défaut mais d'un téléchargement séparé?
Jim
1
@ Jim oui, vous devez parfois vous installer en rsyncfonction du système sur lequel vous vous trouvez. Si vous n'y avez pas rootaccès, cela peut être difficile. cpest POSIX et sera toujours là.
terdon
9
cpfait partie des coreutils GNU donc il est toujours installé sur tous les systèmes Linux alors qu'il rsyncne l'est pas.
Martin von Wittich
1
sometimes it is just not worth typing those few extra characters- J'ai un alias pcp(pour "copie de progression") pour cela;)
Izkata
19
Rsync peut être plus lent que cpdans certaines situations. Par exemple, lorsque la destination existe et que rsync finit par faire des comparaisons coûteuses pour chaque bloc, ne trouve pas de blocs égaux et copie de toute façon le fichier source complet.
De plus, lorsque les fichiers de destination n'existent pas, rsync ne fournit aucun avantage par rapport à cp.
En dessous, la méthodologie de copie de rsync est beaucoup plus lente. Voir unix.stackexchange.com/questions/374071/… . Une série de cp montre (au moment de la rédaction de ce document), une simple séquence d'opérations de lecture de 32 Ko / 32 Ko d'écriture. Rsync, quant à lui, effectue une lecture / écriture de 4092 octets + 4 octets sur socket / lecture de socket / écriture de 250 Ko dans un fichier. Je fais un rsync de 36T de fichiers de taille mixte à un débit de 130 Mo / s. Je peux tripler cela avec cp -a. rsync gagne, comme vous le dites lorsque vous voulez "faire" ressembler "ceci" à des répertoires déjà similaires.
Mike S
7
Je pense rsyncque ne gère pas la copie de fichiers clairsemés d'une manière simple. cppar défaut gère très bien cela.
rsync
n'est pas disponible partout,cp
est.cp
mais pasrsync
: pubs.opengroup.org/onlinepubs/007904875 /utilities/contents.htmRéponses:
À strictement parler, oui, vous pouvez toujours utiliser
rsync
. Deman rsync
(souligné par moi):Maintenant, il n'est parfois pas utile de taper ces quelques caractères supplémentaires simplement pour utiliser un tank pour tuer une mouche. De plus, il
rsync
n'est souvent pas installé par défaut, donccp
c'est bien d'avoir.la source
rsync
fonction du système sur lequel vous vous trouvez. Si vous n'y avez pasroot
accès, cela peut être difficile.cp
est POSIX et sera toujours là.cp
fait partie des coreutils GNU donc il est toujours installé sur tous les systèmes Linux alors qu'ilrsync
ne l'est pas.sometimes it is just not worth typing those few extra characters
- J'ai un aliaspcp
(pour "copie de progression") pour cela;)Rsync peut être plus lent que
cp
dans certaines situations. Par exemple, lorsque la destination existe et que rsync finit par faire des comparaisons coûteuses pour chaque bloc, ne trouve pas de blocs égaux et copie de toute façon le fichier source complet.De plus, lorsque les fichiers de destination n'existent pas, rsync ne fournit aucun avantage par rapport à cp.
la source
Je pense
rsync
que ne gère pas la copie de fichiers clairsemés d'une manière simple.cp
par défaut gère très bien cela.la source
-S
drapeau.sparse
.Parce que ce
cp
drapeau manque dans rsync:la source
-n
(dry run) sur rsync, qui peut être une sorte de substitut à cette fonctionnalité.