De repente, esta mañana, abro una ventana de Terminal y obtengo esto:
I have no name!@macbook:~$ whoami
502
** ¡No soy un número! ¡Soy un ser humano! ** **
¿Lo que da? ¿Alguien sabe lo que debo hacer para recuperar mi nombre?
Supongo que hay dos problemas aquí, uno es que mi nombre de host no está definido, el otro es que whoami informa mi nombre como un número.
whoami
también informa mi número en lugar de mi nombre.hostname
yid -p
volver?Respuestas:
Algo en la memoria se corrompió y se perdió la asignación entre su ID de usuario (502) y su nombre de usuario (ipd). Lo he visto suceder (generalmente cuando eliminé manualmente los procesos del sistema bloqueados), aunque no estoy seguro exactamente de qué lo causa.
launchd
¿tal vez?Debido a que ese mapeo se pierde,
whoami
no puede convertir su ID en un nombre de usuario, por lo que devuelve la ID y su mensaje predeterminado es "¡No tengo nombre!" mensaje porque efectivamente no tienes un nombre.Cerrar sesión y volver a iniciarla podría solucionarlo, pero reiniciar es la mejor manera (como descubrió).
Básicamente, es un síntoma de otro problema, y no un problema en sí mismo.
fuente
launchd
, y lo estaba ahora501
, lo que me impedía usarsudo
. Todavía no sé silaunchd
se reiniciará solo, o qué otra cosa no afectará si se ejecuta.strings /bin/bash | grep "I have"
which whoami
de ver dónde está, en mi caso lo hiceldd /usr/bin/whoami
para encontrar dependencias, ver si las tiene y si están dañadas.Veo que es un hilo viejo, pero aquí está la solución a este problema (sin reiniciar toda la computadora).
El problema está en el
opendirectoryd
demonio y los primeros informes datan de principios de 2011. El reinicio del demonio (cambio de usuarios con un administrador a través de Cambio rápido de usuario) soluciona el problema.Mientras escribía esta respuesta, encontré una pregunta similar en Serverfault aquí , que también cubre mi respuesta.
fuente
com.apple.sharepoint.group.2
yaccess_bpf
, pero no los grupos enumerados en/etc/group
. Me parece que los viejos procesos terminales (y quién sabe qué más) han perdido el acceso a opendirectoryd, no que opendirectoryd haya fallado.Esto me sucede al azar cuando salgo del modo de espera (es decir, abriendo mi computadora portátil). Cerrar sesión o reiniciar es la única forma de solucionarlo. No sé exactamente qué lo causa. Mientras escribo, está sucediendo en este momento. Como el comentario en la publicación original preguntaba, corrí
id -p
y se estrelló. (Informe de bloqueo : http://pastebin.com/nmFFQELq )Comandos de consola:
whoami
- devuelve 501id -p
- se bloqueacat /etc/passwd
- mi usuario no está en el documento.Cualquier intento de ssh falla con el error:
También revisé la consola, al despertar, aparecen un montón de errores aleatorios "Socket no conectado" (que creo que podría ser normal, ya que la conexión inalámbrica no se conecta de inmediato) de programas como Dropbox. Sin embargo, aparece un error interesante:
Todavía no estoy seguro de qué lo está causando, pero pensé que compartiría estos diagnósticos.
Estoy en una MacBook Pro de mediados de 2009 con 10.7.3 instalado.
fuente
Vea si los permisos del archivo
/etc/passwd
están configurados así:porque lee el nombre de usuario del
passwd
archivo.fuente
Resolví el problema usando iterm => preferencias => URL_handler y conectando whoami a mi nombre de usuario .. después de reiniciar en iterm, el problema ya no existía
fuente
Tuve este mismo problema desconcertante hoy (Lion 10.7.5) y lo
dscacheutil -flushcache
arregló para mí, como se sugiere en un comentario en algún blog .fuente
Mi problema es el permiso en el archivo passwd, el permiso anterior es -rw ------- 1 root root 1280 9 de junio 15:41 passwd Usé el comando "chmod a + r / etc / passwd" y ahora todos los usuarios Puede leer este archivo. -rw-r - r-- 1 raíz raíz 1280 9 de junio 15:41 passwd Cierre la sesión del usuario e inténtelo. =)
fuente
Vaya a la carpeta de inicio en Terminal y ejecute
. ~/.bashrc
.¡¡Funciona!!
fuente