UNIX - montage: seul root peut le faire

15

Je dois autoriser un utilisateur non root à monter / démonter un appareil. Je suis un noob total en ce qui concerne UNIX, alors s'il vous plaît, stupide pour moi.

J'ai cherché partout dans l'interwebz pour trouver une réponse et il semble que tout le monde donne la même, qui est de modifier /etc/fstabpour inclure ce périphérique avec l' useroption (ou users, j'ai essayé les deux). J'ai fait ça et ça dit toujours mount: only root can do that.

Voici le contenu de mon fstab:

# / etc / fstab: informations sur le système de fichiers statique.
#
# Utilisez 'vol_id --uuid' pour imprimer l'identifiant universellement unique d'un
# dispositif; cela peut être utilisé avec UUID = comme un moyen plus robuste de nommer les périphériques
# qui fonctionne même si des disques sont ajoutés et supprimés. Voir fstab (5).
#
#                
proc / proc proc par défaut 0 0
# / était sur / dev / mapper / minicc-root lors de l'installation
UUID = 1a69f02a-a049-4411-8c57-ff4ebd8bb933 / ext3 relatime, erreurs = remount-ro 0 1
# / boot était sur / dev / sda5 lors de l'installation
UUID = 038498fe-1267-44c4-8788-e1354d71faf5 / boot ext2 relatime 0 2
# swap était sur / dev / mapper / minicc-swap_1 lors de l'installation
UUID = 0bb583aa-84a8-43ef-98c4-c6cb25d20715 aucun swap sw 0 0
/ dev / scd0 / media / cdrom0 udf, utilisateur iso9660, noauto, exec, utf8 0 0
/ dev / scd0 / media / floppy0 auto rw, utilisateur, noauto, exec, utf8 0 0
/ dev / sdb1 / mnt / sdcard auto auto, utilisateur, rw, exec 0 0

Ma partition de clé USB apparaît comme /dev/sdb1. Je suis sûr que mon fstabest bien configuré, mais tout le monde sur les autres messages semble ne pas mentionner comment ils appellent réellement la mountcommande une fois que cette entrée est dans le fichier fstab. Je pense que c'est là que peut être mon problème. La commande que j'utilise pour monter le lecteur est:

$ mount /dev/sdb1 /mnt/sdcard

/bin/mountappartient à root et fait partie du groupe root et dispose de 4755 autorisations.
/bin/umountappartient à root et fait partie du groupe root et dispose de 4755 autorisations.
/mnt/sdcardappartient à moi et appartient à l'un de mes groupes et dispose de 0755 autorisations.

Ma commande de montage fonctionne correctement si j'utilise sudo, mais je dois pouvoir le faire sans sudo(besoin de pouvoir le faire à partir d'un script PHP en utilisant shell_exec). Aucune suggestion?

Travesty3
la source
1
Veuillez ne pas utiliser d'expressions comme "teh interwebz", c'est juste distrayant.
Georg Schölly
9
Je préférerais de beaucoup voir "teh interwebz" injecté d'humour et de personnalité que de voir quelqu'un utiliser "u", "ur", "any1" et autres par paresse et par ignorance. Ce que je veux dire, c'est qu'il y a une différence et qu'elle est apparente en fonction du contexte.
pause jusqu'à nouvel ordre.

Réponses:

17

Lors du montage d'un volume en tant qu'utilisateur normal, il vous suffit de fournir le nom du point de montage, c'est-à-dire:

mount /mnt/sdcard

Le /etc/fstabfichier fournit le périphérique qui sera utilisé.

Kevin Panko
la source
2
Ou vous pouvez monter l'appareil et fstabfournir le point de montage.
pause jusqu'à nouvel ordre.
AHA! J'ai pensé que ce serait quelque chose de mal avec ma syntaxe de commande. Tellement content que ce soit quelque chose de simple. Merci!!! Attribuer la réponse à ce message car c'était la solution la plus directe et la plus descriptive à mon problème, bien que la réponse de Dennis l'ait également suggéré et aurait également résolu le problème.
Travesty3
7

Essayez de changer la propriété de /dev/sdb1root:

chown root:root /dev/sdb1

et votre fstabligne à

/dev/sdb1   /mnt/sdcard auto    rw,user,noauto,exec,utf8   0   0

Et faites mountcomme ça:

mount /dev/sdb1
En pause jusqu'à nouvel ordre.
la source
Merci pour la réponse! Votre solution aurait également résolu le problème, et j'espère que d'autres personnes lisant ce message seront également aidées par vos autres suggestions. Merci encore!
Travesty3
-1

Je pense que l'option automatique fait le bazar. Remplacez-le par noauto.

gogiel
la source
notez que c'est "auto" dans "auto, user, rw, exec", pas le "auto" autonome. le "auto" autonome est pour détecter le système de fichiers à utiliser et devrait être bien.
Quack Quichotte
non, même problème. changé pour dire / dev / sdb1 / mnt / sdcard auto noauto, user, rw, exec 0 0. Je ne sais pas si c'était nécessaire ou non, mais comme il s'agit d'un serveur de développement et que je peux, j'ai redémarré l'ordinateur après avoir modifié le fichier fstab, en vain. merci pour la suggestion, continuez à venir!
Travesty3