前回、アキレス腱であるファイルを消してしまい、とんでもない事態に陥りましたが、そのアキレス腱を打破すべく以下のコマンドを使ってみました。
コマンド : chflags
| フラグの設定 | フラグの解除 | フラグの内容 | 必要な権限 | 
|---|---|---|---|
| arch | noarch | archived | root | 
| opaque | noopaque | opaque | 所有者またはroot | 
| nodump | nonodump | nodump | 所有者またはroot | 
| sappnd | nosappnd | system append-only | root | 
| schg | noschg | system immutable | root | 
| sunlnk | nosunlnk | system undeletable | root | 
| uappnd | nouappnd | user append-only | 所有者またはroot | 
| uchg | nouchg | user immutable | 所有者またはroot | 
| uunlnk | nouunlnk | user undeletable | 所有者またはroot | 
なんだかはよくわかりませんが、immutableは変更不可、undeletableは削除不可なのだそうです。
ということは…。
# chflags schg /libexec
# chflags schg /libexec/ld-elf.so.1
#
#
# mv ld-elf.so.1 ld-elf.so.1.1
mv: rename ld-elf.so.1 to ld-elf.so.1.1: Operation not permitted
#
とりあえず移動やリネームによるアキレス腱は消えました。
そして、肝心の削除ですが、
# rm ld-elf.so.1
override r-xr-xr-x root/wheel schg for ld-elf.so.1? y
rm: ld-elf.so.1: Operation not permitted
消せなくなりました。よかったー。(^^;
