Das USB-Laufwerk wird vom Benutzer automatisch gemountet, erhält jedoch nur Schreibrechte für root

20

Ich versuche, mein ext4-USB-Laufwerk zu verwenden, aber Ubuntu 13 mountet es derzeit nur mit Schreibberechtigung für root, sodass ich mit meinem normalen Benutzer ohne sudo nicht darauf schreiben kann.

Der erste Ort, den ich überprüfte, war, dconf-editorder die folgenden Wahlen hat

  • automount
  • automount-open
  • Autorun-Nie
  • autorun-x-content-ignore
  • autorun-x-content-open-folder
  • autorun-x-content-start-app

und es scheint mir, dass es dort eine Option geben sollte, um zu steuern, ob ich auf das gemountete USB-Laufwerk schreiben kann, aber nein.

Ich habe auch sichergestellt, dass sich mein Benutzer in den relevanten Gruppen befindet: fuseundplugdev

Ich habe den größten Teil des Internets durchsucht und kann keine Lösung zum Ändern der Berechtigungen finden, die durch die Mount-Operation erteilt wurden. Es gibt buchstäblich niemanden da draußen, der dieses Problem unglaublich hat. Eine Menge Leute haben Probleme, weil ihre Laufwerke vollständig schreibgeschützt sind, aber nicht nur mit Root-Schreibrechten.

Ich kann nicht kontrollieren, was passiert. Ich habe die Mount-Optionen mit festgelegt, gnome-disksaber ein Leerzeichen gezogen.

Es ist nicht in, fstababer es erscheint in der mountListe oder / etc / mtab:

/dev/sdb1 /media/adam/WDPassport2T ext4 rw,nosuid,nodev,uhelper=udisks2 0 0

Dies wird im Syslog angezeigt, wenn es hilft:

kernel: [111522.196770] usb 2-1: USB disconnect, device number 6
kernel: [111525.384020] usb 2-1: new high-speed USB device number 7 using ehci-pci
kernel: [111525.565220] usb 2-1: New USB device found, idVendor=1058, idProduct=0820
kernel: [111525.565225] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=5
kernel: [111525.565227] usb 2-1: Product: My Passport 0820
kernel: [111525.565229] usb 2-1: Manufacturer: Western Digital
kernel: [111525.565231] usb 2-1: SerialNumber:  575832314141334A34383631
kernel: [111525.565729] usb-storage 2-1:1.0: USB Mass Storage device detected
kernel: [111525.566203] scsi9 : usb-storage 2-1:1.0
mtp-probe: checking bus 2, device 7: "/sys/devices/pci0000:00/0000:00:1d.7/usb2/2-1"
mtp-probe: bus: 2, device: 7 was not an MTP device
kernel: [111526.564697] scsi 9:0:0:0: Direct-Access     WD       My Passport 0820 1007 PQ: 0 ANSI: 6
kernel: [111526.565063] scsi 9:0:0:1: Enclosure         WD       SES Device       1007 PQ: 0 ANSI: 6
kernel: [111526.568096] sd 9:0:0:0: Attached scsi generic sg2 type 0
kernel: [111526.568202] ses 9:0:0:1: Attached Enclosure device
kernel: [111526.568263] ses 9:0:0:1: Attached scsi generic sg3 type 13
kernel: [111531.263108] sd 9:0:0:0: [sdb] 3906963456 512-byte logical blocks: (2.00 TB/1.81 TiB)
kernel: [111531.265100] sd 9:0:0:0: [sdb] Write Protect is off
kernel: [111531.265105] sd 9:0:0:0: [sdb] Mode Sense: 47 00 10 08
kernel: [111531.266473] sd 9:0:0:0: [sdb] No Caching mode page found
kernel: [111531.266479] sd 9:0:0:0: [sdb] Assuming drive cache: write through
kernel: [111531.272224] sd 9:0:0:0: [sdb] No Caching mode page found
kernel: [111531.272230] sd 9:0:0:0: [sdb] Assuming drive cache: write through
kernel: [111531.284885]  sdb: sdb1
kernel: [111531.288219] sd 9:0:0:0: [sdb] No Caching mode page found
kernel: [111531.288223] sd 9:0:0:0: [sdb] Assuming drive cache: write through
kernel: [111531.288227] sd 9:0:0:0: [sdb] Attached SCSI disk
kernel: [111531.751588] EXT4-fs (sdb1): mounted filesystem with ordered data mode. Opts: (null)
udisksd[3131]: Mounted /dev/sdb1 at /media/adam/WDPassport2T on behalf of uid 1000
Adam
quelle
Versuchen Sie sudo umount /dev/sdb1, das Programm auszuführen , und hängen Sie es dann als normaler Benutzer ein. Der mtabEintrag hat user=adam, was bedeuten sollte, dass Benutzer adames verwenden können ...
Wilf
@wilf eigentlich ist es der zweite mtab-eintrag mit user = adam, nicht das usb-stick. Ich weiß nicht, was das Zeug mit der gvfsd-Sicherung ist. Wahrscheinlich irrelevant, aber ich bin verwirrt, warum ein Eintrag es hat, aber nicht das USB-Laufwerk.
Adam
Whoops ... Sollte mehr Aufmerksamkeit schenken. Die Einträge selbst sind in Ordnung, daher sollte es funktionieren ... Mounten und entmounten Sie das Laufwerk grafisch oder über die Befehlszeile? - Laufen gvfs-mount -d /dev/sdb1sollte das Laufwerk montieren, sollte auch udisks --mount /dev/sda5. Für diese sollte kein Root-Passwort erforderlich sein, da sie den gvfsdEintrag verwenden, um den Zugriff zu ermöglichen.
Wilf
gvfs hat also etwas damit zu tun. Ich mounte und entmountete das Laufwerk derzeit grafisch über Nautilus, aber ich möchte, dass es beim Anhängen automatisch ausgeführt wird, damit der Backupdb-Prozess das Laufwerk verwenden kann. fällt mir ein, dass dies ein anderes problem ist, auch wenn ich die schreibberechtigungen sortiert bekomme.
Adam
1
@Adam, was ist der Dateisystemtyp Ihres USB-Geräts? und was macht ls -ld /media/adam/WDPassport2Tund ls -l /media/adam/WDPassport2Tausgibt?
genaue

Antworten:

25

Ein möglicher Grund könnte sein, dass Sie die Speicherplatte mit einem Tool mit Root-Rechten formatiert / erstellt haben und das erstellte Dateisystem dem Root gehörte .

Werfen wir einen Blick auf die O / P Ihrer lsBefehle:

$ ls -ld /media/adam/WDPassport2T
drwxr-xr-x 4 root root 4096 Jan 15 16:57 /media/adam/WDPassport2T
$ ls -l /media/adam/WDPassport2T
total 20 
drwxr-xr-x 2 root root 4096 Jan 15 16:57 backuppc 
drwx------ 2 root root 16384 Jan 15 15:37 lost+found

Das Dateisystem gehört dem Root, wie ls -ldfür Ihren Mount WDPassport2T angegeben, und die Berechtigungszeichenfolge drwxr-xr-x zeigt, dass der Eigentümer- Root die RW-Berechtigungen besitzt, während die Mitglieder des Gruppen- Roots zusammen mit der Welt / anderen nur die R-Berechtigung besitzen.

Um dies zu lösen, können Sie die Berechtigungen mit chmododer nur rekursiv ändern. Dies ist, was ich unten gezeigt habe:

sudo chown <username>:<groupname> -R /path/to/target

was wäre in deinem Fall:

sudo chown adam:adam -R /media/adam/WDPassport2T/

Wenn Sie jetzt brauchen, können Sie die Berechtigungen auch festlegen mit chmod:

find /media/adam/WDPassport2T/ -type f -execdir chmod 666 -Rv {} +

(Dies gibt dem Eigentümer, der Gruppe und der Welt RW-Berechtigungen für alle Dateien im Ziel.)

find /media/adam/WDPassport2T/ -type d -execdir chmod 777 -Rv {} +

(Dies gibt dem Eigentümer, der Gruppe und der Welt RWX-Berechtigungen für alle Verzeichnisse im Ziel.)

Referenz:

Offizielle Ubuntu-Dokumentation: Dateiberechtigungen

präzise
quelle
Fantastisch. Ich habe nicht daran gedacht, das zu versuchen, weil ich einfach davon ausgegangen bin, dass die Dateiberechtigungen für / media / adam / WDPassport2T durch den Mount-Prozess festgelegt wurden, dh ich wusste nicht, dass das tatsächliche USB-Laufwerk (oder der zugewiesene Mount-Punkt) erhalten und behalten würde Berechtigungen. Es gäbe also ähnliche Probleme mit Berechtigungen / Besitz, wenn ich die Festplatte in eine andere Box steckte?
Adam
1
@Adam: "... würde es Probleme mit Berechtigungen / Besitz geben, wenn ich die Festplatte in eine andere Box stecke ?" Nun, ich bin mir nicht sicher, also habe ich folgendes gepostet. F: Wie portabel sind die Befehle chmod und chown? ..wenn Sie RW-Berechtigungen für die Dateien / Verzeichnisse auch in anderen Systemen haben möchten, können Sie RW für die Welt / andere zulassen, indem chmodSie die aktualisierte Antwort verwenden ...
präzise
Wenn ich ein USB-Laufwerk ext4 mit formatieren gksu gpartedwürde, würde dies mich automatisch zum Eigentümer dieses USB-Laufwerks machen, oder würde es immer noch mit root als Eigentümer formatiert werden?
Marc
Das geht nicht. Ich bekomme immer noch keine Betriebserlaubnis, wenn ich versuche, irgendetwas an diesem Einhängepunkt zu erkennen.
Fr0ntSight
Die Frage ist aber, warum das Laufwerk überhaupt als Root gemountet ist . Gibt es eine Einstellung, die ich festlegen kann, damit das Laufwerk künftig von meinem Benutzer bereitgestellt wird?
Becko
1

Haben Sie versucht, das Laufwerk mit Ihren eigenen Berechtigungen neu zu formatieren?

Überprüfen Sie zunächst Ihre Benutzer-ID:

sudo id -u red

Es sollte "1000" geben

Entfernen Sie als Nächstes das Laufwerk aus dem Dateimanager.

Seien Sie vorsichtig, Sie werden alle Ihre Daten mit dem nächsten Befehl verlieren

sudo mkfs.ext4 /dev/sdx1 -E root_owner=1000:1000

Hängen Sie das Laufwerk ein und Sie sollten in der Lage sein, Dateien und Ordner zu schreiben

rot
quelle
1

Die meisten Partitionierungs- und Formatierungs-Tools (wie Gparted) benötigen die Root-Rechte.

Dateisysteme wie ext4 und ext3 speichern die Informationen zum Dateibesitz auf dem USB-Stick. (Aber die ntfs, fat32, fat16 haben keine solche Sicherheit)

In diesem Fall müssen Sie die Berechtigung mit dem folgenden Befehl im Terminal ändern.

chown -hR nobody:nogroup /media/adam/WDPassport2T/

Wenn Sie den Benutzer auf "nobody" und die Gruppe auf "nogroup" setzen, werden ähnliche Probleme mit Berechtigungen / Eigentumsrechten behoben, wenn Sie die Festplatte in eine andere Box einstecken.

Weitere Informationen finden Sie in der Handbuchseite zum Befehl chown (verwenden Sie " man chown").

Thadika
quelle
Es ist in nobodyordnung Aber meine Benutzer-ID ist nicht niemand und hindert mich am Schreiben.
K3 --- rnc
0

Das Dateisystem gehört dem Root, wie durch ls -ld für Ihren Mount WDPassport2T angegeben, und die Berechtigungszeichenfolge drwxr-xr-x zeigt, dass der Eigentümer-Root die RW-Berechtigungen besitzt, während die Mitglieder der Gruppe root zusammen mit der world / others wird nur R-Erlaubnis haben.

Linlin Zaw
quelle