Lionをインストールしてから、Spotlightデータベースはインデックスの再作成を続けます(これには数時間かかります)。少なくとも2日おきにこれを行います。
Lionでこの問題を経験している他のユーザーはいますか(つまり、10.7.0のバグですか?)。そうでない場合、どのようにそれが原因であるかを診断することができます-コンソールに疑わしいエントリが表示されませんか?
スポットライトの履歴をリセットして再構築できるのは、知っておくといいでしょう。
Lionをインストールしてから、Spotlightデータベースはインデックスの再作成を続けます(これには数時間かかります)。少なくとも2日おきにこれを行います。
Lionでこの問題を経験している他のユーザーはいますか(つまり、10.7.0のバグですか?)。そうでない場合、どのようにそれが原因であるかを診断することができます-コンソールに疑わしいエントリが表示されませんか?
スポットライトの履歴をリセットして再構築できるのは、知っておくといいでしょう。
回答:
私も、Lionにアップグレードした後にインデックスの再作成の問題が発生しました。ただし、FileVault 1を使用していたユーザーだけでは、すべてのユーザーに問題は存在しませんでした。
数週間後、私はしまった以上イライラして走った...†
$ sudo mdutil -a -i off
…ターミナルで—同じ瞬間に、設定がシステム全体に適用されていることに気付きました。他のユーザーアカウントでのワークフローにとって非常に重要なため、Spotlightを再び有効にすることを決めた後、数時間のインデックス再作成なしのセッションをすくめて楽しんだ。そう:
$ sudo mdutil -a -i on
そして、私がそれに取り組んでいた間に、私は古いインデックスを消去し、新しいものを最初から再構築することを決めました:
$ sudo mdutil -aE
私はこれを約1か月前に行いましたが、それ以降「無駄な」インデックスの再作成は行われていません。問題を修正することは単なる偶然だったので、私は喜んで驚いています。
だから、あなたはそれをオフにして再びオンにしてみましたか?
†)-a
フラグはアクションをすべてのボリュームに適用しますが、 これはあなたが望むものではないかもしれません。実際、私も望んでいたものではありませんでしたが、私はこの問題について電撃戦を行いたかっただけです。
sudo rm -rfv /.Spotlight-V100
私はこれを理解しました。スポットライトプラグインの1つがエラーを引き起こしていましたが、コンソールログを詳しく調べて明らかにしました。
調べて、どのアプリが問題を引き起こしているかを見つけました
/Library/Logs/DiagnosticReports
そこで、mdworker(Spotlightのバックエンド)からいくつかのクラッシュレポートを見つけました。すべてのクラッシュは、同じアプリプラグインが原因で発生しました。システムからそのプラグインを削除しました。
新しい理論:システムドライブの空き容量は少なくなります。空き容量が数百MBになることもあります。OSはこの状況を検出すると、Spotlightインデックスを削除します。スペースを再び解放すると、インデックスを再構築する必要があります。
@koiyu、@TJ Luoma-あなたの両方の答えが組み合わさって、2010年後半のMacBook Air(SSD)が毎晩過熱してクラッシュしてしまった。
あなたの答えを私が呼んだスクリプトにまとめましたmdutil_rebuild.sh
。それを「whatever_name_you_like.sh」として保存し、でターミナルから実行しsh whatever_name_you_like.sh
ます。Fyi-私にとっては、マシンで〜130GBのインデックスを再構築するのに約7時間かかります。すべてのプロセッサを必要とするなら、一晩でやる価値があるかもしれません。
#!/bin/sh
# Force rebuild the spotlight index from scratch.
# Compiled on 12-14-2012 in response to runaway
# reindexing processes from answers by @koiyu
# and @TJ Luoma.
#
# Ask Different Question: http://bit.ly/SYTE1j
# Turn off spotlight.
sudo mdutil -a -i off
# Remove the index files.
sudo rm -rfv /.Spotlight-V100
# Turn on spotlight.
sudo mdutil -a -i on
# Reindex all mounted /Volumes
sudo mdutil -aE
この同じ問題を調査中に発見した2つのこと:
これらは、mdsおよびmdworker(Spotlightの背後にあるシステムプロセス)がトリップし、インデックスを完成できなかった理由の1つと思われます。(そして、謎の「lsboxdと通信できません」というメッセージを説明するかもしれません。)mdsとmdworkerは64ビットプロセスであるため、おそらく古い32ビットのSpotlightインポーターでは機能しません(システムに3つ見つかりました)。
あるかどうかを確認するには、Terminal.appを使用して次のコマンドを入力します。 mdimport -L
これにより、各Spotlightインポーターを見つけることができるパスのリストが表示されます(一部はサードパーティアプリケーションに埋め込まれています)。Finderの[フォルダに移動...]コマンドを使用して、各Spotlightインポーターの包含フォルダーを開きます。Finderで、それぞれの「情報を見る」で「(32ビット)」と表示されているかどうかを確認します。これらをゴミ箱に移動し、上記で提案したプロセスを試してみましたが、うまくいくようです。
これが、Spotlightが最終的に、上記および他の場所で提案されたプロセスを実行した後でも、以前の試行に含まれていなかった電子メールのインデックスを作成した理由です。Mail.appがメールボックスを再構築した後にのみ、Spotlightはそれらの場所から検索結果を返し始めました。
すぐに試せる2つの非常に単純なこと-私にとってこの種のSpotlightの悲しみをしばしば軽減します..
1:最初に、sudo killall mds
ターミナルからルートアクセスを取得している場合... これは「mds」プロセスを強制終了します。(メタデータサーチャー??)プラグイン、ファイル、その他何でもそもそもスポットライトが鳴り響きました。 今すぐ強制終了し、後でトラブルシューティングを行います。冗談です、私は孤児です。
または
2:より多くの歩行者向けのソリューションのために..スポットライトの設定を開き、a:インデックス化されていない「プライベート」アイテムを削除します。そしてb:ボリュームインデックスをリセットしたい場合..ブートドライブをそのリストに追加し、システム環境設定を閉じて再度開き、プライバシーリストから前述の「Macintosh HD」を削除します。これにより、ドライブのインデックスが再作成されます。オイ!