Mientras investigaba un disco con un espacio libre cada vez más reducido y una CPU asignada a > 100%, finalmente determiné que el problema era mdworker
repetidamente en segfaulting, manteniendo syslogd y CrashReporter muy ocupados.
Intenté reconstruir los índices de Spotlight de la forma habitual: primero, a través de la pestaña Privacidad en Preferencias del sistema - > Spotlight, luego a través de mdworker -i off / ; mdworker -E -i on /
, y lo mismo otra vez, pero con un rm -rf /.Spotlight-V100
intermedio y reinicio para una buena medida; Nada parecía resolver el problema.
Usando la pestaña Privacidad para excluir casi todo, excepto /Applications/
, y luego agregar / eliminar esta carpeta para forzar una nueva exploración, y pude determinar que algunos archivos se están indexando correctamente (y aparecen en Spotlight resultados) pero algunos no lo son; un poco más de curiosear con opensnoop -n mdworker
revela que cuando mdworker
se inicia con UID 501, para analizar los archivos de la Aplicación que tengo, funciona bien (y lo mismo para algunos otros UID que poseen archivos en /Applications/
), pero cuando se inicia con UID 89 ( _spotlight
, de acuerdo con dscl . -list /Users UniqueID
), probablemente para escanear archivos que son propiedad de la raíz, segfaults.
Aquí hay una entrada de ejemplo de la consola:
2015-07-16 13:53:25 com.apple.launchd[1] (0x100101670.mach_init.mdworker[13276]) Job appears to have crashed: Segmentation fault
2015-07-16 13:53:25 com.apple.ReportCrash.Root[13274] 2015-07-16 13:53:25.326 ReportCrash[13274:341b] Saved crash report for mdworker[13276] version ??? (???) to /Library/Logs/DiagnosticReports/mdworker_2015-07-16-135325-1_localhost.crash
Y aquí hay un extracto del informe del fallo (todos son casi idénticos):
Process: mdworker [13276]
Path: /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Support/mdworker
Identifier: mdworker
Version: ??? (???)
Code Type: X86-64 (Native)
Parent Process: launchd [1]
Date/Time: 2015-07-16 13:53:25.085 +0100
OS Version: Mac OS X 10.6.8 (10K549)
Report Version: 6
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x000000010f5d1062
Crashed Thread: 3
[...]
Thread 3 Crashed:
0 ...ple.CoreServices.CarbonCore 0x00007fff867e7f0b CSStoreGetUnit + 84
1 com.apple.LaunchServices 0x00007fff821721ab _LSContainerCheckState + 65
2 com.apple.LaunchServices 0x00007fff82188fea _LSCopyLibraryItemURLs + 419
3 mdworker 0x0000000100004305 0x100000000 + 17157
4 mdworker 0x0000000100004c22 0x100000000 + 19490
5 mdworker 0x00000001000050f3 0x100000000 + 20723
6 mdworker 0x0000000100009aa2 0x100000000 + 39586
7 libSystem.B.dylib 0x00007fff80b94fd6 _pthread_start + 331
8 libSystem.B.dylib 0x00007fff80b94e89 thread_start + 13
[...]
Estoy razonablemente seguro de que esto no se debe a los contenidos de los archivos que intenta escanear, ya que deben escanearse en /Applications/
, y opensnoop
no informa que toque ninguno archivos allí (de hecho, la lista de archivos abiertos para cada instancia de UID 89 en caída es idéntica, AFAICT).
Es posible que este problema esté relacionado con los problemas que he tenido con Time Machine, que se inició aproximadamente al mismo tiempo: backupd
también produce un error inesperado, no instantáneamente al inicio, pero en el proceso de montaje de la copia de seguridad de mi NAS volumen. Aquí hay un extracto de un informe de fallo de backupd:
Thread 5 Crashed:
0 ...ple.CoreServices.CarbonCore 0x00007fff867e7f0b CSStoreGetUnit + 84
1 com.apple.LaunchServices 0x00007fff8217f3fb _LSBundleFindWithNode + 544
2 com.apple.LaunchServices 0x00007fff82177bd1 _LSFindOrRegisterBundleNode + 219
3 com.apple.LaunchServices 0x00007fff82177a85 _LSCopyItemAttributeForRefInfoWithOptions + 201
4 com.apple.LaunchServices 0x00007fff821799cf prepareAttributeValueForKey(__CFURL const*, __FileCache*, __CFString const*, void const**, __CFError**) + 79
5 com.apple.LaunchServices 0x00007fff82179934 prepareDistinctLocalizedNameValue(__CFURL const*, __FileCache*, __CFError**) + 36
6 com.apple.LaunchServices 0x00007fff8217990b prepareLocalizedNameValue(__CFURL const*, __FileCache*, __CFError**) + 9
7 com.apple.LaunchServices 0x00007fff82179712 LSPropertyProviderPrepareValues(__CFURL const*, __FileCache*, __CFString const* const*, void const**, long, void const*, __CFError**) + 51
8 ...ple.CoreServices.CarbonCore 0x00007fff867f8dd4 prepareValuesForBitmap(__CFURL const*, __FileCache*, _FilePropertyBitmap*, __CFError**) + 264
9 ...ple.CoreServices.CarbonCore 0x00007fff867f78bd _FSURLCopyResourcePropertiesForKeys + 980
10 com.apple.CoreFoundation 0x00007fff897dc562 CFURLCopyResourcePropertiesForKeys + 98
11 com.apple.DesktopServices 0x00007fff833737af TCFURLInfo::FetchProperties(bool) + 91
12 com.apple.DesktopServices 0x00007fff8337358f TCFURLInfo::Initialize(__CFURL const*, bool, bool) + 183
13 com.apple.DesktopServices 0x00007fff833d1acd TCFURLInfo::Initialize(char const*, unsigned int) + 89
14 com.apple.DesktopServices 0x00007fff833d369c TCFURLInfo::CreateDirectory(TUString const&, TUniqueNamer*, __FSFileSecurity*, bool, TCountedPtr<TCFURLInfo>&) const + 464
15 com.apple.DesktopServices 0x00007fff833dc95a TCopyWriter::CreateNewDestinationItem() + 178
16 com.apple.DesktopServices 0x00007fff833dd136 TCopyWriter::CreateItem() + 1126
17 com.apple.DesktopServices 0x00007fff833dd41e TCopyWriter::Write() + 146
18 com.apple.DesktopServices 0x00007fff833dd6a6 TCopyWriter::WriteTaskProc(void*) + 72
19 ...ple.CoreServices.CarbonCore 0x00007fff867e40d1 PrivateMPEntryPoint + 63
20 libSystem.B.dylib 0x00007fff80b94fd6 _pthread_start + 331
21 libSystem.B.dylib 0x00007fff80b94e89 thread_start + 13
He utilizado la Utilidad de Disco para (en vivo) verificar el volumen y reparar los permisos. He intentado volver a instalar el 10.6.8 Combo Update 1.1 y la actualización complementaria.
¿Qué podría estar causando estos bloqueos y cómo puedo solucionarlo?