「MacOSでSpotlightの検索インデックスの作成を停止する」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
 
2行目: 2行目:
 
[[Spotlight]]は検索のたびにすべての[[ファイル]]の内容を調べるのではなく、あらかじめ[[ファイル]]の情報や内容を調べておいてその情報の索引を作成する。そして検索が実行された際にはその索引を参照して高速に結果を返す。
 
[[Spotlight]]は検索のたびにすべての[[ファイル]]の内容を調べるのではなく、あらかじめ[[ファイル]]の情報や内容を調べておいてその情報の索引を作成する。そして検索が実行された際にはその索引を参照して高速に結果を返す。
  
だが、地味にこの索引作成という処理は重い。さらに言えば[[SDカード]]などからデジカメ写真などを一気に何百[[GB]]もコピーすると、[[メモリ]]を何十[[GB]]も消費し、大量の[[スワップメモリ]]を張りまくりながら処理するという、ほぼ[[不具合]]的な挙動をする。古い[[Mac OS X]]では画像ファイルには索引を作りにいかなかったためか問題なかったが、[[Mavericks]]および[[Yosemite]]以降ではこの問題が顕著化しており、[[Mac]]をファイルサーバーとして使っている場合はスワップメモリの影響で反応がまったくなくなり[[OS]]のフリーズに近い状態に陥る<ref>http://apple.stackexchange.com/questions/143002/what-is-mdflagwriter-and-why-does-it-eat-up-so-much-ram</ref><ref>https://discussions.apple.com/thread/5483185?start=15&tstart=0</ref>。
+
だが、地味にこの索引作成という処理は重い。さらに言えば[[SDカード]]などからデジカメ写真などを一気に何百[[GB]]もコピーすると、[[メモリ]]を何十[[GB]]も消費し、大量の[[スワップメモリ]]を張りまくりながら処理するという、ほぼ[[不具合]]的な挙動をする。
 +
 
 +
古い[[Mac OS X]]では画像ファイルには索引を作りにいかなかったためか問題なかったが、[[Mavericks]]および[[Yosemite]]以降ではこの問題が顕著化しており、[[Mac]]を[[ファイルサーバー]]として使っている場合は[[スワップメモリ]]の影響で反応がまったくなくなり[[OS]]のフリーズに近い状態に陥る<ref>http://apple.stackexchange.com/questions/143002/what-is-mdflagwriter-and-why-does-it-eat-up-so-much-ram</ref><ref>https://discussions.apple.com/thread/5483185?start=15&tstart=0</ref>。
  
 
通常でもこの作業を停止すれば索引作成が発生しない分だけ高速化できることになる。
 
通常でもこの作業を停止すれば索引作成が発生しない分だけ高速化できることになる。

2022年5月20日 (金) 05:08時点における最新版

概要[編集 | ソースを編集]

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

だが、地味にこの索引作成という処理は重い。さらに言えばSDカードなどからデジカメ写真などを一気に何百GBもコピーすると、メモリを何十GBも消費し、大量のスワップメモリを張りまくりながら処理するという、ほぼ不具合的な挙動をする。

古いMac OS Xでは画像ファイルには索引を作りにいかなかったためか問題なかったが、MavericksおよびYosemite以降ではこの問題が顕著化しており、Macファイルサーバーとして使っている場合はスワップメモリの影響で反応がまったくなくなりOSのフリーズに近い状態に陥る[1][2]

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

方法[編集 | ソースを編集]

起動ディスクの索引作成を停止する[編集 | ソースを編集]

起動ディスクの索引の作成を停止する

sudo mdutil -i off /

外付けディスクの索引作成を停止する[編集 | ソースを編集]

外付けハードディスクやUSBメモリなどの起動ディスク以外を停止するには以下のようにする。 Mac OS Xではストレージは一律で「/Volumesディレクトリ」の中のサブディレクトリとしてマウントされる。

sudo mdutil -i off "/Volumes/USB32GB/"

すべてのディスクの索引作成を停止する[編集 | ソースを編集]

sudo mdutil -a -i off

なお、BootCampのボリュームなど、Mac OS Xが書き込めないボリュームに対してコマンドを実行するとエラーが出る。

索引作成を開始する[編集 | ソースを編集]

前述のコマンドの「off」を「on」に書き換える。 索引作成を再開するとしばらくSpotlightが使用できなくなる。また高負荷状態になりMacそのものも利用が難しくなることもある。

関連項目[編集 | ソースを編集]

参考文献[編集 | ソースを編集]