Monte una unidad USB con permisos de escritura para todos o usuarios específicos

25

Sé que hay preguntas similares, pero tengo un problema específico que no puedo superar.

Yo tengo:

  • HDD dividido en dos particiones. /dev/sdb1y /dev/sdb2. sdb1es NTFS y no lo necesito. Necesito lo sdb2que es gordo32.
  • Ubuntu 12.04.1 LTS (servidor)

Quiero:

En última instancia Necesito un perma-montaje /dev/sdb2a /home/storagela derecha de acceso (RW) para el usuario media.

Problemas que estoy enfrentando:

1) Uso del montaje manual desde la línea de comando.

Si solo uso

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

Se monta pero /home/storagerecibe la raíz como propietario y grupo y no permite que el mediausuario escriba allí.

Si uso el mountcomando sin sudocomo usuario media, no estoy permitido. Dice que solo root puede usar mount.

Si uso mountcon opciones: server# sudo mount /dev/sdb2 /home/storage -o umask=000obtengo lo que necesito. Un poco exagerado, por supuesto, ya que la carpeta de almacenamiento se puede escribir para todos. PERO, eso se monta manualmente, ahora necesito que se vuelva a montar en cada reinicio.

2) Montar al reiniciar - usando fstab

Así que pensé que estaría bien si solía fstabmontar esta partición ( /dev/sdb2) cada vez que reinicie. La fstablínea que agregué:

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

se puso de pie con blkid. El tipo fs que autocambié varias veces ... vfattambién lo intenté , pero siempre en el reinicio ubuntu se detiene al procesar fstab (como creo) con el mensaje (tomado del 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

Y también, en sudo mount -arealidad nunca hace nada.

¿Qué estoy haciendo mal? Sospecho que arruiné algo :)

ACTUALIZAR:

Como parece, fstab solo debe contener montajes para unidades estáticas, no cualquier tipo de material usb. Me sorprende cómo funciona esto con todas las personas que publican en la red sus historias de éxito ...

sin embargo ... si esto no es posible, me gustaría saber cómo volver a montar mi usb después de cada reinicio ... si no con fstab, ¿cómo? :)

GeekSince1982
fuente
Creo que debería publicar todo fstab para su revisión, y no solo una línea. En cuanto a los permisos correctos, funcionamiento id mediay el uso uid=y gid=y umask=027opciones.
mikewhatever
1
¿Hay alguna razón por la que necesites usar FAT? Si no, haría una copia de seguridad de los datos y usaría un sistema de archivos nativo de Linux. Luego puede establecer la propiedad y los permisos.
Panther
@mikewhatever gracias, pero en realidad funciona de manera extraña ... bueno..no realmente :)
GeekSince1982
@ bodhi.zazen leyó más ... las costuras como en ubuntu 12 fstab solo deberían tener montajes para unidades estáticas. no usb ...
GeekSince1982

Respuestas:

27

Su problema parece ser sobre los permisos que ha establecido. Las unidades con formato FAT / FAT32 no admiten permisos de archivo. Los permisos para todo están determinados por la forma en que se monta la unidad. Cuando estableciste el permiso abierto, funcionó cuando

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

En cuanto a que no se monta automáticamente al reiniciar

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

El "noauto" hace que esto NO se monte automáticamente cuando el sistema se inicia y analiza el archivo / etc / fstab. Elimine esa opción y se montará al inicio. Puede establecer los permisos en el punto de montaje una vez que esté montado chmodo especificarlos en / etc / fstab.

Si necesita que el usuario de medios acceda a él, puede establecer los permisos en 764 y agregarlos al grupo de seguridad. La raíz siempre tiene acceso a todo.

ver http://www.linux.org/threads/file-permissions-chmod.4094/ para ver algunos ejemplos de permisos de archivos apropiados

En una nota al margen, bodhi.zazen hizo un buen punto ¿Hay alguna razón por la que necesite usar FAT? Si no, haría una copia de seguridad de los datos y usaría un sistema de archivos nativo de Linux. Luego puede establecer la propiedad y los permisos.

CacheXT
fuente
1
-o umask=000¡¡Lo es!! ¡Gracias!
Antony
4

A menos que sea anulado por las opciones de montaje GID = o UID = el propietario y los permisos del punto de montaje al montar se convierten en los del árbol del sistema de archivos que se está montando.

Por lo tanto, si / dev / sdb1 contiene un sistema de archivos ext4 (digamos una copia de seguridad) propiedad del usuario, el usuario se convertirá en el propietario del punto de montaje una vez que el montaje sea exitoso.

Comenzando tenemos una carpeta vacía 'copia de seguridad' para servir como punto de montaje, y es propiedad de 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 ..

ahora montamos / dev / sdb1 (solo lectura)

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

y veamos ...

# 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

Ahora, si tiene una unidad vacía y desea montarla para 'usuario' como una extensión del 'espacio de disco del usuario, monte la unidad como raíz, conozca la raíz del montaje como' usuario 'y desmonte.

La próxima vez que se monte el sistema de archivos (por root o cualquier persona según fstab), el propietario del montaje será 'usuario'.

usuario555425
fuente
3

También puedes correr

sudo chmod 0777 /home/storage

Como las unidades FAT no tienen permisos, Linux aplica el permiso del punto de montaje a toda la unidad.

Zane Hooper
fuente
1
Nunca aplique R + W + X permisos para cada usuario .. Esto permitiría a cualquier persona o cosa a acceder, ejecutar, eliminar, modificar el almacenamiento y su contenido ....
enojado 84
1
En la mayoría de los sistemas operativos, las unidades USB están montadas para que cualquier usuario pueda modificar el contenido. Si usted es un administrador del servidor en una situación en la que esto podría ser un problema, no tendría que decirle lo que significa 0777.
Zane Hooper
Las unidades nunca se montan de manera predeterminada para permitir a todos los usuarios. Por eso tienen grupos y permisos. De cualquier manera siempre es más seguro para mostrar una mejor mod seguridad ya que la gente simplemente copiar y pegar sin saber mejor
enojado 84
-1

Si tiene un dispositivo de almacenamiento externo conectado a su caja Linux con NTFS, asegúrese de que el sistema de archivos esté limpio.

Antes de montar el almacenamiento en su caja Linux:

  1. Ejecute el siguiente comando

    ntfsfix /dev/storagedevice ( like sdb1 or sdc1 )  
    
  2. Reinicia tu caja de Linux

  3. Monte el almacenamiento externo ejecutando el comando:

    mount -o rw /dev/storagedevice /media/ 
    

    o

    mount -o rw /dev/storagedevice /mnt/ 
    

    o monte el dispositivo de almacenamiento a través de la GUI.

Vitalie
fuente