GNU/Linux >> Tutoriels Linux >  >> Linux

Mv écrase le fichier en lecture seule sans invite ?

Le manuel GNU Coreutils pour mv dit :

Si un fichier de destination existe mais n'est normalement pas accessible en écriture, l'entrée standard
est un terminal et l'option -f ou –force n'est pas donnée, mv
invite l'utilisateur à remplacer le fichier. (Vous êtes peut-être propriétaire du fichier
ou disposez d'une autorisation d'écriture sur son répertoire.) Si la réponse n'est
pas affirmative, le fichier est ignoré.

Cependant, la version de mv J'utilise (GNU coreutils 8.21 sur Ubuntu 14.04.3 LTS) présente un comportement inattendu :

$ which mv
/bin/mv
$ ls -l
total 0
$ echo foo > 1; chmod -w 1; cp 1 2; ls -l | cut -d' ' -f 1-5,9
-r-x------ 1 me me 4 1
-r-x------ 1 me me 4 2
$ echo bar > 2
-bash: 2: Permission denied
$ mv 1 2
$ ls -l | cut -d' ' -f 1-5,9
-r-x------ 1 me me 4 2

Sur la base de l'extrait de manuel cité ci-dessus, j'aurais attendu le mv 1 2 commande pour avoir averti l'utilisateur avant d'écraser le fichier 2 .

Y a-t-il un bogue dans ma version de mv , ou un bug dans ma compréhension ? Si ce dernier, alors qu'est-ce que fait le manuel signifie ?

Réponse acceptée :

Il s'avère que le serveur utilisait un système de fichiers de type "cifs" (probablement le Common Internet File System, alias CIFS). Cela a été découvert en exécutant la commande df -T .

CIFS présente apparemment un comportement non conventionnel en ce qui concerne les autorisations.

L'exécution des mêmes commandes sur une machine avec un système de fichiers ext4 et une version récente de Coreutils a donné :

$ mv 1 2
mv: replace ‘2’, overriding mode 0444 (r--r--r--)?

comme prévu.


Linux
  1. Pourquoi Rm peut-il supprimer les fichiers en lecture seule ?

  2. Comment exécuter un fichier sans extension .sh dans le shell

  3. Supprimer le fichier sans demander

  4. Pourquoi mon système de fichiers est-il monté en lecture seule ?

  5. cp -L vs cp -H

Déplacer des fichiers sur Linux sans mv

Comment exécuter la commande Sudo sans mot de passe

Comment éditer un fichier sans changer ses horodatages sous Linux

Copier le contenu du fichier dans le presse-papiers sans les afficher

Unrar tous les fichiers dans le répertoire sans invite

Comment supprimer un fichier sans utiliser rm ?