Permisos de montaje en Linux

Permisos de montaje en Linux

Tengo una pregunta sobre el montaje en Linux Fedora. Tengo un punto de montaje dentro de mi directorio de inicio. El punto de montaje está en /home/user/project y en fstab agregué la línea:

/dev/mapper/fedora-proj /home/user/project ext4 defaults 1 2

El directorio /home/user/project tiene los permisos de archivo 0755 y es propiedad del usuario. Pero cuando hago 'mount -a', el propietario del directorio cambia a root y los permisos son 777. Sé que ext2/3/4 no tiene las opciones uid= y gid=, pero ¿por qué el punto de montaje recibe un archivo codificado? permisos durante el montaje y ¿cómo puedo cambiarlos?

PD

La prueba se realizó en Fedora 25. Cuando hago exactamente el mismo procedimiento en Fedora 23, veo un comportamiento diferente: los permisos del directorio de montaje están cambiando a 755 (antes del montaje era 0777).

Respuesta1

Los permisos para la raíz de un punto de montaje se almacenan en el sistema de archivos montado (en realidad tiene sentido de esta manera; de lo contrario, ¿dónde se almacenarían los permisos para el directorio raíz /?). Los cambias de la forma habitual: chmod, chown, etc.

Antes del montaje, verá los permisos para el directorio del punto de montaje en el sistema de archivos principal. Después del montaje, verá los permisos para la raíz del sistema de archivos montado.

Ejemplo: tienes dos sistemas de archivos:

FS-A             FS-B
/                /
  /mnt             /file1
    /foo           /file2
  /etc           

Tenga en cuenta que ambos tienen un directorio superior/raíz ( /), como lo tienen todos los sistemas de archivos (Unix). FS-A tiene dos subdirectorios mostrados ( /mnty /etc) y /mnttiene un subdirectorio /mnt/foo. FS-B tiene dos archivos /file1y /file2. Al ser sistemas de archivos Unix, todos estos directorios y archivos tienen un usuario, un grupo y permisos. Ahora, hagamos de FS-A el sistema de archivos raíz y montemos FS-B en /mnt/foo. Luego obtenemos:

/                   # FS-A /
  /mnt              # FS-A /mnt
    /foo            # FS-A /mnt/foo *or* FS-B /
      /file1        # FS-B /file1
      /file2        # FS-B /file2
  /etc              # FS-A /etc

Observe cómo podemos elegir qué /mnt/fooes: podría ser /mnt/foode FS-A o /de FS-B. Ambos tienen exactamente el mismo camino. Los diseñadores de Unix eligieron FS-B.

PD: a su línea fstab le falta el tipo de sistema de archivos. Debe ir antes de las opciones ( defaults).

información relacionada