8 votes

Comment donner à plusieurs utilisateurs l'accès à une partition Windows NTFS ?

J'ai un disque dur USB connecté à ma machine Ubuntu (11.04). Chaque fois que je redémarre l'ordinateur et que je me connecte, il monte le disque dur. Puisque le disque a NTFS, Linux assigne un utilisateur comme propriétaire des fichiers sur le disque. Ainsi, tous les fichiers sur le disque semblent appartenir à un seul utilisateur et seul cet utilisateur peut voir les fichiers.

J'utilise deux comptes d'utilisateur sur mon ordinateur et je passe souvent de l'un à l'autre. Lorsque je passe à l'autre compte utilisateur, je ne peux plus accéder au contenu du disque car il appartient à mon premier compte utilisateur. Y a-t-il quelque chose à faire à part monter le disque via /etc/fstab ?

Merci.

14voto

con-f-use Points 17925

Montage avec des autorisations spécifiques

Il y en a une. Mettez les deux utilisateurs dans un groupe ensemble. Ensuite, utilisez celui de ce groupe pour définir le gid= et montez votre disque avec les permissions que vous voulez lui donner. Vous pouvez contrôler les permissions avec umask= , fmask= y dmask= dans la commande mount. Voici un exemple :

mount -O dmask=007,fmask=117,gid=46,uid=1000 /dev/sdc1 /media/winhdd

Ces options peuvent également être utilisées dans /etc/fstab comme ça : UUID=7258CB9858CB598D /media/win ntfs rw,auto,user,exec,nls=utf8,dmask=007,fmask=117,gid=46,uid=1000 0 2 .

Éviter fstab - monter automatiquement un disque spécifique avec udev

J'imagine que vous voulez éviter les fstab car le disque n'est pas toujours connecté au démarrage. Si vous souhaitez éviter fstab utiliser un Règle udev . Udev peut monter automatiquement (et empêcher Ubuntu de monter automatiquement) lorsque le disque est connecté. Une règle pour cela peut ressembler à ceci :

# In /etc/udev/rules.d/70-usb-winhdd-mount.rules

KERNEL=="sd?[0-9]", ATTR{removable}=="1", ATTRS{serial}=="UA04FLGC", ACTION=="add", RUN+="mount -O dmask=007,fmask=117,gid=46,uid=1000 /dev/%k /media/winhdd"

Vous devrez identifier le disque par ses propriétés. Dans mon exemple, je l'ai fait en ATTRS{serial}=="UA04FLGC" . J'ai décrit comment faire dans une autre question . Le nom et l'emplacement des fichiers de règles y sont également décrits.

Donnez à tous les disques amovibles ces propriétés

Si vous voulez faire cela avec tous les disques amovibles - et pas seulement avec ce disque particulier, il suffit d'omettre la partie série et assurez-vous d'attribuer un point de montage unique (en les comptant, en les créant à partir de la série, en utilisant le symbole % de udev ou une autre méthode). Comme indiqué ailleurs ENV{mount_options}="$env{mount_options},dmask=007,fmask=117,gid=46,uid=1000" pourrait être une option pour monter tous les disques amovibles avec certaines permissions/autorisations.


Des informations utiles que vous connaissez peut-être déjà :

Créer un groupe et ajouter des utilisateurs

Ce sont les commandes Shell pour créer un groupe nommé 'winhdd' et ajouter un utilisateur nommé 'confus' à ce groupe :

groupadd winhdd
usermod -a -G winhdd confus

Trouver l'identifiant du groupe

Vous pouvez trouver les identifiants de tous les groupes de votre système dans un fichier appelé /etc/group . Les entrées se présentent comme suit winhdd:x:4:confus,narur,joe où 'confus', 'narur' et 'joe' sont les noms d'utilisateurs appartenant à ce groupe, 'adm' est le nom du groupe et '4' l'identifiant du groupe que vous recherchez. Dans /etc/groups vous pouvez également vérifier si l'ajout des utilisateurs à votre groupe a réussi. La commande getent group winhdd montrerait la ligne avec des informations sur le groupe. Le site id vous donne votre identifiant de groupe, votre identifiant d'utilisateur et les noms et identifiants de tous les groupes auxquels vous appartenez.

Configuration des options de type umask

Vous devez définir dmask= à un valeur raisonnable vous permettant au moins d'exécuter (=accéder) à des répertoires. fmask= est l'option pour les autorisations de fichiers.

dmask=007,fmask=117,gid=46,uid=1000 permet au propriétaire, c'est à dire l'utilisateur numéro 1000 (premier chiffre dans le masque) et les membres du groupe numéro 46 (deuxième chiffre dans le masque) de lire et écrire les fichiers sur le disque. Les autres utilisateurs n'ont aucun droit de faire quoi que ce soit (d'où le troisième chiffre dans les masques - le 7). Voici les valeurs des masques :

7 – no permissions     6 – execute only    5 – write only
4 – write and execute  3 – read only       2 – read and execute
1 – read and write     0 – read, write and execute

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X