Y a-t-il une raison de ne pas utiliser use --sparse=always
à chaque appel à cp
?
info cp
dit:
‘--sparse=WHEN’ A “sparse file” contains “holes”—a sequence of zero bytes that does not occupy any physical disk blocks; the ‘read’ system call reads these as zeros. This can both save considerable disk space and increase speed, since many binary files contain lots of consecutive zero bytes. By default, ‘cp’ detects holes in input source files via a crude heuristic and makes the corresponding output file sparse as well. Only regular files may be sparse. The WHEN value can be one of the following:
...
‘always’ For each sufficiently long sequence of zero bytes in the input file, attempt to create a corresponding hole in the output file, even if the input file does not appear to be sparse. This is useful when the input file resides on a file system that does not support sparse files (for example, ‘efs’ file systems in SGI IRIX 5.3 and earlier), but the output file is on a type of file system that does support them. Holes may be created only in regular files, so if the destination file is of some other type, ‘cp’ does not even try to make it sparse.
Cela dit aussi:
[...] avec l'alias suivant, 'cp' utilisera le minimum d'espace pris en charge par le système de fichiers.
alias cp='cp --reflink=auto --sparse=always'
Pourquoi n'est-ce pas --sparse=always
la valeur par défaut?
cp
coreutils
sparse-files
Tom Hale
la source
la source
--reflink
, à part ça je ne sais pas ...cp --sparse
.info cp
contient:with the following alias, ‘cp’ will use the minimum amount of space supported by the file system.
alias cp='cp --reflink=auto --sparse=always'
Réponses:
Il y a plusieurs raisons pour lesquelles ce n'est pas par défaut, l'une est la compatibilité descendante, les performances et enfin et surtout, le principe de la moindre surprise.
D'après ce que je comprends, lorsque vous activez cette option, il y a une surcharge du processeur qui n'est pas nécessairement acceptable, en plus, la compatibilité descendante est également essentielle. La
cp
commande fonctionne de manière fiable sans, elle ajoute un peu d'espace, mais de nos jours, c'est vraiment négligeable, dans la plupart des cas au moins ...Je pense que les commentaires que vous avez reçus ont également mis en évidence d'autres raisons.
Le principe de la moindre surprise signifie que vous ne changez pas quelque chose inutilement,
cp
existe depuis des décennies, changer son comportement par défaut bouleversera de nombreux vétérans.la source