MacOSでSpotlightの検索インデックスの作成を停止する

提供: MonoBook
2015年3月10日 (火) 23:39時点における111.188.32.94 (トーク)による版 (→‎概要)
ナビゲーションに移動 検索に移動

概要

Spotlightは検索のたびにすべてのファイルの内容を調べるのではなく、あらかじめファイルの情報や内容を調べておいてその情報の索引を作成する。そして検索が実行された際にはその索引を参照して高速に結果を返す。

だが、地味にこの索引作成という処理は非常に重い。さらに言えばSDカードなどからデジカメ写真などを一気に何百GBもコピーすると、メモリを何十GBも消費し、大量のスワップメモリを張りまくりながら処理するという、ほぼ不具合的な動作をする。古いMac OS Xでは画像ファイルには索引を作りにいかなかったためか問題なかったが、MavericksおよびYosemite以降ではこの問題が顕著化しており、Macをファイルサーバーとして使っている場合はスワップメモリの影響で反応がまったくなくなりOSのフリーズに近い状態に陥る[1][2]

通常でもこの作業を停止すればその分だけ高速化できることになる。 また、Spotlightの調子が悪い時に、時的に機能を停止して再度開始することによりSpotlightが正常化する場合がある。

方法

「起動ディスク(Macintosh HDなど)」→「アプリケーション」→「ユーティリティ」と移動し「ターミナル」を起動します。 例として、起動ディスクの索引を作成するのを停止します。ターミナルに以下のように入力します。最後のスラッシュに注意してください。

sudo mdutil -i off /

パスワードを求められるので、入力します。 これで、起動ディスクの索引の作成が停止されます。 また、外部のハードディスクなど、起動ディスク以外のボリュームを停止するには以下のようにします。例として「Buckup HD」という外付けハードディスクの索引を作成を停止します。

sudo mdutil -i off "/Volumes/Buckup HD/"

すべてのディスクの索引作成を同時に停止するには以下のように入力します。

sudo mdutil -a -i off

なお、BootCampのボリュームなど、Mac OSが書き込めないボリュームに対してコマンドを実行するとエラーが出ますので注意してください。 検索インデックスの作成を開始する方法

元に戻すには「off」を「on」に書き換えて入力します。 起動ディスクの索引作成を再開するには以下のように入力します。

sudo mdutil -i on /

「Buckup HD」という外付けハードディスクの索引作成を開始するには以下のように入力します。

sudo mdutil -i on "/Volumes/Buckup HD/"

すべてのディスクの索引作成を開始するには以下のように入力します。

sudo mdutil -a -i on

索引作成を再開すると下のように検索索引を作成し始め、しばらくSpotlightが使用できなくなります。