El uso de locate.updatedb no funciona en Lion

Hace una semana actualicé a Lion desde Snow Leopard. Quiero usar el comando de localización, pero la base de datos de localización aún no se ha creado. Así que traté de correr

sudo launchctl -w /System/Library/LaunchDaemons/com.apple.locate.plist

El archivo plist solo apunta a /usr/libexec/locate.updatedb y sigo recibiendo el siguiente error en syslog. su: pam_acct_mgmt: error in service module
Cuando intento ejecutar locate.updatedb directamente, aparece el mismo error en syslog.

Podría manejar no usar la localización, pero lo que más me molesta es que no sé qué está causando el problema.

1) Asumo que ha reiniciado y que la cuenta en cuestión es una cuenta de 'administrador'. 2) Asumiendo el n. ° 1, ¿puede usar 'sudo' para otros comandos, como 'sudo id'? 3) 'localizar' es mucho menos útil en Lion, ya que incluso cuando se ejecuta por root solo encuentra archivos 'públicos'.
He reiniciado, mi cuenta está en el grupo de administración y sudo funciona como se esperaba (es decir, sudo id devuelve la identidad de usuario raíz). Sé que localizar es menos útil que, por ejemplo, en Linux, simplemente no me gusta que no funcione. Como hice una actualización y no una instalación limpia, no quiero más sorpresas en el futuro.
Soy quien editó su texto y quien simplemente eliminó la "edición" ya que no es relevante para la pregunta. Si se pregunta por qué puedo hacer eso, lea las preguntas frecuentes . Perdón por el error ortográfico que cometí.

Respuestas (4)

La depuración de pam puede ser complicada.

¿Ha intentado crear un shell raíz real sudo -sy ejecutar el /usr/libexec/locate.updatedbcomando?

Alternativamente, puede intentar crear una nueva cuenta de administrador para asegurarse de que su cuenta de administrador tenga los privilegios/autenticación correctos. ¿Alguna cosa extraña como servidor u OpenLDAP que debamos saber?

Probé con un shell raíz (después de leer tu respuesta) y el problema persiste. En el shell raíz que acabo de obtener su: Sorrydespués de ejecutar /usr/libexec/locate.updatedb y en syslog veo el mismo mensaje de error nuevamente. Creé una nueva cuenta que agregué al grupo de administración, ocurre el mismo error. Estoy en una máquina cliente Lion, por lo que no hay utilidades de servidor instaladas y no tengo OpenLDAP configurado.

Esto parece funcionar para mí.

sudo /usr/libexec/locate.updatedb

Puede ejecutar el comando para actualizar la base de datos utilizada por localizar directamente llamando

sudo /usr/libexec/locate.updatedb 

Esto llevará un tiempo y debería actualizar todo el índice.

Verifique sus rutas .bashrc. Incluya /usr/libexec en la instrucción $PATH si falta.

¿Puede agregar algunos detalles sobre lo que hace esto y cómo resuelve el problema descrito en la pregunta?