Lorsque j'ouvre le terminal, je m'attends à ce qu'il montre à quoi ma PS1 est configurée \h:\W \u\$
.
Cependant, il n'affiche pas mon nom d'hôte Eriks-MacBook
, comme indiqué dans les Préférences Système.
Au lieu de cela, il affiche une chaîne aléatoire unknownb88d120cd4b2
.
Comment cela peut-il être corrigé ou réinitialisé?
Cette machine est neuve et les préférences / paramètres n'ont pas été modifiés.
hostname
dans l'invite et appuyez sur Entrée. Qu'est ce que tu obtiens?Réponses:
Gordon donne une bonne réponse à l'origine de votre nom d'hôte.
Si vous souhaitez que le nom que vous définissez dans Préférences Système -> Partage -> Nom de l'ordinateur apparaisse dans votre invite, remplacez
\h
par$(scutil --get ComputerName)
. Par exemple, mon invite est définie avecla source
Terminal vous montre la première étiquette de votre nom d'hôte BSD (en supposant que votre shell est BASH). Si votre nom d'hôte BSD est
yourhostname.mynetwork.com
alors Terminal affichera uniquementyourhostname
-D'où vient donc le nom d'hôte BSD? Il peut provenir de plusieurs endroits:
• à partir du fichier:
/etc/hostconfig
• sinon à partir du fichier:
/Library/Preferences/SystemConfiguration/preferences.plist
( Système ▸ Système ▸ HostName )• sinon le résultat d'une requête DNS inversée pour votre adresse IP principale (vous remarquerez peut-être un nom d'hôte totalement différent lorsque vous visitez un cybercafé que lorsque vous êtes connecté à la maison)
• sinon votre nom d'hôte "Bonjour" dans Préférences Système> Partage (
preferences.plist
encore une fois ... Système ▸ Réseau ▸ Noms d'hôte ▸ LocalHostName )• enfin, si aucun des éléments ci-dessus n'a été défini, le nom d'hôte BSD sera simplement
localhost
Soit dit en passant, j'ai répondu à la même question il y a quelque temps ici: Mac OS X Terminal - d'où vient le nom de l'invite
la source
OS X essaie un certain nombre de choses pour trouver son "nom d'hôte". Malheureusement, je ne connais pas la liste exacte (et l'ordre), mais je pense que ce qui se passe ici, c'est qu'il découvre un nom DNS associé à son adresse IP, et en l'utilisant à la place du nom Bonjour, il se fait de la publicité (celui défini dans Partage des préférences).
Alors pourquoi trouve-t-il un nom DNS? Je suppose que votre routeur local / serveur DHCP / serveur DNS lui attribue dynamiquement un, en fonction de son adresse matérielle Ethernet (vraisemblablement b8: 8d: 12: 0c: d4: b2). Vous pouvez peut-être ajuster les paramètres du routeur pour l'empêcher de le faire, ou vous pouvez probablement définir l'ID client DHCP de l'ordinateur (dans les Préférences réseau, Paramètres avancés) pour contrôler le nom qu'il vous attribue.
la source
Je ne sais pas si vous rencontrez toujours des problèmes ou non, cela semble avoir été résolu entre Yosemite et Sierra.
Pour les nouveaux ordinateurs, je commence par les préférences du système de partage, en entrant le [nouveau nom] comme nom d'ordinateur souhaité. J'entre également le [nouveau nom] dans tous les champs d'ID de client DHCP actifs pour chaque interface réseau. Après avoir fait cela, j'ouvre Terminal pour confirmer qu'il signale un nom similaire, certains caractères ne sont pas autorisés, le système modifiera le nom si nécessaire. Vous pouvez changer le nom en utilisant les étapes ci-dessous, remplacez simplement le bloc [nouveau nom] par le nom de votre ordinateur souhaité.
Si le nom ne me convient pas, je procède à ce qui précède avant de le lier à Active Domain.
la source