anchor
Mac使うならこれだけはやっておけというメンテナンスを省力化してやってしまう〜追記あり〜
Macの初心者が増えてきているので、Macを使うならこれだけはやっておけというメンテナンスについて。
といってもこの話題は過去に何度も取り上げていて、過去記事はOSのバージョンが古いといってもそんなに変化しているわけではない。
かつてとの違いといったら、Macユーザが最初に覚える金科玉条のターミナルコマンド、prebindingが最近のMacでは無効になっているとかビミョーに有ることはあるのだがそんなに変わらない。
過去記事参照・・・では終わってしまうので最近私がやっている手順を紹介する。
最近はすごく簡単に済ませているが、Macはすこぶる調子がいい。
簡単でいいと思うし、最近はGUIのアプリはMainMenuくらいしか使わなくて、ほぼコマンドだけでやってしまう。
Terminalのコマンドとかメンドクサそうだなと食わず嫌いになっている人もあるかもしれないが、実はこれは使い慣れるととっても便利。
いくつものメンテナンスメニューをほぼカーソルキーとEnterキーだけで実行できる。
ラクチンこの上ない。
そのこともおいおい解説する。
まず週一程度にやるメンテナンス
1)週1程度のメンテナンス
週に一回キャッシュのクリーンをやる。
キャッシュとはシステムやアプリがデータを次々処理する時に、そのデータの一部をファイルに書き出して一時置き場に保存すること。
何のためにそんなことをするかというとパソコンの作業は実は結構繰り返しが多いから。
その繰り返しの度に同じ演算をいちいち最初からやるよりも、前にやった結果をそのまま読み込んで表示した方が手っ取り早くて、高速化、リソースの節約になることがある。
イメージしやすい例はWebブラウザの「戻る」ボタン。
ホームページを表示している時に戻るボタンで前に表示したページに戻る時にいちいちWebに新しいデータの読み込みをリクエストするよりも、最近表示したページの履歴をディスクに保存しておいてそこから読み出した方がダウンロードのスピードにも制約されないし、レンダリングもある程度済んでいるものを表示する方が速いに決まっている。
同じダウンロードを繰り返さなくて済む分、バックグランドでやってる別のダウンロードスピードに影響も与えないので、パソコンが高速化したような効果を得られる。
キャッシュはわかりやすい例ではブラウザで利用されているが、実はブラウザだけでなく各種アプリやシステムそのものも利用している。
特にMacOSXはキャッシュに依存する比率が高いOSのように思う。
その仕組みのおかげでアプリやシステムは高速化して結構なのだが、デメリットもある。
ブラウザのメンテナンスで体験したことがある方も多いと思うが、Webブラウザは最初は結構高速なものも使っているうちに段々重く、遅くなってくることがある。
その時にブラウザのキャッシュクリーンをすると、ブラウザが劇的に速くなることもある。
これはキャッシュが溜まってくると、その読み出しでスキャンするだけで結構時間がかかったり、キャッシュデータそのものが壊れてしまい読み出しに失敗したりということが起こってくるからだ。
キャッシュをきれいに掃除してしまえばまた元にもどる。
キャッシュはあくまでキャッシュ、つまりデータの一時置き場だから消したからって何かがおかしくなるなんてこともない。
ブラウザは個別にキャッシュを消すメニューが用意されているが、システムも同じようにキャッシュが溜まってくると重くなってくるなどの問題を起こす。
ならブラウザとシステム、ユーザプロセスのキャッシュを全体的に掃除してしまおうということを、私の場合は週に一回程度やっている。
最近シェアウエアに移行したMainMenuを私はキャッシュクリアに愛用している
システム、全ユーザのキャッシュを全部消去するメニューと今ログインしているユーザの
キャッシュのみ削除するメニューが用意されているが週一メンテナンスでは後者で簡単に済ます
キャッシュクリーンは週一なら数分で済む
MainMenuはGrowlと連携しているので始めたら後は
放ったらかしでも終わったら知らせてくれる
他のことをやっていてもかまわないし別に再起動も必要ない
ということで週一メンテナンスは以上だ。
「えっ?それだけ??デフラグとかやらなくて良いの?」
とか思っているWindowsからのスイッチャーもいるかもしれないが、週一ならこれだけで充分。
補足するなら、ディスクに充分空き容量があるならディスクデフラグなんて一生やらなくてもいいと思う。
これだけではメンテナンスやってる気分が味わえない、もう少し「らしい」作業をやりたいという向きにはアクセス権の修復ぐらいをお勧めする。
キャッシュクリアとアクセス権の修正はつきものだからだが、別にゼヒモノでもない。
ただアクセス権の修復をやっておくとメモリの使用されていないが拘束されている領域が開放されて(なぜそうなるのか理由は知らないが)、メモリの空き容量が増えてSwapなどが増えるのを抑えることができるかもしれない。
あくまでこれも気が向いたらやるということでいいと思う。
週一メンテの時は同じくMainMenuを使って簡単にディスクアクセス権の修復をする
これはキャッシュクリアよりも少し時間がかかるかもしれないが
バックグランドでほったらかしでできる
ディスクアクセス権の修復はディスクユーティリティでやるアクセス権の修復と同じ
ここからやっても良い
2)月一程度のメンテナンス
月に一度くらいならもう少し深いメンテナンスをやってもいいと思う。
といっても
1)システム全域のキャッシュ削除、オールユーザのキャッシュ削除、フォントキャッシュ、DNSキャッシュ削除など各種キャッシュ削除
2)ディスク修復、アクセス権修復などディスクユーティリティコマンドの実行
という各種メニューを実行するくらいだ。
基本的な考え方は週一メニューと変わらない。
キャッシュクリアはやはりMainMenuを使ってやる
月一はシステム全域のキャッシュ、オールユーザのキャッシュ、フォントキャッシュ、
DNSキャッシュ、アーカイブログの削除などここのメニューを一通り実行しておく
これは完了したら再起動が必要
再起動が完了したらディスク、アクセス権の修復を一通り
ディスクユーティリティを使ってまったりやるのも良いが
私はTerminalを使って手っ取り早くやっている
まずはmountコマンドで起動ボリュームの名称を調べておく
いくつか見えると思うがhfs、local、journaledな
最初のディスクがおそらく起動ボリュームの筈だ
ディスクの修復はdiskutil repairDisk (さっき調べたボリューム名)というコマンド
ただし起動ボリュームは「使用中のためアンマウントできない」と怒られる
インストールディスクか外付けハードディスクの
システムなどから起動すればこのコマンドは実行できる
これは是非ものコマンドではないが調子が悪い時は効果絶大
ディスクユーティリティのディスク修復と同じ効果だ
別に調子悪くはないがチェックだけはしたいという場合は
diskutil verifyDisk (ボリューム名)というコマンドでもいい
これならアンマウントは必要ない
内容はfsckなどのファイルシステムチェックのメニューとほぼ同じで
下にプログレスが出るようになったのが進歩の証
アクセス権の修復はdiskutil repairPermissions (ボリューム名)というコマンドで実行
これも効果はディスクユーティリティのアクセス権の修復とほぼ同じ
修復されたアクセス権、修復に成功しなかったアクセス権は表示される
また下にはプログレスバーも表示される
CUIといっても最近はこんなに視覚的なのだ
完了するとFinished verify/repair permissionsという表示が出る
こうして月一回のメンテナンスではキャッシュの徹底的削除とディスク修復をやる。
ディスク修復はディスクユーティリティなどのGUIアプリを使えばできるのだが、Terminalを使うと便利なことがある。
Windowsのコマンドプロンプトではそういう振る舞いはないが、MacのTerminalは過去のコマンド履歴を憶えている。
なので一度これらのコマンドを実行しておけば、次回からはTerminalを起動したらカーソルキーの上キーを叩くだけで前回のセッションのコマンドを呼び出せる。
後はEnterキーを叩くだけ。
ということは最初にやった、mountコマンドで起動ボリュームの名前を調べるなんてのも2回目からはやらなくて良いということだ。
Terminalをクリックして起動、上キー、Enter、上キー、Enter、上キー、Enter、
というこれだけの操作でメンテナンスができる。
ラクチンだ。
そして月一のメンテナンスもこれだけだ。
簡単だ。
かつてMacユーザがなんとかの一つ覚えのようにやっていた
sudo update_prebindingのコマンドは最近のMacでは無効になっている
コマンドそのものがインストールされていないようだ
ジャーナリングの技術が進んできてもう必要なくなったということらしい
3)2〜3ヶ月に一回程度のメンテナンス
以下の手順を実行
1)MainMenuで月一の時と同じようにすべてのキャッシュを削除
2)コマンド+Sキーでシングルユーザモードに入ってfsck -fyコマンドでファイルシステムチェックと修復を実行
3)Applejackのオートナビゲーションで一通りのメニューを実行後rキーで再起動
4)上記Terminalを起動してディスク修復コマンドを実行しておく
5)MainMenuで
Launch Servicesのリビルド
Spotlightインデックスの再構築
Whatisデータベースアップデート
Locateデータベースアップデート
6)Terminalを起動してディスク全域の.DS_Storeファイルを削除する
これをやっておくと、アイコンが紙アイコンになったり化けたり、ファイルサイズが分からなくなったりのトラブルを解消できる。コマンドは
sudo find / -name ".DS_Store" -delete
などを実行しておく。
やっとメンテナンスらしくなったかな。
しかし、これは3ヶ月イチくらいでいいと思う。
プロダクションなどで1年も2年もメンテナンス無しで使い倒しているMacなんかも見かける。
「最近調子悪いんですよ」
なんて言っているが、さすがにそんなに長期間メンテナンスをしないで使い倒していたら調子悪くなるのが当たり前だと思う。
Windowsだって、LinuxだってMacだってデスクトップクライアントを起動しっ放してメンテナンスフリーで使えるなんてことはない。
以前自宅Mac miniを6ヶ月メンテナンスしないでほっておいたことがある。
その時はさすがにいろいろ問題が起きていたし、メンテナンスのプロセスも結構時間がかかった。
そこらが問題が出始めるリミットらしいから、その前に2〜3ヶ月に一回くらいこういう徹底的なことをやっておけばトラブル知らずでいけると思う。
キャッシュクリア後fsck -fyのコマンドでファイルシステムチェックと修復をやっておく
3ヶ月も使っているとノーエラーともいかなくなるのでOKが出るまで何度も実行
その後このApplejackを実行する
ダブっているメニューもあるが3ヶ月イチなので徹底的にやるという考え方で気長に
aキーを叩いてEnterするとすべてのメニューを自動で実行できる
再起動してGUIに戻ったら再びMainMenuで各種データベースなどの再構築をやっておく
これもトラブルの原因になったことはないのだがずっとやってないと問題を起こすかも
Spotlightのインデックスなんて古くなると壊れて
mdsの暴走を起こすのでそうなる前にリビルドだ
ディスク全域のすべてのフォルダに生成される.DS_Storeファイルを削除するコマンドを実行する
.DS_Storeファイルはウインドウサイズや背景色、アイコンの管理などの情報を管理していて
長い間使っているとこれが壊れてウインドウサイズを覚えてくれないとか
アイコンが全部紙アイコンに化けてしまうという不具合を起こす
実用に著しく差障るわけでもないが気分は悪いトラブルなので
予防のために3ヶ月イチくらいでこれをクリアして再生成させる
コマンドはsudo find / -name ".DS_Store" -delete
これはプログレスが何も表示されないがディスクコンタクトが
激しくなっていることで動いていることがわかる
次のコマンドプロンプト$マークが出たら完了した目印
2〜3「ディレクトリが見つからない」という表示を出すが正常な動作なので気にしなくていい
今回久しぶりにメンテナンスの手順をまとめてみた。
昔と比べてずっとシンプルになっていると思う。
基本使うのはMainMenuとTerminalとシングルユーザモードくらいのものだ。
頻度もここに書いたように「たまに」でいい。
神経質にやる必要はない。
Macが最近調子悪いという人はやってみてはどうだろうか。
<追記あり>
3ヶ月に一回やるメンテナンスで.DS_Storeの削除を忘れていた。
メンドクサイので素っ飛ばすことが多いために忘れていたわけではほとんどない。
他にも忘れていた手順を思い出したら何か追記するかもしれない。
2011年6月25日