Después de varias horas de esfuerzo, pensé en aportar mi experiencia. Tal vez ahorrará algo de tiempo a otras personas.
Macbook Pro
Mac OSX 10.7.5
iTunes 11.1.1
iphone 5, ios 7.0.2
En algún momento, no sé cuándo exactamente, tal vez después de instalar iTunes 11.0, la conexión USB dejó de funcionar. En un esfuerzo por rectificar este problema, entré en Configuración de red y eliminé la red USB del iPhone, pensando que podría volver a agregarla. No vayas. Realmente se había ido, y cuando hice clic en +, no pude agregarlo nuevamente.
El principal recurso que utilicé para esto está aquí:
https://discussionsjapan.apple.com/thread/10102167?start=15&tstart=0
Utilicé Google Translate para traducir la página. Básicamente, es una discusión más exhaustiva y persuasiva de los problemas relacionados con AppleUSBEthernetHost.kext que se discuten en otra parte.
Miré en /var/log/system.log y vi las señales reveladoras de que la conexión USB no iba a funcionar:
Com.apple.kextd [10] Error al cargar / System / Library / Extensions / AppleUSBEthernetHost.kext - error de enlace (libkern / kext). Com.apple.kextd [10] Cargar com.apple.driver.AppleUSBEthernetHost falló; eliminando personalidades. kernel kxld [com.apple.driver.AppleUSBEthernetHost] :. La superclase vtable 'vtable para IOEthernetController' para vtable 'vtable para AppleUSBEthernetHost' está desactualizada. Asegúrese de que su kext se haya creado con los encabezados correctos. El kernel no puede cargar kext com.apple.driver.AppleUSBEthernetHost: error en el enlace. Kernel Error al cargar el ejecutable para kext com.apple.driver.AppleUSBEthernetHost.
Esto fue después de instalar iTunes más reciente, que era 11.1.1. Examiné la versión.plist para AppleUSBEthernetHost.kext y vi 7.0, que parecía correcto. Tal vez no está construido correctamente para mi máquina. No lo sé.
Así que descargué esto: http://carlogent.com/KextUtilityFix.zip Incluye el antiguo v2.3.0 AppleUSBEthernetHost.kext, así como el KextUtil de cVad. Eliminé el antiguo AppleUSBEthernetHost.kext de / System / Library / Extensions y coloqué este, usando KextUtil. Esto no solucionó el problema. ¡Todavía!
Volví a buscar en el archivo system.log y vi mensajes sobre una caché del núcleo que no estaba sincronizada con los kexts reales. Entonces pensé: ¿cómo reconstruir el caché del núcleo?
Luego corrí sudo kextcache
(maldición, olvido el comando exacto) para reconstruir el caché desde la línea de comando.
Luego reiniciar.
En este punto, conecté el iPhone a través de USB y abrí la configuración de red. Pude + para agregar el iPhone USB que faltaba. Pero aún así esta conexión no estaba activa. Se leía "No conectado". Al examinar el archivo kernel.log, pude ver que el núcleo estaba detectando que el iphone estaba enchufado y desenchufado, repetidamente. Luego, nuevamente en el cuadro de diálogo Configuración de red, hice clic en el pequeño ícono de "candado" que evita más cambios. Voila El iPhone USB se convirtió en "Conectado", y todo comenzó a funcionar como se esperaba.
....