Le nom de mon ordinateur dans Préférences système> partage est défini sur "archos" mais s'affiche sous la forme "iphone" sur le terminal. Cela a juste commencé à le faire après avoir chargé Xcode pour le développement de l'iPhone.
Last login: Mon Nov 7 14:46:55 on ttys001
iphone:~ travis$
Des idées ce qui pourrait être la cause?
Réponses:
Il est parfaitement normal que cela se produise. Lorsque vous vous connectez à distance à un terminal, bash effectue une recherche DNS inversée. Ce ne sera le cas que si le nom d'hôte n'est pas spécifié sur le réseau à partir duquel vous vous connectez et qu'il n'y a pas de réponse du serveur DHCP ou si la recherche inversée sur le serveur DNS distant échoue.
Vous pouvez facilement remplacer le paramètre par défaut en utilisant cette commande dans Terminal:
Vous pouvez le vérifier en utilisant:
(où nn signifie l'adresse IP de votre Mac)
la source
sudo scutil --set HostName ''
.HostName
est déconseillé de définir ce paramètre , car il crée une valeur distincte qui persiste même lorsque vous essayez ultérieurement de modifier le nom d'hôte viaSystem Preferences > Sharing
. En revanche, le réglageLocalHostName
met à jour la même valeur et est normalement également repris par le shell ethostname
(laComputerName
valeur doit être mise à jour simultanément). Ou bien le réglageHostName
se comporte-t-il différemment d'une manière avantageuse ici?hostname -f
Vous voudrez peut-être aussi changer d'autres choses en utilisant la commande scutil:
la source
scutil
pour définirHostName
, les deuxComputerName
etLocalHostName
étaient déjà définis avec le nouveau nom pour moi (en Mavericks). C'est bien de savoir que ces autres paramètres existent, cependant.HostName
, car cela fera que cette valeur persistera même lorsque vous tenterez plus tard de changer votre nom d'hôte via les Préférences Système . A l' inverse, lesLocalHostName
est - repris par la coquille ethostname
, doncHostName
n'est jamais nécessaire.sudo scutil --set LocalHostName ''
supprimé LocalHostName et maintenant mon invite utilise ComputerName, qui a la valeur correcte.Il y a deux raisons possibles pour que le shell (
$HOSTNAME
variable,'\h'
in$PS1
) et l'hostname
utilitaire signalent un nom d'hôte différent de celui présenté dansSystem Preferences > Sharing
:sudo scutil --set HostName newName
a été utilisé pour modifier le nom d'hôte de manière persistante - malheureusement, cette valeur est indépendante de laLocalHostName
valeur définie par les préférences système en coulisse - même siman hostname
cette méthode est suggérée, NE L'UTILISEZ PAS, pour cette raison; courirsudo scutil --set HostName ''
pour l'enlever , à quel pointLocalHostName
devrait à nouveau être signalé; pour le fond, voir ce post par @Lauri Ranta.[ Mise à jour: Ce qui suit ne l' est plus que de Mac OS X 10.10 ] Si votre
/etc/hosts
fichier a une entrée qui correspond à l'adresse IP de votre machine, que le nom de l' entrée sera signalée.Le shell ne
hostname
reflétera la valeur définie dans les Préférences Système que si aucune de ces affirmations n'est vraie .Si vous souhaitez modifier votre nom d'hôte à partir du shell , exécutez les deux opérations suivantes:
sudo scutil --set LocalHostName <newName>
sudo scutil --set ComputerName <newFriendlyName>
où
<newFriendlyName>
peut être une version plus conviviale (espaces, ponctuation) de<newName>
(caractères alphanumériques et tirets uniquement).la source
sudo scutil --set HostName ''
premier (le cas compte) et vous êtes assuré qu'il n'y a aucune entrée/etc/hosts
?scutil --get HostName
devrait signalerHostname: not set
.scutil --get HostName HostName: not set
/ etc / hosts semblePS1
variable n'a pas de nom d'hôte codé en dur plutôt que d'utiliser\h
, n'est-ce pas? En passant:/etc/hosts
n'est plus consulté depuis OSX 10.10 (j'ai mis à jour ma réponse).sudo scutil --set HostName ''
:) permet à OS X de mapper le nom de l’ordinateur sur son adresse IP (par exemple, cela fonctionne maintenantping <computername>
).En plus du conseil de Jeffrey J. Hoover (ci-dessus) ,
J'ajouterais ces deux dernières étapes:
dscacheutil -flushcache
la source
Je conviens que le conseil de Jeffrey Hoover était la bonne réponse. Vider le cache DNS et redémarrer le Mac est également une bonne étape. Ceci est une variante de la réponse de Jeff Hoover:
la source
-
: ça doit être--set
pour travailler. En outre, comme je l'ai commenté dans la réponse de Jeff: il est probablement préférable de ne pas définirHostName
.Préférences Système -> Partage -> Nom de l'ordinateur -> définissez-le comme bon vous semble
Et puis redémarrez votre ordinateur. Aucune commande de console n'était nécessaire. Fonctionne pour OS X 10.10.2
la source
hostname
renvoyé "MacBook-Pro". Je l'ai même changé et j'avais toujours le problème. Je n'ai jamais vu ce problème auparavant. Lesscutil
commandes ont fonctionné pour moi. Je me demande où et comment vous êtes censés faire cela via l'interface graphique.Comme indiqué dans une réponse distincte, une autre option consiste à remplacer l'invite PS1 par défaut, par exemple en exécutant la ligne suivante (ou en l'ajoutant à votre fichier ~ / .bash_profile):
réfs:
https://superuser.com/a/414903/39364
http://www.cnet.com/news/keep-your-command-prompt-host-name-static-in-os-x-and-other-unix-systems/
la source
Utilisez ceci
la source
J'ai eu le problème que seul le shell lui-même (
zsh
dans mon cas) n'a pas réussi à afficher le nom d'ordinateur correct. Redémarrer simplement le shell a résolu le problème:la source
Outre la réponse précédente, rappelez-vous que vous pouvez utiliser une adresse statique dans votre routeur. Vous devez entrer l'adresse IP statique et l'adresse MAC de votre carte réseau, puis vous devez lui donner un nom. Le nom d'hôte sera automatiquement mis à jour avec le nom spécifié. C'est ça.
la source