El nombre de la computadora OS X no coincide con lo que se muestra en la terminal

106

El nombre de mi computadora en Preferencias del sistema > compartir está configurado en "archos" pero se muestra como "iphone" en el terminal. Simplemente comencé a hacer esto después de cargar Xcode para hacer el desarrollo del iPhone.

Last login: Mon Nov  7 14:46:55 on ttys001
iphone:~ travis$ 

¿Alguna idea de qué podría estar causando esto?

    
pregunta Travis Nelson 08.11.2011 - 06:58

10 respuestas

83

Es perfectamente normal que esto ocurra; al iniciar sesión en el Terminal de forma remota, bash realiza una búsqueda DNS inversa. Solo será igual si el nombre de host no está especificado en la red desde la que se está conectando y no hay respuesta del servidor DHCP, o si la búsqueda inversa contra el servidor DNS remoto no se puede resolver.

Puede anular fácilmente la configuración predeterminada usando este comando en la Terminal:

# sudo scutil --set HostName archos

Puedes verificarlo usando:

# nslookup nn.nn.nn.nn
( or )
# host nn.nn.nn.nn

(donde nn significa la dirección IP de tu Mac)

    
respondido por el l'L'l 08.11.2011 - 11:49
42

Es posible que también desee cambiar algunas otras cosas mediante el comando scutil:

sudo scutil --set ComputerName "newname"
sudo scutil --set LocalHostName "newname"
sudo scutil --set HostName "newname"
    
respondido por el Jeffrey J. Hoover 06.06.2012 - 19:23
13

Hay dos posibles motivos para que el shell ( $HOSTNAME variable, '\h' en $PS1 ) y la utilidad hostname informen un nombre de host diferente al que se muestra en System Preferences > Sharing :

  • sudo scutil --set HostName newName se usó para cambiar de forma persistente el nombre de host. Desafortunadamente, este valor es independiente del valor LocalHostName establecido por las Preferencias del sistema entre bastidores, a pesar de que man hostname sugiere este método, NO LO USE por ese motivo; ejecute sudo scutil --set HostName '' para eliminarlo , en cuyo punto se debe informar nuevamente LocalHostName ; Para obtener más información, consulte esta publicación por @Lauri Ranta.

  • [ Actualización: Lo siguiente ya no se cumple a partir de OSX 10.10 ] Si su archivo /etc/hosts tiene una entrada que coincide con la dirección IP de su máquina, que Se informará el nombre de la entrada.

Solo si ninguna de las anteriores es verdadera, la shell y hostname reflejarán el valor establecido a través de las Preferencias del sistema.

Si desea cambiar su nombre de host desde el shell , ejecute ambos de los siguientes:

  • sudo scutil --set LocalHostName <newName>
  • sudo scutil --set ComputerName <newFriendlyName>

donde <newFriendlyName> puede ser una versión más amigable (espacios, puntuación) de <newName> (solo caracteres alfanuméricos y guiones).

    
respondido por el mklement0 05.05.2014 - 06:47
5

Además de consejo de Jeffrey J. Hoover (arriba) ,

Yo agregaría estos dos últimos pasos:

  • Vacíe el caché de DNS escribiendo: %código%
  • Reinicia tu Mac.
respondido por el Danger14 09.05.2013 - 06:32
5

Estoy de acuerdo en que la sugerencia de Jeffrey Hoover fue la respuesta correcta. Vaciar el caché de DNS y reiniciar la Mac también es un buen paso. Esta es una variante de la respuesta de Jeff Hoover:

sudo -i
Password:

for n in HostName ComputerName LocalHostName; do
    scutil --set $n new_hostname
done

exit
    
respondido por el user67806 17.01.2014 - 23:49
3

Como se mencionó en una respuesta por separado, otra opción es anular el indicador PS1 predeterminado, como ejecutar la siguiente línea (o agregarla a su archivo ~ / .bash_profile):

 $ PS1="$(scutil --get ComputerName):\W \u\$ "

refs:

enlace

enlace

    
respondido por el rogerdpack 19.12.2014 - 20:53
3

Preferencias del sistema - > Compartir - > Nombre del equipo - > configúralo a lo que sea

Y luego reinicia tu computadora. No se necesitaron comandos de consola. Funciona para OS X 10.10.2

    
respondido por el Terry Bu 17.02.2015 - 20:29
3

Usa esto

sudo systemsetup -setcomputername $name
    
respondido por el Quanlong 03.12.2015 - 05:47
2

Tenía el problema de que solo el shell en sí ( zsh en mi caso) no mostraba el nombre de computadora correcto. Simplemente reiniciando el shell lo resolvió:

exec /bin/zsh
    
respondido por el Magnus Gustavsson 17.03.2015 - 12:21
2

Además de la respuesta anterior, recuerde que puede usar una dirección estática en su enrutador. Debe ingresar la IP estática y la dirección MAC de su tarjeta de red, luego debe establecer un nombre para ella. El nombre de host se actualizará automáticamente al nombre especificado. Eso es todo.

    
respondido por el noun 12.12.2015 - 02:15

Lea otras preguntas en las etiquetas