Modifique la entrada fstab para que todos los usuarios puedan leer y escribir en un volumen EXT4

44

Tengo un cuadro de Ubuntu 10.04 con una partición EXT4. Esta partición está configurada para montarse automáticamente /etc/fstab. A los efectos de este artículo, vamos a llamar: /media/foo.

Lamentablemente, solo se rootpueden crear / eliminar archivos / directorios en el sistema de archivos raíz de foo. Para que otros usuarios realicen el archivo / io en este volumen, rootdeben crear un directorio y chmodlos permisos para otros.

Me gustaría montar el volumen de manera que cualquiera pueda leer / escribir en el volumen sin la necesidad de roothacerlo chmod.

A continuación se muestra mi fstabentrada:

/dev/sda8    /media/foo    ext4    rw,user,exec 0 0

La entrada originalmente tenía en defaultslugar de rw,user,exec. Agregué las entradas adicionales, a saber, rwpara que cualquier usuario pueda leer / escribir.

Lamentablemente, la fstabentrada no funciona. Se monta bien, pero aún requiere rootintervenir.

Y, en caso de que alguien pregunte, simplemente ejecute: chmod -R 777 *encendido /media/foocomo rootno funciona.

Phanto
fuente

Respuestas:

45

La opción de montaje usersolo permite que cualquier usuario pueda montar el sistema de archivos. La rwopción hace que el sistema de archivos no sea de solo lectura. Tendrá que usar permisos para que el directorio principal se pueda escribir.

chmod 777 /media/foo

El chmodcomando que muestre sólo afecta a los archivos existentes dentro /media/foo .

Pausado hasta nuevo aviso.
fuente
2
¿Cuál es el mejor lugar en Ubuntu para agregar este comando al inicio?
Ivan Balashov
@IvanBalashov: puede usar una @rebootentrada /etc/crontabentre otras posibilidades.
Pausado hasta nuevo aviso.
3
@DennisWilliamson Gracias. Lo he puesto /etc/rc.localsi hace alguna diferencia. Sin embargo, lo que me molesta en general sobre esto es que realmente debería configurarse fstab. Si no, el punto de montaje puede cambiar, y los scripts también tienen que cambiar, el mantenimiento es un infierno.
Ivan Balashov
Wow, debo comenzar a adivinar esas cosas: D muchas gracias.
erm3nda
1
De acuerdo con el chmod, pero agregue un: chmod + t / media / foo para permitir a los usuarios crear su propio subdirectorio
user1251840
25

Creo que sería más sencillo cambiar la entrada fstab a:

/dev/sda8    /media/foo    ext4    rw,user,exec,umask=000 0 0

umask=000significa que cualquiera puede leer, escribir o ejecutar cualquier archivo o directorio en foo. El valor predeterminado habitual es 022, lo que significa que los usuarios no pueden escribir.

alguien
fuente
32
umask es solo una opción para particiones ntfs / vfat. A mount no le gustará umask en un sistema de archivos ext.
Daniel
8

Tuve el mismo problema en openSUSE, pero creo que la solución también puede aplicarse a esto. Todos los usuarios que quiero compartir con el sistema de archivos montado pertenecen al mismo grupo primario: usuarios

Tengo la siguiente línea en mi fstab:

/dev/<partition> <mount_point>          ext4       rw,acl       0 0

y ejecuté los siguientes comandos:

sudo chgrp -R users <mount_point>
sudo setfacl -d -m g::rwx <mount_point>

para que los archivos o directorios recién creados obtengan esos permisos. Esto implica que tiene instalado el paquete acl.

dario
fuente
Si es un directorio encriptado, /home¿se montará esto en el /etc/crypttab?
George Udosen
2

Bueno, para empezar, debes asegurarte de que el directorio de / media / foo sea grabable. Si aún no lo está, ejecute el siguiente comando:

chmod +w /media/foo

Recuerde, star solo se aplica a los contenidos visibles del directorio, no al directorio en sí ni a ningún archivo que no sea visible.

hotei
fuente
1

Tratar,

sudo setfacl -R -d -m u::rwx,g::rwx,o::rwx <mount_point>
usuario247046
fuente
0

Hace unos años establecí el grupo del punto de montaje en el grupo plugdev, agregué el usuario a ese grupo. De esta manera, al crear nuevos grupos, es posible otorgar permisos por usuario. Para uso doméstico, es suficiente establecer permisos de punto de montaje para otros: lectura / escritura / ejecución como se escribió anteriormente.

Lo hice con 'sudo nautilus &' en la terminal y haga clic derecho -> propiedades -> derechos, pero cualquier otro administrador de archivos que se ejecute como root estaría bien.

Doom3d
fuente