Je monte actuellement une partition NTFS au démarrage à l'aide de la ligne suivante dans/etc/fstab:
/dev/sda3 /media/data ntfs nls=iso8859-1,umask=000
Pour mon installation Ubuntu 11.10, il semble que tous les fichiers et dossiers appartiennent à root
- et comme NTFS ne prend pas vraiment en charge le même système de gestion des droits, je ne peux absolument pas le changer une fois le montage terminé. Quoi que je fasse, ls -l
n'importe où sur la partition NTFS listera chaque fichier et dossier comme appartenant à root:root
.
Cependant, cela me pose quelques problèmes. Plus particulièrement, certaines applications fonctionnant sous mon compte (appelé tomas
) se plaignent des droits d'accès. De plus, chaque fois que j'essaie de copier (cp
) ou de déplacer (mv
) de l'une de mes partitions ext3 vers la partition NTFS, des messages d'erreur s'affichent
mv: preserving times for `[path to new file]`: Operation not permitted
ou de même
mv: preserving permissions for ...
Monter la partition en mon nom au lieu de l'aide de root? Si oui, comment puis-je accomplir cela en fstab?
Mise à jour:
J'ai maintenant changé les options en fonction des suggestions et suis arrivé à ceci:
nls=iso8859-1,permissions,users,umask=000,uid=tomas,gid=tomas
ls -l
affiche maintenant tous les fichiers appartenant à moi plutôt que par root, et il semble que certains des problèmes que j'avais auparavant étaient résolus. Cependant, pas tous.
Lorsque je démarre Eclipse, un message d'erreur relatif à Android-sdk ne peut pas être exécuté: autorisation refusée. ls -l
me dit ce qui suit à propos du fichier:
-rwxrwxrwx 1 tomas tomas 159620 2011-11-29 14:50 adb*
Cela ressemble à ce que je veux. Mais si j'essaie de l'exécuter (./adb
dans un terminal), j'obtiens également des erreurs d'autorisation refusées. Mais si je le lance avec Sudo
, cela fonctionne (je crois - au moins, cela ne me donne pas un message d'erreur, mais cela ne me donne aucune sortie, ce qui, à mon avis, ne devrait pas l'être ...)
Pourquoi le fichier ci-dessus, avec les autorisations d’exécution pour , n’importe-t-il , n’est toujours pas exécutable par quelqu'un d’autre que root
? Comment puis-je changer la façon dont je monte le système de fichiers afin qu'il soit?
Mise à jour 2:
OK, je viens maintenant un peu plus loin. En montant avec ces options
nls=iso8859-1,permissions,users,auto
J'ai toutes les autorisations définies comme je le souhaite, et chown
et chmod
modifient les paramètres des fichiers (au moins selon ls -l
) = D
MAIS mon système se comporte toujours de manière étrange. Les autorisations pour le fichier de script adb
apparaissent comme ci-dessus, mais ni moi ni Eclipse ne pouvons l'exécuter sans les erreurs "Permission denied". Mais autant que je sache, le fichier contient tous les indicateurs requis (o=rwx
devrait suffire, non?). Pourquoi ça ne marche pas?
Mise à jour
D'accord, tout fonctionne du côté Ubuntu, avec les options suivantes:
nls=iso8859-1,permissions,users,auto,exec
Cependant, lorsque j'essaie d'accéder aux fichiers de la partition à partir de Windows, les paramètres de sécurité sont tous perturbés. Sur tous les fichiers (parmi ceux que j'ai examinés), un nouveau compte appelé Account Unknown(long GUID)
a été ajouté à la liste des utilisateurs et dispose de tous les droits. Les droits de la plupart des autres utilisateurs sont réduits, de sorte que je n’ai pas le droit de faire les choses que j’attends. Notamment "Tout le monde" ne semble plus avoir le droit de "Traverser dossier/exécuter".
Cela pourrait être résolu en sélectionnant simplement la partition et en autorisant Tout le monde à faire quoi que ce soit sur le dossier racine, puis en lui disant de le faire de manière récursive, mais je plutôt que je crains que cela prenne plusieurs jours ...
Dans la colonne d'options, ajoutez permissions
et auto
(et probablement user
ou users
name__).
nls=iso8859-1,permissions,users,auto
permissions
name__: (option NTFS-3G) Définissez les autorisations standard sur les fichiers créés et utilisez le contrôle d'accès standard.auto
name__: Sera monté au démarrage et à partir de mount -a
user
name__: Autoriser un utilisateur ordinaire à monter le système de fichiersusers
name__: Autorise chaque utilisateur à monter et démonter le système de fichiersPuis changez la propriété du système de fichiers:
Sudo chown -R thomas:thomas /media/data
Ma ligne dans /etc/fstab
/dev/sda5 /media/ntfs ntfs-3g users,permissions,auto 0 0
Monter et lister les permissions
Sudo mount /media/ntfs
Using default user mapping
bodhi@ufbt:~$ ls -l /media
drwxr-xr-x 1 root root 4096 2012-01-04 17:08 ntfs
Modifier la propriété et répertorier les nouvelles autorisations
bodhi@ufbt:~$ Sudo chown bodhi:bodhi /media/ntfs
bodhi@ufbt:~$ ls -l /media
drwxr-xr-x 1 bodhi bodhi 4096 2012-01-04 17:10 ntfs
Par défaut, ntfs-3g monte la partition noexec, nosuid et nodev.
noexec
name__: n'autorise pas l'exécution directe de fichiers binaires sur le système de fichiers monté.nosuid
name__: n'autorise pas l'entrée des bits set-user-identifier ou set-group-identifier-group.nodev
name__: n'interprète ni les caractères ni les périphériques spéciaux sur le système de fichiers.Pour remplacer ceci et autoriser l'exécution de fichiers, utilisez exec
name__
/dev/sda5 /media/ntfs ntfs-3g exec,permissions,auto 0 0
Maintenant nous avons
bodhi@ufbt:~$ ls -l /media/ntfs
-rwx------ 1 bodhi bodhi 28 2012-01-04 17:16 file
bodhi@ufbt:~$ /media/ntfs/file
It works
Le mien fonctionne maintenant parfaitement lorsque je change la ligne du fstab en
UUID=761C84B31C846FC3 /media/d ntfs defaults,umask=022,uid=1000 0 0
Utilisez les options uid
et gid
(ou utilisez la fonction de mappage utilisateur) de mount.ntfs (8)
Et si vous utilisiez udisks
? Il peut facilement monter des partitions NTFS avec votre utilisateur en tant que propriétaire.
Exemple (tapez-le en ligne de commande):
/usr/bin/udisks --mount /dev/sda3
Vous pouvez également ajouter cette commande aux applications de démarrage, qui se monteront automatiquement lorsque vous vous connecterez.
Référence: AutomaticallyMountPartitions