Unità USB montata automaticamente dall'utente ma ottiene autorizzazioni di scrittura solo per il root


20

Sto cercando di usare il mio drive USB ext4 ma Ubuntu 13 lo sta montando con il permesso di scrittura solo per il root, quindi con il mio normale utente non posso scriverci, senza sudo.

Il primo posto che ho controllato è dconf-editorche ha le seguenti opzioni

  • automount
  • automount-open
  • autorun-mai
  • autorun-x-content-ignorare
  • autorun-x-content-open-cartella
  • autorun-x-contenuti-start-app

e mi sembra che ci dovrebbe essere un'opzione lì dentro per controllare se posso scrivere sull'unità USB montata, ma no.

Mi sono anche assicurato che il mio utente fosse nei gruppi pertinenti: fuseeplugdev

Ho cercato la maggior parte di Internet e non riesco a trovare una soluzione per modificare le autorizzazioni fornite dall'operazione di montaggio. Non c'è letteralmente nessuno là fuori che abbia questo problema incredibilmente. Un sacco di persone hanno problemi perché le loro unità montano totalmente in sola lettura, ma non in questo modo con il solo permesso di scrittura root.

Non riesco a vedere alcun modo di controllare ciò che accade. Ho cercato di impostare le opzioni di montaggio usando gnome-disksma ho disegnato uno spazio vuoto.

Non è presente fstabma viene visualizzato mountnell'elenco o / etc / mtab:

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

Questo è ciò che appare in syslog se aiuta:

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

Prova a eseguirlo sudo umount /dev/sdb1, quindi montalo come un normale utente. La mtabvoce ha user=adam, il che dovrebbe significare che l'utente adampuò usarla ...
Wilf

@wilf in realtà è la seconda voce mtab che ha user = adam, non l'unità USB. Non so cosa sia quella roba gvfsd-fuse. Probabilmente irrilevante, ma sono perplesso sul perché una voce ce l'ha, ma non sull'unità USB.
Adam,

Whoops ... Dovrebbe prestare maggiore attenzione. Le voci stesse vanno bene, quindi dovrebbe funzionare ... Montare e smontare l'unità graficamente o tramite riga di comando? - la corsa gvfs-mount -d /dev/sdb1dovrebbe montare il disco, anche dovrebbe udisks --mount /dev/sda5. Questi non dovrebbero richiedere la password di root, poiché usano la gvfsdvoce per consentire l'accesso.
Wilf,

quindi gvfs ha qualcosa a che fare con esso. sto attualmente montando e smontando graficamente l'unità tramite nautilus, ma in realtà voglio che venga eseguita automaticamente sull'allegato in modo che il processo di backupdb possa utilizzare l'unità. mi viene in mente che questo è un altro problema anche se ottengo i permessi di scrittura ordinati.
Adam,

1
@Adam, qual è il tipo di filesystem del tuo dispositivo USB? e cosa fa ls -ld /media/adam/WDPassport2Te produce ls -l /media/adam/WDPassport2T?
preciso

Risposte:


25

Una possibile ragione potrebbe essere che hai formattato / creato il disco di archiviazione con uno strumento con privilegio di root e quindi il file system creato era di proprietà della radice .

Diamo un'occhiata all'o / p dei tuoi lscomandi:

$ 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

Il file system è di proprietà del root, come indicato da ls -ldper il tuo mount WDPassport2T e la stringa di autorizzazione drwxr-xr-x mostra che il root del proprietario ha le autorizzazioni RW mentre i membri del root del gruppo insieme al mondo / altri avranno solo l'autorizzazione R.

Per risolvere potresti cambiare le autorizzazioni con chmodo semplicemente cambiare la proprietà in modo ricorsivo, e questo è quello che ho mostrato di seguito:

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

che nel tuo caso sarebbe:

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

Ora, se necessario, puoi anche impostare le autorizzazioni con chmod:

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

(che fornisce autorizzazioni RW al proprietario, al gruppo e al mondo per tutti i file nella destinazione.)

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

(che fornisce le autorizzazioni RWX al proprietario, al gruppo e al mondo per tutte le directory nella destinazione.)

Riferimento:

Documentazione ufficiale di Ubuntu: permessi dei file


Fantastico. Non pensavo di provarlo perché avevo appena assunto i permessi dei file su / media / adam / WDPassport2T erano impostati dal processo di montaggio, cioè non mi rendevo conto che l'unità USB effettiva (o il suo punto di montaggio allocato) avrebbe ottenuto e mantenuto permessi. Quindi ci sarebbero problemi simili con autorizzazioni / proprietà se avessi inserito il disco in un'altra scatola?
Adam,

1
@Adam: "... ci sarebbero problemi con le autorizzazioni / proprietà se avessi inserito il disco in un'altra scatola?" bene, non sono sicuro, quindi ho pubblicato questo D: Quanto sono portatili i comandi chmod e chown di works? ..se vuoi avere permessi RW per i file / directory anche in altri sistemi, potresti consentire RW per il mondo / altri usando chmod, fai riferimento alla risposta aggiornata ...
preciso il

Se formattassi un drive USB ext4 usando gksu gparted, questo mi renderebbe automaticamente il proprietario di quel drive USB o sarebbe ancora formattato con root come proprietario?
Marc

Questo non funziona Ricevo ancora operazioni non consentite quando provo e chown qualcosa su quel punto di mount.
Fr0ntSight

Ma la domanda è: perché l'unità è montata come root in primo luogo. C'è un'impostazione che posso impostare in modo che in futuro l'unità venga montata dal mio utente?
becko

1

Hai provato a riformattare l'unità con le tue autorizzazioni?

Innanzitutto, controlla il tuo ID utente:

sudo id -u red

Dovrebbe dare "1000"

Quindi, smontare l'unità nel filemanager.

Fai attenzione, perderai tutti i tuoi dati con il comando successivo

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

Montare l'unità e si dovrebbe essere in grado di scrivere file e cartelle


1

La maggior parte degli strumenti di partizionamento e formattazione (come Gparted) richiede i privilegi di root.

File system come ext4, ext3 memorizza le informazioni sulla proprietà dei file con la pen drive stessa. (Ma ntfs, fat32, fat16 non hanno una sicurezza del genere)

In questo caso è necessario modificare l'autorizzazione utilizzando il seguente comando nel terminale.

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

impostando l'utente come "none" e il gruppo come "nogroup" risolverà problemi simili con autorizzazioni / proprietà quando si collega il disco in un'altra casella.

per maggiori informazioni consultare la pagina di manuale per il comando chown (usare " man chown")


Va nobodybene Ma il mio ID utente non è nessuno e mi impedisce di scrivere.
K3 --- rnc,

0

Il file system è di proprietà del root, come indicato da ls -ld per il tuo mount WDPassport2T e la stringa di autorizzazioni drwxr-xr-x mostra che il root del proprietario ha le autorizzazioni RW, mentre i membri del root del gruppo insieme al mondo / altri avrà solo l'autorizzazione R.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.