Macを使っていて、アプリや書類などをSpotlight検索する際、
「ファイルは絶対の絶対に存在しているのに検索結果に表示されない!」
…という時の解決方法の解説です。
原因は、「Spotlightのインデックスの不具合」で、このインデックスを再構築すると問題は解決します。
また、Spotlightを検索する時に、「索引作成中…」と、いつになっても終わらない時にも有効です。
解決法は、「ターミナルから行う方法」と、「Spotlight設定から行う方法の2種類あります。
本体:iMac 2017(Retina 5K, 27inch)
OS:macOS Monterey(12.1)
解決方法1:ターミナルからコマンドを入力する方法
- STEP.1ターミナルを起動する。
- STEP.2一旦、Spotlightのインデックス化を停止する。以下のコマンドを入力します。
sudo mdutil -a -i off /
パスワードを求められるので、ユーザのパスワードを入力します。
その後、
2022-02-18 11:17:43.979 mdutil[17949:20916933] mdutil disabling Spotlight: / -> kMDConfigSearchLevelFSSearchOnly
…的なメッセージが表示されるので、しばらく待ちます。
(数秒かもしれないし、数分かもしれません。)
ターミナルに、「Indexing enabled.」と表示すれば次のステップに進みます。
- STEP.4Spotlightのインデックス化を始める。以下のコマンドを入力します。
sudo mdutil -a -i on /
パスワードを聞かれるので、ユーザパスワードを入力します。
(キーを入力しても文字は表示されませんが、それでOKです)同じく、「Indexing enabled.」と表示されれば、作業完了です。
これで索引の再構築が行われます。
しばらくしたらSpotlightで検索をかけてみてください。検索結果に表示されるはずです。
(ファイル数が多い場合は、そこそこ時間がかかります。)
因みに、mdutilコマンドのオプションはこのようになっています。
Usage: mdutil -pEsa -i (on|off) -d volume ... mdutil -t {volume-path | deviceid} fileid Utility to manage Spotlight indexes. -i (on|off) Turn indexing on or off. -d Disable Spotlight activity for volume (re-enable using -i on). -E Erase and rebuild index. -s Print indexing status. -a Apply command to all stores on all volumes. -t Resolve files from file id with an optional volume path or device id. -p Publish metadata. -V vol Apply command to all stores on the specified volume. -v Display verbose information. -r plugins Ask the server to reimport files for UTIs claimed by the listed plugin. -L volume-path List the directory contents of the Spotlight index on the specified volume. -P volume-path Dump the VolumeConfig.plist for the specified volume. -X volume-path Remove the Spotlight index directory on the specified volume. Does not disable indexing. Spotlight will reevaluate volume when it is unmounted and remounted, the machine is rebooted, or an explicit index command such as 'mdutil -i' or 'mdutil -E' is run for the volume. NOTE: Run as owner for network homes, otherwise run as root.
解決方法2:Spotlight設定から操作する方法
一旦、Spotlightの検索除外対象にするフリして、すぐに除外します。
ボリューム(HDDやSSD)が複数ある場合は、その数だけ繰り返します。
- STEP.1システム環境設定アップルメニュー()から「システム環境設定」を選択します。
- STEP.2Spotlightを選択する。
- STEP.3「プライバシー」タブをクリックする。
- STEP.4インデックスを再構築するディスクをドラッグして持ってくる。ディスクトップにあるディスクを、「Spotlightの検索から除外する場所:」の下の枠へドラッグ&ドロップします。
警告が表示されますが、次のステップですぐ解除するので、ここはかまわず「OK」をクリック。
ディスクが複数ある場合は、このステップを繰り返します。
- STEP.5「Spotlightの検索から除外」から削除します。対象ディスクを選択後、「-」ボタンを押す。
ディスクが複数ある場合は、まとめて消すこともできます。
以上で設定完了です。
これで、インデックスの再構築が完了です。
最後に
以上が、
- どう見てもファイルが存在しているのに、いざ検索するとSpotlightに「そのファイルはないよ」って言われて困った時。
- Spotlightの索引作成がいつになっても終わらない時。
- 検索インデックスを再構築したい時
…の解決方法でした。
コメント
この不具合に悩んでいましたが、ターミナルのコマンドで解決できました!
記事にしてくださり、ありがとうございました。