Se stai cercando di impedire che qualsiasi file venga modificato, eliminato o rinominato, dovrai impostare il flag immutabile su di esso. Può essere impostato su file o directory. Una volta aggiunto il flag immutabile, i file/le cartelle non possono essere modificati o eliminati. Se hai aggiunto un flag immutabile e desideri apportare modifiche ai tuoi file, dovrai rimuovere il flag immutabile. È un attributo del file system esteso.
Fare riferimento ai seguenti passaggi per impostare il flag immutabile. Sarà necessario accedere con root per impostare il flag immutabile.
- In primo luogo, creeremo un file denominato test.txt con il comando seguente.
# touch test.txt
- Usa il comando lsattr per controllare l'attributo esteso. Per impostazione predefinita, è presente solo 'e'.
# lsattr test.txt
- Aggiungeremo alcuni contenuti su test.txt e dovrebbe funzionare correttamente poiché non abbiamo ancora apportato modifiche.
# echo This is a test of immutable flage >> test.txt
# cat test.txt - Usiamo il comando chattr per impostare il flag +i. Qui, intendo immutabile.
# sudo chattr +i test.txt
- Ora useremo il comando seguente per verificare l'immutabile per il file test.txt
# lsattr test.txt
Risultato :
----i---------e---- test.txt
- Come per l'output sopra test.txt è ora immutabile. Cercheremo di modificare o eliminare lo stesso file.
# echo test-modification >> test.txt
-bash: test.txt: Permission denied# rm -f test.txt
rm: cannot remove ‘test.txt’: Operation not permitted# mv test.txt test2.txt
mv: cannot move ‘test.txt’ to ‘test2.txt’: Operation not permittedCome per l'errore precedente, possiamo vedere che il file non è stato in grado di modificare o eliminare poiché abbiamo impostato il flag immutabile su di esso. Tieni presente che se imposti immutabile su una qualsiasi delle cartelle, imposterà il flag immutabile per interi file/cartelle all'interno della stessa cartella.
- Se vuoi apportare modifiche allo stesso file, dovrai rimuovere l'immutabile. Il comando seguente rimuoverà il flag immutabile da qualsiasi file.
# chattr -i test.txt
- Verificheremo che il flag immutabile non sia stato rimosso.
# lsattr test.txt
Risultato :
-------------e-- test.txt
Ora puoi modificare o eliminare il file senza alcun problema.