Corriger mds et mdworker qui saturent le CPU
Les processus nommés mds, mds_stores ou mdworker appartiennent à l'indexation
des métadonnées et à la recherche Spotlight. Une poussée après une mise à jour, une
migration, une restauration ou un gros changement de fichiers est normale, mais
mdutil -s seul ne peut pas vous indiquer qu'une reconstruction est en cours, et
aucune durée fixe d'une heure ne s'applique. Diagnostiquez le déclencheur et la
progression avant de reconstruire l'index ou d'exclure des données.
Ce que sont mds et mdworker
Il s'agit du moteur d'indexation Spotlight. mds (serveur de métadonnées) coordonne l'index, mds_stores gère la base de données, et les processus mdworker effectuent le scan réel des fichiers pour que leur contenu et leurs métadonnées deviennent recherchables. Lorsque l'index est à jour, ils restent au repos. Quand quelque chose le rend obsolète, ils se réveillent et parcourent vos fichiers : c'est le CPU que vous observez.
Pourquoi ça s'emballe
Spotlight réindexe lorsque beaucoup de fichiers changent d'un coup :
- Après une mise à jour ou une migration macOS, quand de larges parties du disque sont nouvelles.
- Après le déplacement ou la copie d'un grand volume de données, par exemple une restauration de fichiers ou le clonage d'un disque.
- Après le branchement d'un volume externe ou réseau qui n'a pas encore été indexé.
- Quand un dossier plein de fichiers change rapidement, comme à la fin d'un gros téléchargement.
Vérifiez si l'indexation est activée :
mdutil -s /
« Indexing enabled » est l'état normal, pas un rapport de progression. Corrélez un CPU
soutenu de mdworker avec l'activité disque du Moniteur d'activité et les
changements de fichiers récents. Si le travail avance, laissez le Mac sous tension et
laissez-le terminer. Les grands arborescences sources, les boîtes mail, les volumes
externes, le stockage lent et les synchronisations qui se répètent peuvent prolonger
la tâche.
Quand ça ne se calme pas
Si l'activité ne se calme jamais, arrêtez d'abord l'app qui réécrit des fichiers et débranchez un volume externe suspect. Exclure un dossier dans Réglages Système > Spotlight > Confidentialité de la recherche réduit le coût d'indexation au prix de la perte des résultats Spotlight dans ce dossier. Réservez-le aux arborescences de build générées, aux disques virtuels ou aux archives que vous ne recherchez vraiment jamais, pas comme exclusion générale pour le dossier de départ ou le disque de démarrage.
Lorsque des résultats de recherche manquent ou que l'index est clairement bloqué, Apple documente une reconstruction via la même liste de confidentialité : ajoutez le disque ou le dossier concerné, attendez un instant, puis retirez-le. Le guide de reconstruction Spotlight actuel nomme le bouton Confidentialité de la recherche ou Confidentialité Spotlight, selon la version de macOS. Spotlight réindexe l'élément après que vous l'avez retiré de la liste. Une reconstruction répète volontairement un travail coûteux : c'est une étape de réparation, pas la première réponse à une activité CPU ordinaire.
Sous le capot : l'index, et ce qui force une reconstruction
Spotlight maintient un index inversé, une carte des mots et métadonnées vers les
fichiers qui les contiennent, dans un magasin caché .Spotlight-V100 sur chaque
volume. Lorsqu'un fichier change, le mécanisme FSEvents du noyau notifie mds, qui
passe le fichier à un mdworker, lequel charge le plugin d'import correspondant
(.mdimporter) pour ce type de fichier afin d'en extraire le texte et les
métadonnées. Une modification ordinaire est peu coûteuse. Une reconstruction complète
l'est, car les fichiers éligibles doivent être réimportés. Certaines mises à jour,
migrations et restaurations déclenchent une réindexation importante, mais la portée
varie. Les exclusions de confidentialité ne réduisent le travail qu'en renonçant à la
recherche pour cette sous-arborescence : c'est pourquoi elles doivent rester étroites
et intentionnelles.
Où un moniteur aide
Le Moniteur d'activité ou la vue Status de Mole peuvent identifier Spotlight comme responsable du CPU et du disque. La question plus difficile est de savoir si ce travail vient d'un changement fini ou d'un dossier qui ne cesse de changer. L'activité récente et une isolation contrôlée y répondent ; forcer la fermeture d'un worker, non.
Un diagnostic reproductible
Confirmez que l'indexation est activée, corrélez le CPU avec l'activité disque et les changements de fichiers récents, et attendez lorsque la progression est plausible. Isolez un dossier ou un volume qui change en boucle lorsque l'activité persiste. N'excluez que les données que vous n'avez pas besoin de rechercher ; reconstruisez via Confidentialité de la recherche uniquement lorsque les résultats ou le comportement de l'index le rendent nécessaire. Ne tuez pas les workers comme stratégie de nettoyage.