Ich muss einem Benutzer ohne Rootberechtigung erlauben, ein Gerät zu aktivieren / deaktivieren. Ich bin ein absoluter Neuling, wenn es um UNIX geht.
Ich habe das ganze Interwebz durchgesehen, um eine Antwort zu finden, und es scheint, dass jeder das gleiche gibt, das zu ändern ist /etc/fstab
, um dieses Gerät mit der user
Option einzuschließen (oder users
beides zu versuchen). Ich habe das getan und es steht immer noch mount: only root can do that
.
Hier ist der Inhalt meiner fstab:
# / etc / fstab: Informationen zum statischen Dateisystem. # # Verwenden Sie 'vol_id --uuid', um den universell eindeutigen Bezeichner für a zu drucken # Gerät; Dies kann mit UUID = verwendet werden, um Geräte robuster zu benennen # das funktioniert auch, wenn Festplatten hinzugefügt und entfernt werden. Siehe fstab (5). # # proc / proc proc ist standardmäßig 0 0 # / war während der Installation auf / dev / mapper / minicc-root UUID = 1a69f02a-a049-4411-8c57-ff4ebd8bb933 / ext3 Relatime, Fehler = remount-ro 0 1 # / boot war während der Installation auf / dev / sda5 UUID = 038498fe-1267-44c4-8788-e1354d71faf5 / boot ext2 relatime 0 2 # swap war während der Installation auf / dev / mapper / minicc-swap_1 UUID = 0bb583aa-84a8-43ef-98c4-c6cb25d20715 keine sw sw 0 0 tauschen / dev / scd0 / media / cdrom0 udf, Benutzer iso9660, noauto, exec, utf8 0 0 / dev / scd0 / media / floppy0 auto rw, benutzer, noauto, exec, utf8 0 0 / dev / sdb1 / mnt / sdcard auto auto, user, rw, exec 0 0
Meine USB-Stick-Partition wird als angezeigt /dev/sdb1
. Ich bin mir ziemlich sicher, dass meine fstab
Einstellungen in Ordnung sind, aber jeder in den anderen Posts scheint nicht zu erwähnen, wie er den mount
Befehl tatsächlich aufruft, sobald sich dieser Eintrag in der fstab-Datei befindet. Ich denke, hier könnte mein Problem liegen. Der Befehl zum Mounten des Laufwerks lautet:
$ mount /dev/sdb1 /mnt/sdcard
/bin/mount
gehört root und gehört zur Root-Gruppe und hat 4755 Berechtigungen.
/bin/umount
gehört root und gehört zur Root-Gruppe und hat 4755 Berechtigungen.
/mnt/sdcard
gehört mir und ist in einer meiner Gruppen und hat 0755 Berechtigungen.
Mein mount-Befehl funktioniert gut, wenn ich ihn verwende sudo
, aber ich muss dazu in der Lage sein, ohne ihn zu tun sudo
(muss dazu in der Lage sein, von einem PHP-Skript aus zu arbeiten shell_exec
). Irgendwelche Vorschläge?
Antworten:
Wenn Sie als normaler Benutzer ein Volume bereitstellen, müssen Sie nur den Bereitstellungspunktnamen angeben, dh:
Die
/etc/fstab
Datei enthält das zu verwendende Gerät.quelle
fstab
den Einhängepunkt bereitstellen.Versuchen Sie, den Besitz von
/dev/sdb1
zu root zu ändern :und deine
fstab
Leitung zuUnd mache das
mount
so:quelle
Ich denke, Auto-Option macht das Chaos. Ersetzen Sie es mit noauto.
quelle