ORIZUME - オリズメ

3372.Spotlightが死んだ。インデックス再構築で直らない時、コンソールでLauch ServiceがDatabaseエラーを起こしていた時、やる作業は「Launch Sercice Databaseの再構築」。

0

前回のブログは2017.5.30。
ほぼ1年前から、報道比較しか発信できないような状況でした。
2017から2018に切り替わるあたりからは、一時期、デイリーのはずの投稿も滞りました。
ネタはあるんですが、本業のITサービスの開発が、ずっととっちらかってまして…
ようやく落ち着きを見せつつあるので、昨日、解決してすっきりしたMacの修復ネタを、久しぶりに書いてみます。

ひさしぶりで、ブログにするつもりがないほど焦っていたので、的確なスクリーンショットがありません。
すみません。

トラブルは、Spotlightが死んだこと。インデックス再構築で直らない時、コンソールでlauch serviceがDatabaseエラーを起こしていた時、ここに書いてあるやり方が適切です。やる作業は「Launch Sercice Databaseの再構築」です。
答えは、ここで見つけました。Appleの公式コミュニティです。

Spotlight fails to index on macOS High Sierra

徐々にSpotlightがおかしくなって、最後にはローカルの検索がワークせず。原因はインデックス再構築にあらず

3日ほど前です。開発がモーレツに盛り上がっている時に、同じ名前のファイルを探している時に、あれ?とSpotlightがおかしいことに気づきました。どれだけ検索してもひっかからない。よほど他のプロセスが重いのだろうと放置して、翌日。

作業別に設定しているFinderの「タグ」から、いくつかのファイルが消えました。
異常に気づき、Spotlightのインデックスを再作成。
このあたりのトピックは、Googleで検索してもいくらでも出てきます。

Mac で Spotlight のインデックスを再作成する方法 by Apple公式サポート

直るつもりが、直らず。
うまく機能していない?と思ってコマンドでもやってみました。

Spotlightのインデックスを制御する(mdutil) by Life with IT

変わらず。むむ。

Spotlightに依存していたことに気づき、本気で修復を目指すが…同一症状が見当たらず

「いいや、忙しいし。開発できるでしょ?」と思ってやってみましたが、生産効率がサイアクに。
すでにSpotlightの恩恵を随所に受けていることに気づき、本気で直そうと決意。
いろいろ似た症状を探してみましたが、見つからず。
詳細に判りやすいブログはたくさん発見しました。
今回はお世話になりませんでしたが、有益なのでログ。

MacのSpotlightが働かなくなったので復旧 by 景観デザインを目指せ

Spotlight が使えなくなった! by Ari’s Blog

何度もSpotlightのインデックスを作るんですが、どーもIndex生成にかかる時間が短過ぎる?という気が。
ついに「最近使った項目(一時期「マイファイル」という名になった、便利なような不便なようなヤツ)」が空っぽに。ありゃ。重症だな…
これ、インデックス作ってないね?
だが、アクティビティモニタではmdsもmdworkerも動いてる…?

ログが「mds LaunchServices: Database mapping failed with result -10813」と。光が見えた。

コンソールでログを見るとmdsがモーレツにエラーを。
LaunchServices: Database mapping failed with result -10813

あ、これだ。
探して見つけたのが、今回の結論のこれ。

Spotlight fails to index on macOS High Sierra

「Lauch Service Databaseを再構築」でした。

sudo /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain u -domain s -domain l -v

英語で調べれば一発だったのかな?
このコマンドで、一撃で大量の「lsregister: error -10811 registering { application name }」エラーの処理が終わり、改めてSpotlightインデックス再構築

sudo mdutil -i on /
sudo mdutil -E /

で、ようやく復旧。約2日ロスしました。

何かのお役に立てば。
時間があったら、来週のWWDCにむけて、書こうかな。

So, what do you think ?