Montez une clé USB avec des autorisations d'écriture pour tout le monde ou un utilisateur spécifique

25

Je sais qu'il y a des questions similaires mais j'ai un problème spécifique que je ne peux pas surmonter.

J'ai:

  • Disque dur divisé en deux partitions. /dev/sdb1et /dev/sdb2. sdb1est NTFS et je n'en ai pas besoin. J'ai besoin de sdb2fat32.
  • Ubuntu 12.04.1 LTS (serveur)

Je voudrais:

En fin de compte je besoin d' un Perma-montage /dev/sdb2pour /home/storageavec droit d' accès (rw) pour l'utilisateur media.

Problèmes auxquels je suis confronté:

1) Utilisation du montage manuel à partir de la ligne de commande.

Si j'utilise juste

server# sudo mount /dev/sdb2 /home/storage

Il monte mais /home/storagereçoit la racine en tant que propriétaire et groupe et ne permet pas à l' mediautilisateur d'y écrire.

Si j'utilise la mountcommande sans sudocomme utilisateur media- je ne suis pas autorisé. Dit que seul root peut utiliser le montage.

Si j'utilise mountavec des options: server# sudo mount /dev/sdb2 /home/storage -o umask=000j'obtiens ce dont j'ai besoin. Un peu exagéré bien sûr, car le dossier de stockage devient accessible en écriture pour tout le monde. MAIS - qui est monté manuellement - maintenant j'en ai besoin pour remonter à chaque redémarrage.

2) Remontage au redémarrage - utilisation fstab

J'ai donc pensé que j'irais bien si j'utilise fstabpour monter cette partition ( /dev/sdb2) à chaque redémarrage. La fstabligne que j'ai ajoutée:

UUID=8C52-C1CD /home/storage auto user,umask=000,utf8,noauto 0 0

obtenu avec uuid blkid. Le type fs autoj'ai changé plusieurs fois ... essayé vfataussi, mais toujours au redémarrage, ubuntu s'arrête lors du traitement de fstab (comme je pense) avec le message (tiré du journal):

fsck from util-linux 2.20.1 /dev/sda5: clean, 120559/10969088 files, 19960144/43861504 blocks mount: unknown filesystem type 'static' mountall: mount /etc/fstab: [772] terminated with status 32 mountall: Filesystem could not be mounted: /etc/fstab: Skipping /etc/fstab: at user request

Et aussi - sudo mount -ane fait jamais vraiment rien.

Qu'est-ce que je fais mal? Je soupçonne que j'ai foiré quelque chose :)

MISE À JOUR:

Comme il semble - fstab ne devrait contenir que des supports pour les disques statiques, pas n'importe quel type de contenu USB. Je suis perplexe de voir comment cela fonctionne avec toutes les personnes qui publient sur le net leurs histoires de réussite ...

cependant .. si ce n'est pas possible - je voudrais savoir comment remonter mon usb après chaque redémarrage ... sinon avec fstab - que comment? :)

GeekSince1982
la source
Je pense que vous devriez publier tout fstab pour examen, et pas seulement une ligne. En ce qui concerne les permissions, l' exécution id mediaet l' utilisation uid=et gid=et umask=027options.
mikewimporte
1
Y a-t-il une raison pour laquelle vous devez utiliser FAT? Sinon, je voudrais sauvegarder les données et utiliser un système de fichiers natif Linux. Vous pouvez ensuite définir la propriété et les autorisations.
Panther
@mikewwhat merci mais ça fonctionne étrangement en fait ... eh bien ... pas vraiment :)
GeekSince1982
@ bodhi.zazen a fait plus de lecture ... les coutures comme sur ubuntu 12 fstab ne devraient avoir que des supports pour les lecteurs statiques. pas d'USB ...
GeekSince1982

Réponses:

27

Votre problème semble concerner les autorisations que vous avez définies. Les lecteurs au format FAT / FAT32 ne prennent pas en charge les autorisations de fichier. Les autorisations pour tout sont déterminées par la façon dont le lecteur est monté. Lorsque vous définissez l'autorisation d'ouvrir, cela a fonctionné lorsque vous

server# sudo mount /dev/sdb2 /home/storage -o umask=000

Quant à elle pas de montage automatique au redémarrage

UUID=8C52-C1CD /home/storage auto user,umask=000,utf8, -->noauto<-- 0 0

Le "noauto" ne monte PAS automatiquement au démarrage du système et analyse le fichier / etc / fstab. Supprimez cette option et elle se montera au démarrage. Vous pouvez définir les autorisations sur le point de montage une fois qu'il est monté avec chmodou les spécifier dans / etc / fstab.

Si vous avez besoin de l'utilisateur multimédia pour y accéder, vous pouvez définir les autorisations sur 764 et les ajouter au groupe de sécurité. Root a toujours accès à tout.

voir http://www.linux.org/threads/file-permissions-chmod.4094/ pour quelques exemples d'autorisations de fichier propper

Sur une note secondaire, bodhi.zazen a fait un bon point Y a-t-il une raison pour laquelle vous devez utiliser FAT? Sinon, je voudrais sauvegarder les données et utiliser un système de fichiers natif Linux. Vous pouvez ensuite définir la propriété et les autorisations.

CacheXT
la source
1
-o umask=000est-ce !! Merci!
Antony
4

Sauf si les options de montage le remplacent, GID = ou UID = le propriétaire et les autorisations du point de montage lors du montage deviennent ceux de l'arborescence du système de fichiers en cours de montage.

Donc, si / dev / sdb1 contient un système de fichiers ext4 (disons une sauvegarde) appartenant à l'utilisateur, alors l'utilisateur deviendra le propriétaire du point de montage après un montage réussi.

Pour commencer, nous avons un dossier de sauvegarde vide qui servira de point de montage et appartient à root.

# ls -alR /mnt
/mnt/:
drwxr-x---  5 root root 4096 May 30 20:59 ./
drwxr-xr-x  3 root root 4096 Dec  5  2015 ../
drwx------  2 root root 4096 Jan  1 07:45 backup/

/mnt/backup:
drwx------  2 root root 4096 Jan  1 07:45 .
drwxr-x---  5 root root 4096 May 30 20:59 ..

maintenant nous montons / dev / sdb1 (lecture seule)

# mount -o ro /dev/sdb1 /mnt/backup

et laisse voir ...

# ls -alR
/mnt/:
drwxr-x---  5 root root 4096 May 30 20:59 ./
drwxr-xr-x  3 root root 4096 Dec  5  2015 ../
drwx------  2 user user 4096 Jan  1 07:45 backup/

/mnt/backup:
drwx------  2 user user 4096 Jan  1 07:45 .
drwxr-x---  5 root root 4096 May 30 20:59 ..
-rw-------  1 user user 252076021760 Jun  9 21:11 backup.tar

Maintenant, si vous avez un lecteur vide et que vous souhaitez le monter pour 'user' en tant qu'extension de 'l'espace disque de l'utilisateur, montez le lecteur en tant que root, montrez la racine du montage à' user 'et démontez.

La prochaine fois que le système de fichiers sera monté (par root ou n'importe qui selon fstab), le propriétaire du montage sera «utilisateur».

user555425
la source
3

Vous pouvez également exécuter

sudo chmod 0777 /home/storage

Étant donné que les lecteurs FAT n'ont pas d'autorisations, Linux applique l'autorisation du point de montage à l'ensemble du lecteur.

Zane Hooper
la source
1
N'appliquez jamais d'autorisations R + W + X pour chaque utilisateur. Cela permettrait à quiconque ou à n'importe quoi d'accéder, d'exécuter, de supprimer, de modifier le stockage et son contenu ....
Angry 84
1
Sur la plupart des systèmes d'exploitation, les lecteurs USB sont montés afin que tout utilisateur puisse modifier le contenu. Si vous êtes un administrateur de serveur dans une situation où cela pourrait être un problème, je n'aurais pas à vous dire ce que 0777 signifie.
Zane Hooper
Les disques ne sont jamais montés par défaut pour autoriser tous les utilisateurs, c'est pourquoi ils ont des groupes et des autorisations. Quoi qu'il en soit, il est toujours plus sûr de montrer un meilleur mod de sécurité car les gens vont simplement copier et coller sans en savoir plus
Angry 84
-1

Si vous avez un périphérique de stockage externe connecté à votre box Linux avec NTFS, assurez-vous que le système de fichiers est propre.

Avant de monter le stockage sur votre box Linux:

  1. Exécutez la commande ci-dessous

    ntfsfix /dev/storagedevice ( like sdb1 or sdc1 )  
    
  2. Redémarrez votre box Linux

  3. Montez le stockage externe en exécutant la commande:

    mount -o rw /dev/storagedevice /media/ 
    

    ou

    mount -o rw /dev/storagedevice /mnt/ 
    

    ou montez le périphérique de stockage via l'interface graphique.

Vitalie
la source