Montare unità USB con autorizzazioni di scrittura per tutti o utenti specifici


25

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

Io ho:

  • HDD diviso in due partizioni. /dev/sdb1e /dev/sdb2. sdb1è NTFS e non ne ho bisogno. Ho bisogno di ciò sdb2che è fat32.
  • Ubuntu 12.04.1 LTS (server)

Voglio:

In definitiva ho bisogno di un perma-mount /dev/sdb2per /home/storagel'accesso a destra (RW) per l'utente media.

Problemi che sto affrontando:

1) Utilizzo del montaggio manuale dalla riga di comando.

Se solo usassi

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

Si monta ma il /home/storageroot riceve come proprietario e gruppo e non consente mediaall'utente di scrivere lì.

Se uso il mountcomando senza sudocome utente media, non sono autorizzato. Dice che solo root può usare mount.

Se uso mountcon le opzioni: server# sudo mount /dev/sdb2 /home/storage -o umask=000ottengo ciò di cui ho bisogno. Un po 'esagerato ovviamente, poiché la cartella di archiviazione diventa scrivibile per tutti. MA - che viene montato manualmente - ora ne ho bisogno per rimontarlo ad ogni riavvio.

2) Rimontaggio al riavvio - utilizzo fstab

Quindi ho pensato che andrò bene se uso fstabper montare questa partizione ( /dev/sdb2) ogni volta che riavvio. La fstablinea che ho aggiunto:

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

ottenuto con blkid. Il tipo di fs l' autoho cambiato alcune volte ... vfatanche provato , ma sempre al riavvio ubuntu si interrompe durante l'elaborazione di fstab (come penso) con il messaggio (preso dal registro):

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 -anon fa mai davvero niente.

Che cosa sto facendo di sbagliato? Sospetto di aver incasinato qualcosa :)

AGGIORNARE:

A quanto pare - fstab dovrebbe contenere solo supporti per unità statiche, non alcun tipo di dispositivo USB. Sono perplesso sul modo in cui questo funziona con tutte le persone che pubblicano in rete le loro storie di successo ...

comunque..se questo non fosse possibile - vorrei sapere come rimontare il mio usb dopo ogni riavvio ... se non con fstab - di come? :)


Penso che dovresti pubblicare tutto fstab per la revisione, e non solo una riga. Per quanto riguarda i permessi giusti, corsa id mediae l'uso uid=ed gid=e umask=027opzioni.
mikewhatever,

1
C'è qualche motivo per cui devi usare FAT? Altrimenti, farei il backup dei dati e utilizzerei un file system nativo di Linux. È quindi possibile impostare la proprietà e le autorizzazioni.
Pantera

@mikewhatever grazie ma in realtà funziona in modo strano ... beh ... non proprio :)
GeekSince1982

@ bodhi.zazen ha letto di più ... le cuciture come su Ubuntu 12 fstab dovrebbero avere solo supporti per unità statiche. nessun usb ...
GeekSince1982

Risposte:


27

Il tuo problema sembra riguardare le autorizzazioni che hai impostato. Le unità formattate FAT / FAT32 non supportano le autorizzazioni dei file. Le autorizzazioni per tutto sono determinate da come è montata l'unità. Quando hai impostato l'autorizzazione aperta ha funzionato quando tu

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 montare automaticamente all'avvio del sistema e analizza il file / etc / fstab. Rimuovi quell'opzione e verrà montata all'avvio. È possibile impostare le autorizzazioni sul punto di montaggio una volta montato chmodo specificarle in / etc / fstab.

Se è necessario che l'utente multimediale acceda ad esso, è possibile impostare le autorizzazioni su 764 e aggiungerle al gruppo di sicurezza. Il root ha sempre accesso a tutto.

vedi http://www.linux.org/threads/file-permissions-chmod.4094/ per alcuni esempi di permessi sui file di propper

In una nota a margine, bodhi.zazen ha fatto un buon punto C'è qualche motivo per cui devi usare FAT? Altrimenti, farei il backup dei dati e utilizzerei un file system nativo di Linux. È quindi possibile impostare la proprietà e le autorizzazioni.


1
-o umask=000è!! Grazie!
Antony,

4

A meno che non vengano sovrascritti dalle opzioni di mount GID = o UID = il proprietario e le autorizzazioni del punto di mount al momento del montaggio diventano quelle dell'albero del filesystem da montare.

Quindi se / dev / sdb1 contiene un filesystem ext4 (diciamo un backup) di proprietà dell'utente, l'utente diventerà il proprietario del punto di mount dopo il montaggio riuscito.

A partire da abbiamo una cartella vuota 'backup' che funge da 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", monta l'unità come root, chown la radice del mount su "user" e smonta.

La prossima volta che il filesystem sarà montato (da root o da chiunque secondo fstab) il proprietario del mount sarà 'user'.


3

Puoi anche correre

sudo chmod 0777 /home/storage

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


1
Non applicare mai le autorizzazioni R + W + X per tutti gli utenti. Ciò consentirebbe a chiunque o a qualsiasi cosa di accedere, eseguire, eliminare, modificare la memoria e il suo contenuto ....
Angry 84

1
Sulla maggior parte dei sistemi operativi, le unità USB sono montate in modo che qualsiasi utente possa modificare i contenuti. Se sei un amministratore del server in una situazione in cui questo potrebbe essere un problema, non dovrei dirti cosa significa 0777.
Zane Hooper,

Le unità non vengono mai montate per impostazione predefinita per consentire a tutti gli utenti, ecco perché hanno gruppi e autorizzazioni. In entrambi i casi è sempre più sicuro mostrare una mod di sicurezza migliore in quanto le persone semplicemente copieranno e incolleranno senza sapere di meglio
Angry 84

-1

Se si dispone di un dispositivo di archiviazione esterno collegato al proprio box Linux con NTFS, assicurarsi che il filesystem sia pulito.

Prima di montare l'archiviazione sul tuo box Linux:

  1. Esegui il comando seguente

    ntfsfix /dev/storagedevice ( like sdb1 or sdc1 )  
    
  2. Riavvia il tuo box Linux

  3. Montare la memoria esterna eseguendo il comando:

    mount -o rw /dev/storagedevice /media/ 
    

    o

    mount -o rw /dev/storagedevice /mnt/ 
    

    oppure montare il dispositivo storaged tramite GUI.

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.