Después de varias horas de esfuerzo, pensé en contribuir con mi experiencia. Tal vez le ahorre 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 borré la red USB del iPhone, pensando que podría volver a añadirla. No se puede. Realmente se había ido, y cuando hice clic en +, no pude volver a añadirlo.
El principal recurso que usé para esto está aquí: https://discussionsjapan.apple.com/thread/10102167?start=15&tstart=0
Usé Google Translate para traducir la página. Básicamente, es una discusión más completa y persuasiva de los problemas relacionados con AppleUSBEthernetHost.kext que se discuten en otros lugares.
Miré en /var/log/system.log y vi las señales de que la conexión USB no iba a funcionar:
Com.apple.kextd [10] Fallo en la carga / Sistema / Biblioteca / Extensiones / AppleUSBEthernetHost.kext - (libkern / kext) error de enlace. Com.apple.kextd [10] Cargar com.apple.driver.AppleUSBEthernetHost falló; eliminando personalidades. kernel kxld [com.apple.driver.AppleUSBEthernetHost]:. La super clase vtable 'vtable for IOEthernetController' para vtable 'vtable for AppleUSBEthernetHost' está desactualizada. Asegúrate de que tu teclado ha sido construido contra los encabezados correctos. El kernel no puede cargar el kext com.apple.driver.AppleUSBEthernetHost - el enlace falló. El kernel no pudo cargar el ejecutable para kext com.apple.driver.AppleUSBEthernetHost.
Esto fue después de instalar la última versión de iTunes, que era la 11.1.1. Examiné el version.plist para el AppleUSBEthernetHost.kext y vi el 7.0, que parecía correcto. Tal vez no está construido adecuadamente para mi máquina. No lo sé.
Así que descargué esto: http://carlogent.com/KextUtilityFix.zip Incluye el antiguo AppleUSBEthernetHost.kext v2.3.0, así como el KextUtil del cVad. Removí el viejo AppleUSBEthernetHost.kext de /System/Library/Extensions y dejé este, usando KextUtil. Esto no solucionó el problema. ¡Aún!
Volví a mirar en el archivo system.log y vi mensajes sobre una caché de kernel que no estaba sincronizada con los kexts reales. Así que pensé ¿cómo reconstruyo el caché del núcleo?
Entonces corrí sudo kextcache
(dang, olvido el comando exacto) para reconstruir el caché desde la línea de comando.
Entonces reinicie.
En este punto conecté el iphone vía USB, y abrí la configuración de la red. Pude + para añadir el Iphone USB que faltaba. Pero aún así esta conexión no estaba activa. Se leía "No conectado". Examinando el archivo kernel.log, pude ver que el kernel detectaba que el iphone estaba conectado y desconectado, repetidamente. Luego, en el cuadro de diálogo de configuración de la red, hice clic en el pequeño icono de "candado" que impide que se hagan más cambios. Voilà. El iphone USB se convirtió en "Conectado", y todo empezó a funcionar como se esperaba.
....