Mavericks へアップグレードした際に消えない Previous Systemフォルダができてしまった場合の対処法

遅ればせながらメインマシン(MacBook Pro Retina 15inch, Mid 2012)を Mountain Lion から Mavericks にあぷでしました。Mavericks では Mail.app がUTF-8(+ASCII)以外のエンコーディングのメール送信に非対応になってしまうなど,後々トラブルの元になりそーな変更も加わっているけど,インストール後いの一番気がついたのは…ボリュームのルートに謎のフォルダが出来ているではないか。“Previous System”という見慣れぬフォルダが生成されており,ググってみたところ消しても問題なさそうだったのでゴミ箱ポイしたものの,何度Finderから「ゴミ箱を空にする」を選んでも消えてくれないのですね〜。仕方ないので,伝家の宝刀

sudo rm -rf /Previous\ System/

をしてみるも,“Operation not permitted.”と表示される始末。よくみると,vmフォルダの中には“sleepimage”というファイル(※ハイバネーションで使用される一種のスワップファイル)が残っており,アイコンにロックマークが付いていたので,rootユーザーでロック解除するも,何度やってもすぐに鍵マークが復活するではないかぁ。散々試した挙げ句,件のファイルは微動だにしない(実際移動もできない)ので,マカー歴15年以上の拙者もさすがにアタマを抱えてシマタ。でも,改めて見てみると,コマンドラインから rm を実行した際,「“schg”フラグが立っているので削除できない」的なメッセージが出ていたのですねぇ。すっかり見逃してた。で,BSD系の UNIX には,パーミッション以外にファイルへのフラグを立てることで,削除禁止などの設定ができるのだけど,OS X も元はといえば BSD なので,この機構が生きているのです。ちなみに schgフラグはシステムがファイルの変更を禁止する属性なので,以下のコマンドで属性を解除し,rm することでよーやくファイルが消えてくれました。めでたしx2(^ ^;)。

sudo chflags noschg /Previous\ System/private/var/vm/sleepimage