Magazine Tecnologia

[Linux] Come proteggere files e directories dall’eliminazione/modifica accidentale

Creato il 20 dicembre 2011 da Malefika

[Linux] Come proteggere files e directories dall’eliminazione/modifica accidentaleCi sono cartelle che non vorreste mai fossero toccate, neppure accidentalmente da voi stessi. Per quello che mi riguarda è difficilissimo che un file da me eliminato passi per il cestino, specie su Linux: facendo largo uso di terminale, spesso e volentieri con accesso root, tendo ad eliminare files e cartelle con il comando rm. E non immaginate quante volte ho confuso una finestra di terminale con un’altra, confondendo anche i files da eliminare, con le ovvie imprecazioni del caso…

Oggi vi suggerisco un trucco che permette di proteggere su linux, a priori, determinati files dall’eliminazione, dalla modifica e dallo spostamento. In pratica vi faccio vedere come rendere il file (o la cartella) immutabile.

[Linux] Come proteggere files e directories dall’eliminazione/modifica accidentale
Il comando, che richiede i permessi di root per essere utilizzato, si chiama chattr (change attribute, man chattr per maggiori informazioni) e, come da nome, permette di modificare una moltitudine di attributi relativi a files e directories. L’attributo che a noi interessa è quello relativo all’immutabilità del file o della cartella in questione. E adesso a noi.

NB: se non siete su distribuzione debian-based (e non disponete, quindi, del comando sudo) potrete ottenere i permessi di root utilizzando il comando su prima del comando chattr. La sintassi è la seguente:

sudo chattr +i percorso_del_file

renderà immutabile il file passato come argomento, mentre

sudo chattr -i percorso_del_file

Per rendere immutabile una directory, invece, avremo bisogno di un chattr ricorsivo (che agisca prima su tutti i files presenti nella directory e poi sulla directory stessa). Non preoccupatevi, il processo può essere fornito direttamente dal sistema anteponendo un -R prima dell’attributo da modificare. In sostanza per rendere immutabile una directory (e tutti i files al suo interno) scriveremo:

sudo chattr -R +i percorso_della_directory

e, analogamente, per rilasciarla scriveremo

chattr -R +i  percorso_della_directory  

Un esempio pratico: se volessi bloccare il file foo presente nella mia home directory dovrei scrivere

sudo chattr +i ~/foo

e per rilasciarlo scriverei

sudo chattr -i ~/foo

Stesso discorso vale per le directory: se volessi bloccare la directory testdir presente all’interno della mia home directory scriverei

sudo chattr -R +i ~/testdir/

e, alla stessa maniera, se volessi rilasciarla scriverei

sudo chattr -R -i ~/testdir/

Vi raccomando solo di evitare di invocare il comando chattr su files e directories di sistema: i risultati potrebbero essere quasi devastanti!


Potrebbero interessarti anche :

Ritornare alla prima pagina di Logo Paperblog

Possono interessarti anche questi articoli :