anchor
最近私が実行しているメンテナンス手順についてまとめてみた。
BBSで「taka」さんからTiger環境でのメンテナンスの手順について質問をもらったからだ。
そちらに書けば良いのだが、このことはいつか書こうと思っていて今まで果たせていなかったことだしBBSはその性格上いつか消えてしまうのでこちらに書くことにした。
といってもTigerでもJaguerでもやらなければいけないことはあまり違わない。
私は以下のことを実行している。
1)目的
a).DS_Storeファイルの削除
このファイルはFinderのウインドウサイズ、位置、背景色、アイコン配列、アイコンサイズなどを記憶しておくファイルで、長期間使っているとこのファイルが壊れて、ウィンドウ位置などを覚えない、アイコンが消えるなどの障害の原因になる
b)キャッシュファイルの削除
システム、ブラウザなどが使用している一時保存状態の履歴ファイルのコピーを収容するキャッシュファイルは、長期間使っていると壊れてきてブラウザのクラッシュ、Finderのクラッシュ、システムの一部機能の不具合、表示不具合などを引き起こす
c)fsck(ファイルシステムチェック)
起動ボリュームのディレクトリ構造、カタログデータ、アロケーション管理情報などの不具合破損をチェックする
ここに不具合が起きると最悪起動できないなどのトラブルに。
d)アクセス権、所有権チェック
システムやアプリ、コマンドは動作する上で様々なファイルのアクセス権や所有権を一時的に書き換えているが、これの整合性がとれなくなってアクセス権、所有権が不正なまま放置されることがある
放置するとアプリが起動しない、書き換え・削除不能なファイルができてしまう、システムなどの機能が呼び出せない・反応しないなどの不具合の原因に。
e)環境設定ファイル .plistファイルのシンタックスエラーをチェック
アプリや一部プラグインにひとつ以上はある環境設定ファイルのうち
"~/Library/Preferences/"
"/Library/Preferences/"
にある.plistファイルに何らかの原因で文法上のエラーが出るとアプリが正常に機能しなくなることがあるのでシンタックスエラーチェックをする
f)Swapfileの削除
システムの仮想メモリ領域であるSwapfileも長期間使っていると壊れてきて、システムの動作に不具合を起こすのでこれを一度完全削除する
g)prebindingのアップデート
長く使っているとファイルの関連付けのようなものが切れてしまうのでprebindコマンドできれた関連付けを再構築する
h)ウイルスチェック
頻繁にファイルをやり取りするメール、ダウンロードフォルダ、デスクトップ、ドキュメントフォルダなどの検疫チェック
i)不要なローカライゼーションの削除
インストール済みアプリなどに含まれる英語、日本語以外の不要なローカライゼーションを削除する
j)Spotlight検索などのデータベースになっているメタデータを初期化してメタデータベースを再生成させる
これらのことを実施するために以下の手順でメンテナンスをやっている。
1)Terminalを起動して
sudo find / -name ".DS_Store" -delete
を入力、enterキーで実行
(.DS_Storeを全てのディレクトリから削除。ルート以外はパスワードを要求され
る。.DS_Storeファイルは再起動すればまたシステムによって自動生成される)
2)Cache Outを起動してブラウザ、システムのキャッシュを全て指定して実行。
キャッシュファイルは削除されるが再起動すればまたシステムなどによって自動生成される。
3)一度再起動させてこれらのファイルのうち動作に必要なものを再生成させる。
4)再び再起動して画面が落ちたらコマンドキー(リンゴマーク)とSキーを同時に押し続ける。
するとカリフォルニア大学のBSDの権利表示につづいてCUI画面が現れる。
このシングルユーザモードで
fsck -fy
とコマンドを入力、enterキーで実行する。
ルートのパスワードを要求されるのでこれを入力して再びenterキー。
◯◯repairedという表示が出たら再度実行
Volume MacintoshHD appears to be OK
という表示が出るまで繰り返す。
5)AppleJackを呼び出してオートパイロットモードでメンテナンス手順を実行する。
操作としては
applejack
と入力してenter、AppleJackが起動したらaキーを叩いてenter。
後は終わるまで待っていれば良い。
終わったら
r
と入力してenetrを叩くだけでシングルユーザモードから抜け出て再起動する。
この操作ではfsckとキャッシュファイル削除のプロセスが前の操作とダブるがキャッシュファイル削除に関しては二重のプロセスを実行しておいて損は無い。
自動化されたプロセスではいくつか漏れがあるようだからだ。
fsckは無駄だが、appears to be OKが出なかった時にプロセスを繰り返し実行しなくてはいけないので、この手順でやっている。
このオートパイロットのプロセスでアクセス権の補修、環境設定ファイルのシンタックスチェック、Swapfileの削除も実行される。
Swapfileは再起動するだけでもリセットされるのだが、定期的な大メンテナンスの時には完全に削除してから新規生成させるためにこのプロセスを実行している。
6)起動後ディスクユーティリティを起動してアクセス権の補修。
AppleJackとダブるプロセスだが、それでもキャッシュファイルを削除した後に実行することになるので結構補修が出る。
念のためにやっている作業だが。
7)Terminalを再び起動して
sudo update_prebinding -root /
と入力してenter。
実際のところTigerになってからjournalingのシステムが変わったようで、このプロセスは意味があるのかどうか私にもよく分からない。
このことについての技術的な説明もAppleは提示していない。
このコマンドを実行しても以前のようにはプロセスを表示しなくなったが、しかしわずかにプロセスが動いている様なので、意味があるかどうかは分からないが念のためにやっている。
8)ClamXavを起動して、メールのメッセージボックス、ダウンロードフォルダ、ドキュメンドフォルダ、デスクトップなどをウイルスチェックする。
本当はユーザ領域全体を指定して実行したいところだが、そんな大きな領域を指定するとこのアプリは落ちてしまうかスタックしてしまう。
なので小さな領域をちまちまやっていくしかない。
(06年末の段階でClamXavは非常に安定してきており、ユーザ領域全域を指定して一気にウイルススキャンをやっても大丈夫なようだ。大領域を指定するとそれなりに時間はかかるが、週に一回寝る前に実行しておけば安心だろう)
9)Youpi OptimizerかMonolingualを使って不要なローカライゼーションファイルを削除する。
ディスクの空きスペースを節約するために毎回これは実行している。
細かい話だが塵も積もれば山になるということで。
漏れが少ないという意味ではYoupi Optimizerの方がお薦め。
10)Terminalを起動してSpotlight検索のデータベースになっているメタデータファイルを初期化する。コマンドは
sudo mdutil -E /
となる。
このメタデータのメンテナンスは基本的には半年〜1年に1回程度の頻度で充分だと思われるが、Spotlightがなんとなく最新のファイルへの変更を反映していないと感じた時には実行する。
ちょっと長くなってしまったが、一応今私はこういうメンテナンス手順を実行している。
昔は週一回の小メンテナンス、45日ごとの大メンテナンスとか手順を変えていたが、もうそんなに頻繁にやる必要はない気がしているので、2ヶ月に一度程度大メンテナンスをする他は全く何もしない。
強制再起動をする必要が出た時だけ、事後のケアーとしてfsckくらいはやっている。
そんな程度なのであまりメンテナンスはこまめにやっているわけではない。
それでもこれまでのところ問題なく動いているので、こんなところで良いんじゃないかと思っているがもしご覧の皆さんの中で
「こんなメンテナンスもやっておくと良いよ」
という方がいらっしゃったら知恵を寄せてもらえばと思う。