mochikoAsTechのdig日記

当方好きなコマンドはdigです!お友達から!!よろしくお願いします!!!

「このファイルは絶対に消さないで」とお願いしておくより、chattr +i しておいた方が確実で安全

複数名でサイトを更新したり、rsyncで定期的にファイルが更新されるようなとき、「このファイルだけは!消したり、更新したりしないで!触らないでえええ」というファイルがあったら、一生懸命お願いするよりchattr +iしておく方が確実だし安全。

chattrコマンドはchange attribute(属性の変更)の略で、ファイルの属性を色々変更できる。

chattr +i ファイル名

しておけば、オプションのiはimmutable(変更不可)なので、これをやっておくと、ファイルに対して読み書き実行の権限を持ってるオーナーは勿論、なんとrootですら一切変更・削除が出来なくなる。rootがrm -fしたって、rm: cannot removeと出るから安心!

逆にchattrで設定してあることを知らずに、lsで権限を確認して、権限はあるはずなのにこのファイル消せないー!となった時は、lsattrコマンドで状態を確認すべき。

# lsattr ファイル名
----i--------e- ファイル名 ←iが付加されている状態

# chattr -i ファイル名 ←-オペレータで、i(変更不可)の属性を解除すると
# lsattr ファイル名 ←iが消えた
-------------e- ファイル名

-(マイナス)オペレータでiを解除してやれば、ファイルは触れるようになる。わー、chattr便利ー。