Wie ändere ich den Computernamen, damit das Terminal ihn in Mac OS X Mountain Lion anzeigt? [Duplikat]

245

Diese Frage hat hier bereits eine Antwort:

Als ich meinen Computer einrichtete, nannte ich ihn "Scott's MacBook Pro". Wenn ich zu Systemeinstellungen-> Freigabe gehe, wird dort Scotts MacBook Pro als Computername angezeigt. Wenn ich jedoch ein Terminal öffne, erhalte ich die folgende Aufforderung:

Last login: Sun Oct  7 11:02:49 on ttys003
new-host-4:~ scott$ 

Wenn ich mich bei Backblaze anmelde, wird mein Computer als "new-host-4_2012_10_07" aufgeführt. Habe ich meinen Computernamen nicht vollständig festgelegt? Soll ich den herkömmlichen hostnameBefehl verwenden?

at01
quelle
2
Soweit mir bekannt ist, handelt es sich hierbei um das, was DNS meldet. Wenn Ihre IP-Nummer keinen Namen hat, wird der Name aus den Einstellungen verwendet (möglicherweise die .localDomain)
Thorbjørn Ravn Andersen
@ ThorbjørnRavnAndersen - meine .local-Domain aus den Freigabeeinstellungen war scotts-macbook-pro.local
at01

Antworten:

298

Wenn du benutzt:

sudo scutil --set HostName name-you-want

es wird ein bisschen besser funktionieren. Aus der Manpage scutil (8):

--get pref
    Retrieves the specified preference.  The current value will be
    reported on standard output.

    Supported preferences include:
          ComputerName   The user-friendly name for the system.
          LocalHostName  The local (Bonjour) host name.
          HostName       The name associated with hostname(1) and gethostname(3).

--set pref [newval]
    Updates the specified preference with the new value.  If the new value is not
    specified on the command line then it will be read from standard input.

    Supported preferences include: ComputerName LocalHostName HostName

    The --set option requires super-user access.
John
quelle
4
Hat für mich funktioniert, nachdem ich diesen Befehl ausgeführt und Terminal neu gestartet habe.
Johnathan Elmore
Arbeitete als Charme
Hos Mercury
Dies funktioniert für mich, aber beim Neustart wird der Hostname im Terminal auf den Stand zurückgesetzt, der vor meiner Änderung vorlag.
jwir3
Arbeitet in Mojave. Das Terminal wurde angezeigt emulator02, obwohl ich es in den Einstellungen geändert - oder ausprobiert habe. Ich habe gerade alle drei unterstützten Einstellungen ausgeführt und das Terminal neu gestartet. jetzt kann ich den Hostnamen richtig machen.
Daniel
126

Nachdem Sie den Tipp von Jeffrey J. Hoover befolgt haben ,

sudo scutil --set ComputerName "newname"
sudo scutil --set LocalHostName "newname"
sudo scutil --set HostName "newname"

Ich würde diese letzten beiden Schritte hinzufügen.

  • Leeren Sie den DNS-Cache, indem Sie Folgendes eingeben: dscacheutil -flushcache
  • Starten Sie Ihren Mac neu.

EDIT: Es hat bei mir nicht funktioniert, bis ich meinen Mac neu gestartet habe.

Gefahr14
quelle
2
@iconoclast Zuletzt verwendet Windows in erster Linie im Jahr 2004. Neustart funktionierte für mich und 16 andere Personen. Würde nicht weh tun.
Danger14
10
Das heißt, es hat nicht funktioniert, bis Sie neu gestartet haben? (Ein Neustart kann schaden, wenn Sie tatsächlich ernsthafte Arbeiten an Ihrem Computer ausführen und daher viele Anwendungen geöffnet haben. Es kann ein Problem sein, wenn Sie alle Daten , die Sie vor dem Neustart hatten, wiederhergestellt haben.) Auch die Tatsache, dass 16 Personen einige gefunden haben Ein Teil Ihrer Antwort hilfreich bedeutet nicht, dass nichts funktioniert hat, bis sie neu gestartet wurden.
Iconoclast
15
Funktionierte bei mir ohne Neustart, einfach Terminal komplett beenden und wieder öffnen.
Alexander Wigmore
7
Ich habe das zum ersten Mal scutil --getentdeckt ComputerNameund LocalHostNamees mithilfe der Systemeinstellungen (Freigabe) richtig eingestellt. Es hat mir jedoch gesagt, dass dies der HostNameFall ist not set. Also habe ich gerade gebraucht sudo scutil --setum einzustellen HostName. Dann musste ich weder dscacheutileinen Neustart ausführen noch einen Neustart durchführen, da sich bei einer sofortigen Überprüfung hostnameherausstellte, dass die Probleme für mich behoben waren, und das Öffnen eines neuen Terminals zeigte, dass meine Eingabeaufforderung jetzt ebenfalls behoben war. (OS X 10.9.4)
Quintin Willison
4
Sie müssen Terminal nicht einmal neu starten, um die Änderungen zu berücksichtigen. Geben Sie einfach die Konfiguration an, die für Ihre Eingabeaufforderung verantwortlich ist.
Steve Buzonas
43

Für diejenigen, die keine Kommandozeilenlösung suchen, können Sie diese unter ändern

System Preferences -> Sharing -> Computer Name: 
jerrylroberts
quelle
13
Das hat bei mir nicht funktioniert. Der Name an Terminal - Eingabeaufforderung blieb noch alslocalhost
timurb
5
Haben Sie das Terminal neu gestartet?
Gon
Ich musste Terminal defs neu starten, aber dies war die einfachste Methode.
Skybondsor
Das hat bei mir nicht geklappt, weil Terminal immer wieder den alten Namen zeigte. Aber Johns Antwort hat es gelöst - auf Mojave.
Rehmat,
21

Sie können definieren, was Sie vor dem $in Ihrem Terminal sehen möchten, indem Sie die Datei ändern ~/.profile.

Wenn Sie beispielsweise ~/.profiledie folgende Zeile zur Datei hinzufügen :

# h is the host name, w the complete path 
export PS1="\h:\w$ "

Sie sehen den Hostnamen und den vollständigen Pfad des aktuellen Verzeichnisses:

host_name:current_directory_path$

Sie können mein Beispiel auch ändern, indem Sie die folgenden Optionen im Befehl export verwenden:

\d – Current date
\t – Current time
\h – Host name
\# – Command number
\u – User name
\W – Current working directory (i.e: Desktop/)
\w – Current working directory, full path (i.e: /Users/Admin/Desktop)
Maverik
quelle
Warum -1? Er sagte, dass er den Hostnamen im Terminal nicht sehen könne.
Maverik
4
war ich nicht mit der -1 :). Vielen Dank für Ihre Antwort. Ich schätze, ich suche nicht nur nach einer Möglichkeit, meinen Namen im Terminal zu ändern, sondern mein Computer wird auch weiterhin vom hässlichen Namen new-host-4 referenziert, da Dienste wie Backblaze ihn verwenden. Mein früheres MacBook Pro hatte einen schöneren Namen, den ich gewählt habe. Ich weiß nicht, warum mein
Berglöwe
8

Du kannst rennen

sudo hostname Name-Of-My-Computer

im Terminal, um den Namen zu ändern.

Galas
quelle
7
Die Manpage für Hostname sagt, dass sie ausgeführt werden soll, scutil --set HostName name-of-hostwenn Sie den Hostnamen über Neustarts hinweg
beibehalten
Bei mir hat es sehr gut geklappt, auch den Computer neu zu starten. Dankeschön.
Brynner Ferreira
Dies funktionierte für mich, nachdem ich meinen Mac neu gestartet hatte (mit El Capitan)
Jader Feijo,
7

In meinem Fall stellte ich fest, dass es ein Problem mit unserem DNS-Server war, da die umgekehrte DNS-Suche nicht aufgeräumt wurde, da doppelte DNS-Einträge für die IP-Adresse und den Hostnamen vorhanden waren.

Chris Opperman
quelle
2

Ich füge hier eine Antwort hinzu, da ich kürzlich auch auf dieses Problem gestoßen bin.

In OSX 10.7.4 und früheren Versionen scheint es einen Fehler in der Option "Hostnamen bearbeiten" im Fenster "Freigabe" zu geben. Es setzt den Hostnamen auf den letzten Satz anstelle des aktuellen Satzes.

Ich musste laufen sudo hostname [preferred hostname], um es richtig einzustellen, nachdem ich es in Sharing eingestellt hatte.

JDL
quelle
1

Ich habe nichts mit meinem Computer gemacht, aber irgendwann wurden der Hostname und der Computername als der Name registriert, den ich ursprünglich festgelegt hatte! In der Tat hatte ich das folgende Terminal die ganze Zeit geöffnet und dies ist genau ein Ausschneiden und Einfügen:

new-host-4:~ scott$ hostname
new-host-4.home
new-host-4:~ scott$ hostname
Scotts-MacBook-Pro.local
at01
quelle