¿Cómo le doy a una clase permisos para escribir, pero no para eliminar? ¿Afecta el número octal de chmod?

¿Cómo le doy a una clase permisos para escribir, pero no para eliminar? ¿Afecta el número octal de chmod?

Actualmente estoy intentando crear esto:

  • Propietario: leer/escribir/ejecutar
  • Grupo: Leer/escribir/ejecutar
  • otro: leer/escribir/ejecutar

Entiendo que el chmod # es 777, sin embargo, ¿hay alguna forma de evitar que la "otra" clase pueda eliminarse? ¿Y esto cambiaría el chmod #? Y si es así ¿cuál es el #?

Respuesta1

Si te refieres a "eliminar archivos creados por otras personas", entonces quieres quepegajosobit en el directorio.

Esto se ve comúnmente en directorios como /tmp:

% ls -ld /tmp
drwxrwxrwt 15 root root 36864 Apr  7 21:46 /tmp

Esa "t" al final significa que el directorio es "fijo" y las personas sólo pueden eliminar sus propios archivos. Entonces el usuarioA podría poner un archivo allí; El usuarioB puede colocar un archivo allí. Pero el usuarioA no puede eliminar el archivo del usuarioB. Las personas aún pueden eliminar y modificar sus propios archivos, pero no pueden cambiar los archivos de otras personas.

Para establecer esa bandera, necesita el permiso 1777 ( chmod 1777 dir).

información relacionada