chattr +ia <filename>
のa
は何をしますか?なぜa
をi
と組み合わせて追加するのですか? 注:i
は不変であることがわかっています
_The letters `acdeijstuADST' select the new attributes for the files: append only (a), compressed (c), no dump (d), extent format (e), immutable (i), data journalling (j), secure deletion (s), no tail-merg‐ ing (t), undeletable (u), no atime updates (A), synchronous directory updates (D), synchronous updates (S), and top of directory hierarchy (T).
_
chattr
のマンページ から
このフラグが付いたファイルは、書き込み用に開くことができません。これにより、 truncate()
や unlink()
などの潜在的に破壊的なシステムコールもブロックされます。
_$ touch foo
$ chattr +a foo
$ python
> file("foo", "w") #attempt to open for writing
[Errno 1] Operation not permitted: 'foo'
> quit()
$ truncate foo --size 0
truncate: cannot open `foo' for writing: Operation not permitted
$ echo "Appending works fine." >> foo
$ cat foo
Appending works fine.
$ rm foo
rm: cannot remove `foo': Operation not permitted
$ chattr -a foo
$ rm foo
_
このオプションは、ログファイル用に設計されています。