Wie kann ich ein Laufwerk für einen anderen Benutzer als root bereitstellen?

9

Ich habe eine SSD über USB angeschlossen. Dann:

 sudo su -
 mkdir /mnt/hx
 chown ondra /mnt/hx
 mount /dev/sdb1 /mnt/hx  # It's FAT32 now, but was the same with EXT4

Der letzte Befehl ändert den Verzeichnisbesitzer in root. Immer wenn ich eine Datei im Stammverzeichnis erstelle, muss ich root sein und root ist der Eigentümer.

Kann ich einen anderen Benutzer als Eigentümer des bereitgestellten Verzeichnisses festlegen? Oder stellen Sie einfach gesagt sicher, dass Benutzer XY frei auf dem Laufwerk lesen / schreiben kann.

Ondra Žižka
quelle
Warum gehst du nicht gerade sudo mkdir -p /mnt/hxdann sudo mount /dev/sdb1 /mnt/hx?
Chris Wayne
Es scheint, als wäre es die Option uid = 1000, gid = 1000
Ondra Žižka
Du musst eine machen sudo chown -R username:groupname /folder. Das -Rmacht die chown Berechtigungen rekursiv angewendet werden. Überprüfen Sie auch die chmod, auch das nimmt den -RParameter.
Nitin Venkatesh

Antworten:

9

Gnome-basierte GUI-Umgebung

gio mount -d /dev/sdb1

So einfach ist das.

Für ältere Versionen von Gnome müssen Sie möglicherweise gvfs-mountstattdessen Folgendes verwenden :

gvfs-mount -d /dev/sdb1

Headless (keine GUI) Maschine

Fügen Sie einen Eintrag hinzu /etc/fstabund geben Sie Optionen dafür an.

Aus der Manpage von fstab:

   The fourth field (fs_mntops).
          This field describes the mount options associated with the filesystem.

          <snip>

          user   allow a user to mount
          owner  allow device owner to mount

Jetzt müssen Sie sicherstellen, dass das Gerät dem richtigen Besitzer gehört. Geben Sie dies in einer udevRegel an. Legen Sie eine Datei in /etc/udev/rules.d/50-myhdd-ownerchange.rules:

SUBSYSTEMS=="usb", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="0ff9", MODE="0600", OWNER="username"

Ersetzen Sie die Hersteller- und Produkt-IDs durch das USB-Gerät, das von ihm ausgelöst werden soll. Finden Sie sie mit dem Befehl lsusb. Ändern Sie auch die, MODEwenn Sie möchten.

Alternativ verwenden pmount. Ich persönlich mag es nicht.

gertvdijk
quelle
Ich habe es erfolgreich montiert. Aber jetzt kann ich keine ausführbaren Dateien ausführen, auch nicht mit execOptionen.
Ondra Žižka
@ OndraŽižka Sind Sie sicher, in welcher Reihenfolge Sie die Optionen im vierten Feld angegeben haben? Das Beispiel in der Manpage erwähnt user,exec. Wenn Sie dies tun würden exec,user, würde userAFAIK die execOption mit ihren Auswirkungen überschreiben noexec. Wenn es immer noch nicht funktioniert, teilen Sie bitte die entsprechende Zeile in /proc/mounts.
Gertvdijk
+1 für pmount, ich hatte kein Glück mit gvfs.
Pydsigner
gvfs-mountwurde gio mountin aktuellen Versionen von Gnome durch ersetzt.
Big McLargeHuge
@ DavidKennedy Danke, hinzugefügt.
Gertvdijk