* Le code de (gnu) mv est commun avec tout les core utils (http://git.savannah.gnu.org/cgit/coreutils.git/tree/src). Il y a bien un rename dans le code qui semble être appelé, mais comme le code est relativement complexe, je n'ai pas vérifié que le code de mv appelle effectivement rename dans tout les cas.
# oui et non
Posté par GaMa (site web personnel) . En réponse au message mv est-il atomique ?. Évalué à 5.
Il y a très peu de chance (voir aucune) que mv (le programme) soit atomique.
Par contre, l'appel système rename (https://en.wikipedia.org/wiki/Rename_%28computing%29) (man 2 rename) est effectivement atomique (et c'est garanti par POSIX). Et il semble* que rename soit appelé par mv.
* Le code de (gnu) mv est commun avec tout les core utils (http://git.savannah.gnu.org/cgit/coreutils.git/tree/src). Il y a bien un rename dans le code qui semble être appelé, mais comme le code est relativement complexe, je n'ai pas vérifié que le code de mv appelle effectivement rename dans tout les cas.
Matthieu Gautier|irc:starmad