mds y mds_stores consumen constantemente cpu

mds y mds_stores son consumidores constantes de CPU incluso cuando creo que nada debería haber cambiado en el disco duro.

Monitor de actividad:

monitor de actividad

Tengo una Macbook Pro de alrededor de 2009 con mucho software instalado a lo largo de los años. Dropbox y Crashplan son procesos en segundo plano activos entre muchos otros.

He incluido muchas ubicaciones en la configuración de privacidad de Spotlight para excluirlas de su índice:

  • unidad USB
  • Carpeta Crashplan
  • /Library/Caches
  • /Users/me/Library/Caches

Aún así, mds y mds_stores son consumidores constantes de CPU que rondan el 10-12% cada uno. Mi ventilador sigue funcionando debido al calor.

¿Alguna idea de a qué se puede deber y cómo puedo solucionarlo?

Respuestas (15)

Como sabe, mds y mds_stores son actividades de Spotlight.

La razón por la que su Spotlight está tan activo podría deberse a varias cosas; podría ser que tenga una aplicación o varias aplicaciones que cambian constantemente el contenido de algunas carpetas.

Primero, verifiquemos si Spotlight es la causa de que los ventiladores funcionen tanto. Para probar esto, ejecuta lo siguiente en tu terminal:

sudo mdutil -a -i off

esto desactiva la indexación de archivos, y debería resultar en una clara ralentización de los ventiladores si mdsy/o mds_storesson los culpables.

Para volver a activar la indexación, ejecute

sudo mdutil -a -i on

Después de esto, puede ejecutar la reindexación completa de su disco duro (tenga en cuenta que esto podría ser un trabajo nocturno), eliminará su base de datos de Spotlight y lo obligará a comenzar de nuevo.

sudo rm -rf /System/Volumes/Data/.Spotlight-V100/*

El siguiente y último paso sería agregar otros a su configuración de privacidad (no escanear).

Me pregunto por qué Apple no aborda este problema de manera adecuada. Utilizar CPU por encima del 100% no debería ser un comportamiento de buen software. Mi MBP ya está sobrecalentado. :(
Esto es muy útil
Creo que en mi macOS 12.5.1 (Monterey) ese directorio es/System/Volumes/Data/.Spotlight-V100
Recibo el siguiente mensaje:2022-09-12 02:34:02.846 mdutil[5124:80955] Volume / is transitioning, waiting 5 seconds (try 2 of 15)
@iamcrypticcoder todo lo que significa "más del 100%" en sistemas tipo Unix es que se usa más de 1 núcleo de CPU en total. Un buen software debería superar ese límite cuando sea necesario. Por ejemplo, FFMPEG usa alrededor del 800 % de la CPU en mi máquina quadcore/hyperthreading al codificar un video, y eso es algo BUENO.

Es mejor encontrar directorios de alto volumen y omitirlos de la indexación usando Spotlight->Configuración de privacidad.

  1. En la llamada de terminal fs_usagepara enumerar los archivos indexados por mds_stores

    ~ sudo fs_usage -w -f filesys mds_stores

    0.000227 W Google Chrome He.789992
    12:13:46.660891    WrData[S]       D=0x03a7d92b  B=0x1000   /dev/disk1s1  /Users/XXX/Library/Caches/Google/Chrome/Default/Cache/73f8ce7b565cc7be_0                                                                        0.000297 W Google Chrome He.789992
    
  2. agregue esos directorios a la lista de exclusión en Preferencias del sistema → Spotlight → Privacidad
¡Gracias, fue realmente útil! Pero en mi sistema (High Sierra), tuve que reemplazarlo mds_storespara mdsobtener resultados útiles.
¡Me alegro de que haya ayudado!
¿Cómo se agregan rutas Librarya la lista de exclusión? No te permite agregar solo la ruta, tienes que elegirla
En cualquier cuadro de diálogo abierto, presione cmd-shift-dotpara mostrar los archivos ocultos y se mostrará la Biblioteca
No me queda claro cómo esto es útil... ¿debo suponer que todo lo que se genera a partir de este comando a menudo es algo que debo eliminar de la indexación? Si es así, ¿está pasando los resultados de este comando a un archivo de texto y luego está haciendo algo cutde uniq -cmagia, etc.? Por favor elabora. ¡Gracias!
@MikeWilliamson El comando generará archivos y carpetas que se indexan con frecuencia. Por lo general, serán archivos (caché o archivos fuente) que cambian con frecuencia pero que no es necesario indexar (es decir, accesibles a través de Spotlight). Por lo general, se agruparán en directorios particulares. Simplemente agregue los directorios principales a su lista de exclusión.
En Catalina, obtengo ktrace_start: Resource busycuando ejecuto la línea en tu respuesta
Actualización: reiniciar puede solucionar el problema de mds y también me permitió ejecutar la línea
Actualización 2: mds_stores volvió a iniciarse poco después del reinicio, así que estoy visitando este enlace para considerar, al menos, deshabilitar temporalmente Spotlight: macmetric.com/fix-mds_stores-Consuming-High-Cpu-Usage
@Phillip spotlight tiene valor; para mí, ayuda a reducir su alcance tanto como sea posible. solo indexe los directorios y tipos de archivos que necesite. ambos se pueden controlar con el panel de preferencias de privacidad. Y el descubrimiento de escaneos errantes se realiza utilizando el cmd que compartí anteriormente. (fs_uso)
@AnthonyMetzidis Había algo así como al menos cientos de ubicaciones en la lista, algunas de las cuales ni siquiera pude descubrir en Spotlight (como /dev/disk1, supongo que ocultas) cuando ejecuté sudo fs_usage -w -f filesys mds_stores. Todavía no he vuelto a habilitar Spotlight, pero aún he podido usarlo (lo que ya se ha indexado). Estoy seguro de que lo volveré a encender en algún momento. Nota al margen: puede que no sea causal, pero acababa de cambiar de estar conectado a Windows (Bootcamp) cuando noté el uso de CPU de mds_stores. Agregué la unidad Bootcamp para resaltar la privacidad, pero no ralentizó mds_stores.
Nota al margen, si es útil para alguien: para mostrar archivos/carpetas ocultos: mantenga presionado shift+ fn+ command+ .aunque eso no reveló la ubicación de /dev/disk1
@Phillip Things en /dev/no son archivos reales, son "dispositivos" a los que se hace referencia a través del identificador de archivo. Los disk*que son discos duros y particiones en discos duros (o algo así). En general, también puede ir a ubicaciones que pueden estar ocultas con shift++ en el cmdFinder g, pero aparentemente Finder /devya no puede acceder a ellas. Sin embargo, no creo que realmente esté indexando nada allí.
He tenido la carpeta "Soporte de aplicaciones" de mi usuario en la lista de exclusión durante algún tiempo, pero sudo fs_usage -w -f filesys mds_storescon frecuencia muestra archivos dentro de esta carpeta. ¿Significa esto que Spotlight está ignorando la configuración de exclusión?
Esto ayudará al rendimiento, pero puede afectar la indexación como el correo.
No estoy seguro: es posible que Spotlight aún esté probando archivos pero no indexando contenido
he visto el mismo comportamiento

Si tiene problemas cuando monte el disco duro externo. mira este artículo

Evite que Spotlight indexe una unidad externa

En mi caso, lo resolví creando .metadata_never_indexun archivo en la ruta raíz del disco duro externo.

$ touch /Volumes/ExternalHard/.metadata_never_index

Espero que ayude a alguien.

Solo para agregar un pequeño consejo además de la respuesta correcta de @Buscar웃: en mi caso, me di cuenta de que Spotlight en realidad estaba indexando las copias de seguridad de Time Machine (lo cual es realmente una estupidez de hacer en primer lugar). Para mí, esto explica la CPU constante en primer lugar: TimeMachine crea una copia de seguridad cada hora, Spotlight intenta indexarlo... Después de detener el servicio de indexación y eliminar los índices existentes como se indicó anteriormente, y antes de reiniciar la indexación, también excluyó los volúmenes de TimeMachine (abra el buscador, vaya --> vaya a la carpeta --> /Volúmenes, y luego arrastre el volumen de TimeMachine a la lista de exclusión de Spotlight). Dedos cruzados.

No me funciona en macOS 10.15.3. Recibo este mensaje ""Nombre del volumen" es una carpeta de copia de seguridad de Time Machine. No puede agregarla a la lista de privacidad".
sí, ¿cómo harás que esto funcione en osx 11.4?
TIL (de support.apple.com/en-gb/guide/mac-help/mchlp2811/mac ): "Si excluye un disco de respaldo de Time Machine, continúa recibiendo mensajes de que Spotlight lo está indexando. Esta indexación es necesaria para Time Machine funcione correctamente y no se pueda deshabilitar. Spotlight excluye de las búsquedas los elementos almacenados en el disco de copia de seguridad que no forman parte de una copia de seguridad de Time Machine".

Tengo el mismo problema, casi me compro una Mac nueva. Revisé todas las cosas en la red sobre mds_stores, etc. Todo lo que obtuve fue programación de terminales y soluciones de instalación limpias... sin garantías de solucionar el problema.

Así que revisé mi herramienta de limpieza y mantenimiento de descarga gratuita "Onyx" y en la barra de navegación en mantenimiento puedes marcar "Reconstrucción de Spotlight" (por defecto no está marcada).

Después de eso no tuve problemas y la velocidad volvió a la normalidad. Además, el Monitor de actividad se mantiene dentro de los parámetros normales. Espero que siga así y funcione. Porque es un consejo fácil y gratuito para usuarios de Mac sin conocimientos técnicos.

Lo descubrí hace una hora, pero parece prometedor. Buena suerte

Como mencionaron otras respuestas, la indexación de Spotlight es probablemente la causa de este problema. Si desea excluir carpetas o discos para que no se indexen mediante la interfaz de usuario (a partir de macOS 10.15 Catalina), puede agregarlos en Preferencias del sistema -> Spotlight -> Privacidad

Diálogo de preferencias del sistema

Diálogo de privacidad de Spotlight

Tuve el mismo problema. Entré en Preferencias del sistema de seguridad y privacidad , solo para ver qué incluía Spotlight. Marqué una cosa y luego la volví a encender e inmediatamente se detuvo. El mío estaba usando casi el 100% de la potencia de la CPU y mis ventiladores funcionaban sin parar. Todo se detuvo después de que hice esto y no tengo idea de por qué. Tengo un MacBook Pro de mediados de 2012.

La lista de carpetas incluidas/excluidas ahora se encuentra en su propia sección "Spotlight" en las preferencias del sistema, agregué algunas capturas de pantalla en mi respuesta apple.stackexchange.com/a/396680/131916

Esto me estaba volviendo loco, el Administrador de tareas estaba registrando operaciones de lectura de 50-500 mb/seg mientras la computadora estaba inactiva, y lo reduje a MDS.

tldr; Resumen de pasos:

  1. Agregue todas las carpetas (incluidas las ocultas) en Macintosh HD a la exclusión de Spotlight.
  2. Elimine la carpeta Aplicaciones y Usuarios, y cualquier otra cosa que necesite.

Estos fueron mis pasos para diagnosticar esto como el problema:

  1. Monitor de actividad abierto en estado estable, vea lecturas masivas por segundo. Verifique que MDS haya leído/escrito la mayor cantidad de bytes.
  2. Abrir Spotlight en Configuración
  3. Arrastre "Macintosh HD" a las exclusiones
  4. reiniciar computadora
  5. Abrir monitor de actividad
  6. Espere el estado estable, vea la lectura/seg hasta <100 kb (¡woohoo!).

Ahora la parte difícil: tiene que descubrir qué en "Macintosh Hd" está causando el problema y excluirlo.

  1. Volver a abrir la configuración de Spotlight
  2. Elimine cualquier exclusión que haya sido ruido al tratar de resolver esto, simplemente deje Macintosh HD y cualquier otro que sepa que podría causar problemas. A mi me dejo: Shared, System, Unreal Engine, VirtualBox VMs
  3. Haga clic en "+" para agregar una exclusión y acceda a Macintosh HD.
  4. IMPORTANTE: Escriba cmd+shift+. para mostrar las carpetas ocultas, que debería haber muchas.
  5. Seleccione todo (cmd+a) y luego "Aceptar". Podría obtener un par de errores, lo que parece estar bien.
  6. Espere el estado estable y vuelva a verificar <100 kb de lectura/seg.
  7. Elimine "Macintosh HD" de la lista con el botón (-).
  8. Espere el estado estable y <100 kb de lectura/s de nuevo. Esto tomó a mi computadora ~2 minutos, presumiblemente porque está indexando algunas de las carpetas que no estaban en la lista de exclusión debido a los errores. Presiona cmd+espacio para abrir Spotlight e ingresa un texto como "a". Tenga en cuenta que justo debajo de la barra de búsqueda, Spotlight tiene una barra de progreso que dice que está indexando, aunque solo consume <100 kb/seg de lectura (no es consistente, a veces tarda 5 minutos en aparecer incluso después de que comienza). No estoy seguro de lo que está pasando aquí, tal vez un montón de archivos muy pequeños, pero de todos modos espera a que termine. Una vez terminado, debería acercarse a casi 0 lecturas/seg.
  9. Elimine las carpetas agregadas una por una, repitiendo el proceso de esperar a que la barra de progreso y la lectura de disco por segundo lleguen a cero. Mis eliminaciones en orden fueron: Aplicaciones, Usuarios, Volúmenes, .vol, bin, etc., cores, tmp, Unreal Engine, VirtualBox, opt, Shared, sbin, etcétera. Tomó alrededor de una hora por carpeta agregada para volver a <100 kb/seg de lectura. ¡Disfrutar!

Estoy en Apple M1 y no tengo ningún disco duro externo conectado. Tengo una carpeta en el escritorio que incluye todos mis proyectos de NodeJS. Dado que es un directorio de trabajo y se siguen agregando/eliminando muchos archivos y carpetas, lo incluí en la lista para evitar que Spotlight lo busque:

Spotlight >> Privacidad >> Evite que Spotlight busque en estas ubicaciones

ingrese la descripción de la imagen aquí

Buena suerte...

FYI: Si bien esto evitará que los archivos de estos directorios aparezcan en los resultados destacados, desafortunadamente no impide que mds_stores escanee los directorios. Puede verificar esto usted mismo agregando un directorio a la pestaña de privacidad y luego, en la terminal o Finder, copie los archivos mientras ejecuta "sudo fs_usage -w -f filesys mds_stores" (como en la respuesta de AnthonyMetzidis): verá actividad. Menciono esto solo porque este hecho está un poco enterrado en las respuestas a la respuesta.

Después de probar todo lo que hay en la web y en los foros, y nada funcionó, un tipo inteligente (Lincoln Adams) en el foro de Apple con el mismo problema, hizo un descubrimiento alucinante: en su caso (y en el mío, y quizás en el tuyo), este fue causado por el botón/extensión de Pinterest en Firefox. Intente cerrar Firefox, reiniciar y usar otro navegador por un tiempo. El hilo en los foros de Apple

si se descubre al ejecutar el comando sudo mdutil -a -i off that spotlight está tratando de indexar una unidad conectada a USB de un Terabyte. Lo desconecté y reinicié la computadora.

Tuve este problema y persistió incluso después de deshabilitar la búsqueda de Spotlight. Aunque no tengo la extensión de pinterest mencionada anteriormente, descubrí que cerrar Firefox resolvió el problema.

Cuando cierra Spotlight haciendo clic fuera, conserva el texto que ingresó en el cuadro de texto. Eliminar el texto calmó el proceso. Mi consejo es hacer clic/tocar Escdos veces cuando haya terminado con Spotlight. El primer clic borra el cuadro de texto, el segundo cierra Spotlight.

Por lo que sé, ese número no es un uso basado al 100 %, es decir, que 11,9 y 9,6 no significan que ocupa el 11,9 % y el 9,6 % de toda la potencia de procesamiento de la CPU.

Para una CPU de doble núcleo, 10 en esa columna significa que usó solo el 10% de un núcleo, es decir, el 5% de toda la CPU.

Entonces, para una CPU de 8 núcleos, el uso del 100% de toda la CPU, el número que se muestra para un proceso debe ser 800 pero no 100.

Supongo que su Mac es una CPU de doble núcleo, 11.9 y 9.6 en total no cuestan tanto como pensaba.

Debería funcionar de la misma manera que el topcomando funciona en Linux

Dijiste: "He incluido muchas ubicaciones en la configuración de privacidad de Spotlight".
Debe incluir MENOS ubicaciones, no más. Si incluye más, eso significa que Spotlight se mantiene muy ocupado mirándolos a todos.
Puede ir fácilmente a Preferencias del sistema/Spotlight para anular la selección de muchas ubicaciones. Especialmente, anule la selección de Correo, motores de búsqueda y otras opciones dependientes de Internet.
Apague y reinicie después de cambiar sus preferencias de Spotlight.

Está equivocado, de hecho lo tiene al revés, dice el panel de privacidad de Spotlight, y cito: "Evite que Spotlight busque en estas ubicaciones", por lo que tener menos ubicaciones en privacidad hará que Spotlight se mantenga MÁS OCUPADO. Tener más ubicaciones sin marcar en el panel Resultados de la búsqueda hará lo que dice, pero cuanto más coloque en el panel de privacidad, menos foco buscará.
Sí, en realidad es un consejo bastante malo. Cualquier cosa que no desee escanear debe estar en Privacidad.
En realidad es una mezcla. Entiendo su confusión. En la Search Resultspestaña, debemos seleccionar menos categorías para incluir. en la Privacypestaña, necesitamos agregar más para la exclusión.