Wie ändere ich die Standardberechtigungen für automatisch bereitgestellte USB-Medien?

9

tl; dr:

Wie kann ich gnome automatisch USB-Geräte mit Berechtigungen bereitstellen, damit jeder in der Gruppe auf sie zugreifen kann, anstatt nur auf einen Benutzer, der zum Zeitpunkt des Anschließen des USB-Speichers angemeldet ist?

(Hier wird die Gruppe aufgerufen confusund die Benutzer narurund confusbeide gehören zu dieser Gruppe. narurWurde zum Zeitpunkt des USB-Anschlusses nur angemeldet, sodass nur narurauf das USB-Gerät zugegriffen werden kann - auch nach einem sudo chmod g+rw. Wie ändere ich das?)


Einzelheiten:

Ich betreibe zu Hause einen Medienserver . Es wird als einziger Monitor an einen Projektor angeschlossen. Von Zeit zu Zeit stecke ich gerne ein USB-Laufwerk ein, um Inhalte vom Server auf das Laufwerk zu kopieren. Das Laufwerk wird von den üblichen Gnomen-Spielereien automatisch montiert . Natürlich möchte ich den Projektor nicht einschalten (nehmen Sie sich eine Weile Zeit und die Lampe ist nicht gut). Also melde ich mich über ssh beim Server an und kopiere über das Terminal von einem anderen PC.

Das Problem ist, dass das USB-Laufwerk unter einem anderen Benutzer als dem Benutzer gemountet wird, bei dem ich mich über ssh anmelde. Mein ssh-Benutzer hat nicht die Rechte, den von gnome ausgewählten Einhängepunkt zu öffnen, obwohl er sich in derselben Gruppe befindet. Zur Verdeutlichung siehe diese Terminalsitzung:

confus@conserve:/media$ id
uid=1000(confus) gid=1000(confus) groups=4(adm),8(mail),20(dialout),24(cdrom),46(plugdev),113(lpadmin),114(sambashare),122(admin),126(debian-transmission),135(debian-tor),1000(confus)

confus@conserve:/media$ ll
total 28
lrwxrwxrwx  1 root   root      6 Mar  8  2009 cdrom -> cdrom0
drwx------  1 narur  confus 4096 Oct  8 16:53 contemplate     # <-- USB drive
drwxr-xr-x  2 root   root   4096 May  3  2010 iso
drwxr-xr-x  2 confus confus 4096 Dec  8  2009 usb1

confus@conserve:/media$ sudo chmod -R ug+rwX 4009-D44F/       # <-- Doesn't do anything
[sudo] password for confus: 

confus@conserve:/media$ ll
total 28
lrwxrwxrwx  1 root   root      6 Mar  8  2009 cdrom -> cdrom0
drwx------  1 narur  confus 4096 Oct  8 16:53 contemplate    # <-- No change after chmod
drwxr-xr-x  2 root   root   4096 May  3  2010 iso
drwxr-xr-x  2 confus confus 4096 Dec  8  2009 usb1

Mein SSH-Benutzer ist " confus", während die Festplatte für den Benutzer " narur" gemountet ist . Offensichtlich chmodfunktioniert ein einfaches nicht, da es ein Einhängepunkt ist. Das Problem besteht für jedes USB-Speichergerät.

Ich weiß, dass ich eine udev-Regel schreiben kann, und ich weiß, dass es gerätebasierte Lösungen gibt. Es sollte jedoch eine einfachere Lösung für dieses Problem geben, die für gvfs typisch ist.

Aktualisieren:

Seit 2009 hat sich nichts geändert. Das ist peinlich. Zumindest für dieses Problem sollte es eine einfache Lösung geben.

verwechseln
quelle
Es ist nicht die vollständige Antwort, aber Sie suchen nach Autofs. Hier gibt es ein anständiges Handbuch / Beschreibung: wiki.debian.org/AutoFs . Die GID-Mount-Option ist genau das, wonach Sie suchen.
RobotHumans
Wenn ich mich nicht irre, ist das auch eine Lösung für jedes Gerät, nicht wahr? Man muss jedes einzelne Gerät konfigurieren. Ich möchte, dass meine Lösung auf alle automatisch gemounteten Laufwerke angewendet wird, da verschiedene Besitzer möglicherweise Dateien auf ihre jeweiligen Laufwerke kopieren möchten.
con-f-use
Normalerweise wäre es per Gerät. Sie können Fuzzy-udev-Regeln verwenden, um Mount-Skripte auszuführen, wenn Sie möchten, dass sie generisch sind.
RobotHumans
Dann sind keine Autofs erforderlich ... ;-) Ich würde immer noch eine Lösung bevorzugen, die gvfs oder gnome innewohnt. Es scheint
con-f-use
1
Dies ist eine Einschränkung mit udisks v1, für alle , hierher zu kommen, die neue udisks2 (Ubuntu 13.04 oder höher) hinzugefügt ID_FS_USAGEund UDISKS_FILESYSTEM_SHAREDdas sollte das Problem der gemeinsamen Mounten lösen. Referenz: askubuntu.com/a/276670/26246
user.dz

Antworten:

3

Ich denke, Ihr USB-Laufwerk ist mit formatiert VFAT/FAT32. Dieses Dateiformat unterstützt keine Ausführungsberechtigungen, weshalb dies chmod +xfehlschlägt.

[Bearbeiten] Ok, hatte ein bisschen Spiel und Suche im Netz. Viele "Lösungen" schlagen vor, dass Sie ändern sollten /etc/fstab. Das kommt mir nur klobig vor, was machst du? fstabjedes Mal ändern, wenn Sie auf ein neues USB-Flash-Laufwerk stoßen ???

Meine Lösung:

$ sudo vi /etc/udev/rules.d/90-usb-disks.rules

Fügen Sie die Zeilen hinzu:

# UDEV Rules to change the permission of USB disks

#

KERNEL=="sd*[0-9]", ATTR{removable}=="1", ENV{ID_BUS}=="usb", MODE="0022"

$ sudo /etc/init.d/udev restart

Versuchen Sie dann, ein USB-Laufwerk einzulegen. Es gibt wahrscheinlich ein Attribut, nach dem Sie suchen können, um sicherzustellen, dass es sich um ein FAT-formatiertes Laufwerk handelt, wenn Sie genauer sein möchten.

Sarthak Goel
quelle