GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cuáles son las diferencias entre `chattr +i FILE` y `chmod -w FILE`?

chmod -w file está disponible en todos los entornos UNIX, sin embargo chattr -i FILE Es posible que el uso de atributos de archivo extendidos no esté disponible en su sistema, según el tipo de sistema de archivos/distribución.

Aparte de eso, eche un vistazo a este enlace para ver los puntos buenos y malos de emplear atributos de archivo extendidos.


Desde chattr página man

Un archivo con el atributo 'i' no se puede modificar:no se puede eliminar ni renombrar, no se puede crear ningún enlace a este archivo y no se pueden escribir datos en el archivo. Solo el superusuario o un proceso que posea la capacidad CAP_LINUX_IMMUTABLE puede establecer o borrar este atributo.

Como puede ver, chattr es más potente que chmod . chmod-w elimina solo 'write ' permiso para el contenido del archivo. Y también necesitas usar chattr +i para proteger/bloquear el archivo entonces chattr -i para desbloquear


chattr +i establece el immutable atributo del sistema de archivos en el archivo. Se diferencia de las reglas de control de acceso. Las reglas de control de acceso se aplican a los atributos del archivo, mientras que immutable es un sistema de archivos extendido atributo de archivo, que puede no estar disponible en todos los sistemas de archivos. Solo un usuario con privilegios de raíz puede configurar o deshabilitar este atributo extendido. Nadie, ni siquiera el propietario o un usuario con permiso de escritura, puede escribir en dicho archivo. Un usuario sin permiso de escritura de archivo puede crear un enlace fijo a un archivo normal, pero si el archivo está marcado como inmutable, un usuario no puede crear un enlace fijo, ya que el sistema de archivos no puede cambiar el recuento de referencias a este archivo inmutable.

chattr +i es útil para la protección contra la eliminación accidental por root. Además, un archivo inmutable no se puede renombrar ni mover de un directorio a otro.


Linux
  1. ¿Cuál es la diferencia entre fsync y syncfs?

  2. ¿Cuáles son las diferencias entre lsof y netstat en Linux?

  3. ¿Cuál es la diferencia entre fsck y e2fsck?

  4. ¿Cuál es la diferencia entre adduser y useradd?

  5. ¿Cuál es la diferencia entre ls y l?

¿Cuál es la diferencia entre InnoDB y MyISAM?

¿Cuál es la diferencia entre Linux y Unix?

¿La diferencia entre .exrc y .vimrc?

¿Cuáles son las diferencias entre cPanel y WHM?

¿Qué es un Hipervisor? ¿Cuál es la diferencia entre el tipo 1 y 2?

¿Cuál es la diferencia entre curl y Wget?