J'essaie de comprendre pourquoi un comportement spécifique se produit lorsque les perms changent sur un fichier sauvegardé à partir d'un éditeur Windows sur une partition Unix montée en SAMBA.
Situation :
-
Nous avons un fichier sous Unix, avec des permissions de 777 :
-rwxrwxrwx 1 testuser users 4859 Jan 23 15:09 fbparser.pl*
-
Le répertoire où se trouve le fichier est monté à partir d'un PC Windows 7, via Samba.
-
Nous ouvrons le fichier pour l'éditer dans les éditeurs "Notepad++" ou "Sublime".
-
Lorsque le fichier est modifié et sauvegardé, du côté Unix, les permissions deviennent :
-rw-rwxrwx 1 testuser users 4859 Jan 23 15:09 fbparser.pl*
Maintenant, je soupçonne que ce n'est PAS dû au montage Samba, car le même problème s'est produit. N'EST PAS se produisent lors de l'ouverture et de l'enregistrement du fichier dans le bloc-notes Windows habituel !
J'ai donc d'abord pensé que cela était dû au fait que les éditeurs de programmation mentionnés ci-dessus peuvent être configurés pour - au lieu de simplement enregistrer le fichier - renommer le fichier d'origine en $orig_filename.bak
puis enregistrer le nouveau contenu en tant que NOUVEAU fichier avec le nom de fichier d'origine. Ceci est basé sur ma propre expérience du même problème avec l'éditeur UltraEdit.
Cependant, si c'est la raison pour laquelle les permanentes changent, je ne peux pas expliquer deux AUTRES symptômes que j'ai observés :
-
Tout d'abord, aucun fichier de sauvegarde n'est créé.
-
Deuxièmement, lors de la création de NOUVEAUX fichiers (à l'aide de
touch
) dans le même répertoire dans Unix Shell, les perms pour le nouveau fichier ne sont PAS-rw-rwxrwx
du tout. -
Troisièmement, si cela a de l'importance, le numéro d'inode du fichier reste le même après la modification.
Quelle autre cause pourrait être à l'origine du problème et quelles mesures puis-je prendre pour y remédier ?
Mon propre problème avec UltraEdit a disparu lorsque j'ai dit à UE de NE PAS sauvegarder le fichier en le renommant ; cependant, Notepad++ ne dispose pas d'une telle option.