2016年1月25日 23:11
新・OS X ハッキング! (152) El Capitanの「SIP」をもっと知る
初期値の「10」(16進数)を2進数で表現すると「00010000」、すなわち4ビット目の「CSR_ALLOW_APPLE_INTERNAL」のみフラグが立っているということだ。
話が込み入るので端折らせていただくが、この16進数で表現されるフラグはcsrutilコマンドのオプションと連動している。ファイルシステムの変更を制限するフラグ(CSR_ALLOW_UNRESTRICTED_FS)は1ビット目、前述した4ビット目とあわせると「00010010」、これを16進数で表せば「12」。NVRAMにある「csr-active-config」の値との関係がわかるはずだ。
○アップデート前のファイルの行方
El Capitanにアップグレードしたあと、SIPにより書き込み制限を受けた領域にあったはずのファイルがなくなった、という経験はないだろうか? それもそのはず、それらファイルはアップグレード時に/Library/SystemMigration/History以下へと強制移動されるからだ。
移動先のディレクトリ名には「Migration-」に続き一意のIDが使用され、lsコマンドなどで内容を見ると「QuarantineRoot」