Si queremos proteger contra el borrado o la edición, tanto archivos como directorios y hacer que estos sean inmutables podemos usar el comando chattr
.
Para ello lo hacemos de la siguiente manera:
sudo chattr +i -V /ruta/al/archivo_importante.txt
El parámetro +i
le indica que haga inmutable el archivo indicado.
El parámetro -V
nos muestra la información por pantalla.
También disponemos del parámetro -a
(append) que nos permite añadir información al archivo pero no eliminarlo ni modificar el contenido actual.
Por ejemplo, tenemos un archivo de texto llamado archivo.txt
, al que previamente le hemos añadido la inmutabilidad, con el siguiente contenido:
Contenido de un archivo inmutable
con un contenido de 3 líneas
**tercera línea**
Aunque lo editemos con sudo
no se podrá guardar por que no nos lo permite.
Pero si ejecutamos un comando y lo redirigimos añadiéndolo al archivo archivo.txt
veremos como se añade la información al final del mismo:
df >> archivo.txt
cat archivo.txt
Nuevo contenido:
Contenido de un archivo inmutable
con un contenido de 3 líneas
**tercera línea**
S.ficheros bloques de 1K Usados Disponibles Uso% Montado en
udev 8082628 0 8082628 0% /dev
tmpfs 1624800 3248 1621552 1% /run
/dev/sda3 120460756 9719928 104549020 9% /
tmpfs 8123992 0 8123992 0% /dev/shm
tmpfs 5120 12 5108 1% /run/lock
/dev/sda2 523248 5972 517276 2% /boot/efi
/dev/sdc1 1921724608 242817932 1581214620 14% /mnt/Universo
/dev/sdb1 479600448 242817828 212346960 54% /mnt/Datos
Disponemos de dos parámetros más que nos indican si la información contenida en el archivo podrá ser recuperada o por el contrario eliminada de forma permanente sobreescribiendo los bloques usados en el disco duro con ceros.-s
> Al borrar el archivo la información almacenada en él no será recuperable-u
> Al borrar un archivo, la información almacenada en él será posible recuperarla con ciertas limitaciones.
Proteger un directorio
Si quisiéramos proteger un directorio completo lo hacemos de la siguiente manera:
sudo chattr +i -VR /home/usuario/directorio_importante
En este caso se le ha añadido la opción -R
para que sea recursiva la acción de hacer inmutables tanto el directorio como los archivos.
Hay que tener en cuenta que si asignamos esta orden al directorio no podremos tampoco crear archivos dentro del mismo.
Si queremos que los archivos y/o directorios dejen de ser inmutables y de estar protegidos usaremos el parámetro -i
siguiendo la misma estructura anterior.
sudo chattr -i -VR /ruta/al/directorio_importante
Ver o listar archivos inmutables
Si queremos ver cuales son los archivos inmutables o protegidos y cuales no, usaremos el comando lsattr
.
lsattr
----i---------e------- ./uno1.txt
----i---------e------- ./uno3.txt
----i---------e------- ./uno2.txt
s----a--------e------- ./archivo_prueba
A la hora de listar los archivos para ver su inmutabilidad disponemos de las siguientes opciones:-R
> Muestra los archivos y sus subdirectorios de forma recursiva.-d
> Muestra los atributos de inmutabilidad del directorio en curso.-a
> Muestra los archivos ocultos.