Monta unità USB con permessi di scrittura per tutti o per utenti specifici

20

So che ci sono domande simili ma ho qualche problema specifico che non riesco a superare.

Ho:

  • HDD suddiviso in due partizioni. /dev/sdb1 e /dev/sdb2 . sdb1 è NTFS e non ne ho bisogno. Ho bisogno di sdb2 che è fat32.
  • Ubuntu 12.04.1 LTS (server)

Voglio:

In definitiva ho bisogno di un montante perma /dev/sdb2 su /home/storage con diritto di accesso (rw) per l'utente media .

Problemi che sto affrontando:

1) Utilizzo del montaggio manuale dalla riga di comando.

Se uso solo

server# sudo mount /dev/sdb2 /home/storage

Monta ma il /home/storage riceve root come proprietario e gruppo e non consente all'utente media di scrivere lì.

Se utilizzo mount comando senza sudo come utente media - non sono autorizzato. Dice che solo root può usare mount.

Se utilizzo mount con opzioni: server# sudo mount /dev/sdb2 /home/storage -o umask=000 ottengo ciò di cui ho bisogno. Un po 'esagerato, naturalmente, dal momento che la cartella di archiviazione diventa scrivibile per tutti. BUT - che viene montato manualmente - ora ho bisogno di reinstallarlo ad ogni riavvio.

2) Remounting on reboot - using fstab

Quindi ho pensato che starò bene se uso fstab per montare questa partizione ( /dev/sdb2 ) ogni volta che riavvio. La riga fstab che ho aggiunto:

UUID=8C52-C1CD /home/storage auto user,umask=000,utf8,noauto 0 0

hai uuid con blkid . Il tipo fs auto ho cambiato alcune volte ... provato anche vfat , ma sempre al riavvio ubuntu si ferma quando elabora fstab (come penso) con il messaggio (preso dal log):

fsck from util-linux 2.20.1 /dev/sda5: clean, 120559/10969088 files, 19960144/43861504 blocks mount: unknown filesystem type 'static' mountall: mount /etc/fstab: [772] terminated with status 32 mountall: Filesystem could not be mounted: /etc/fstab: Skipping /etc/fstab: at user request

E anche - sudo mount -a non fa mai veramente niente.

Che cosa sto sbagliando? Sospetto di aver incasinato qualcosa:)

UPDATE:

Come sembra - fstab dovrebbe contenere solo supporti per le unità statiche, non qualsiasi tipo di materiale USB. Sono perplesso sul modo in cui questo funziona con tutte le persone che pubblicano in rete le loro storie di successo ...

tuttavia ... se ciò non è possibile - mi piacerebbe sapere come rimontare il mio usb dopo ogni riavvio ... se non con fstab - di come?:)

    
posta GeekSince1982 04.02.2013 - 14:26

4 risposte

21

Il tuo problema sembra riguardare le autorizzazioni che hai impostato. Le unità formattate FAT / FAT32 non supportano i permessi dei file. Le autorizzazioni per tutto sono determinate dalla modalità di montaggio dell'unità. Quando hai impostato l'autorizzazione, ha funzionato quando hai

server# sudo mount /dev/sdb2 /home/storage -o umask=000

Per quanto riguarda non il montaggio automatico al riavvio

UUID=8C52-C1CD /home/storage auto user,umask=000,utf8, -->noauto<-- 0 0

Il "noauto" rende questo NON automaticamente montato all'avvio del sistema e analizza il file / etc / fstab. Rimuovi questa opzione e verrà montata all'avvio. È possibile impostare le autorizzazioni sul punto di montaggio una volta montato con chmod o specificarle in / etc / fstab.

Se è necessario l'utente multimediale per accedervi, è possibile impostare le autorizzazioni su 764 e aggiungerle al gruppo di sicurezza. Root ha sempre accesso a tutto.

vedi link per alcuni esempi di permessi di file propper

Da una nota a margine, bodhi.zazen ha fatto un buon punto C'è qualche ragione per cui devi usare FAT? In caso contrario, eseguo il backup dei dati e utilizzo un file system nativo di Linux. Puoi quindi impostare la proprietà e le autorizzazioni.

    
risposta data CacheXT 11.12.2013 - 13:39
4

Salvo sovrascrizione dalle opzioni di mount GID = o UID = il proprietario e le autorizzazioni di il punto di mount al momento del montaggio diventa quello dell'albero del filesystem montato.

Quindi se / dev / sdb1 contiene un filesystem ext4 (ad esempio un backup) di proprietà dell'utente quindi l'utente diventerà il proprietario del punto di montaggio dopo il successo del montaggio.

Iniziando abbiamo una cartella vuota 'backup' da utilizzare come punto di montaggio, ed è di proprietà di root.

# ls -alR /mnt
/mnt/:
drwxr-x---  5 root root 4096 May 30 20:59 ./
drwxr-xr-x  3 root root 4096 Dec  5  2015 ../
drwx------  2 root root 4096 Jan  1 07:45 backup/

/mnt/backup:
drwx------  2 root root 4096 Jan  1 07:45 .
drwxr-x---  5 root root 4096 May 30 20:59 ..

ora montiamo / dev / sdb1 (sola lettura)

# mount -o ro /dev/sdb1 /mnt/backup

e vediamo ...

# ls -alR
/mnt/:
drwxr-x---  5 root root 4096 May 30 20:59 ./
drwxr-xr-x  3 root root 4096 Dec  5  2015 ../
drwx------  2 user user 4096 Jan  1 07:45 backup/

/mnt/backup:
drwx------  2 user user 4096 Jan  1 07:45 .
drwxr-x---  5 root root 4096 May 30 20:59 ..
-rw-------  1 user user 252076021760 Jun  9 21:11 backup.tar

Ora se hai un'unità vuota e vuoi montarla per "utente" come estensione dello spazio su disco dell'utente, montare l'unità come root, chown della radice di il montaggio su "utente" e smonta.

La prossima volta che il filesystem viene montato (da root o chiunque secondo fstab) il il proprietario della montatura sarà 'utente'.

    
risposta data user555425 10.06.2016 - 06:37
2

Puoi anche eseguire

sudo chmod 0777 /home/storage

Poiché le unità FAT non dispongono di autorizzazioni, linux applica l'autorizzazione del punto di montaggio all'intera unità.

    
risposta data Zane Hooper 25.03.2015 - 13:15
0

Se hai un dispositivo di archiviazione esterno collegato alla tua macchina Linux con NTFS, assicurati che il filesystem sia pulito.

Prima di montare lo storage sulla tua macchina Linux:

  1. Esegui il comando di sotto

    ntfsfix /dev/storagedevice ( like sdb1 or sdc1 )  
    
  2. Riavvia la tua Linux box

  3. Montare la memoria esterna eseguendo il comando:

    mount -o rw /dev/storagedevice /media/ 
    

    o

    mount -o rw /dev/storagedevice /mnt/ 
    

    o montare il dispositivo memorizzato tramite la GUI.

risposta data Vitalie 10.07.2018 - 15:23

Leggi altre domande sui tag