Bagaimana cara mengubah nama komputer sehingga terminal menampilkannya di Mac OS X Mountain Lion? [duplikat]

245

Pertanyaan ini sudah ada jawabannya di sini:

Ketika saya mengatur komputer saya, saya menamainya "Scott's MacBook Pro". Jadi ketika saya pergi ke System preferences -> Berbagi, dikatakan Scott MacBook Pro di sana sebagai nama komputer saya. Namun, membuka terminal memberi saya prompt ini:

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

Ketika saya masuk ke Backblaze, mereka mencantumkan komputer saya sebagai "host-baru ‑ 4_2012_10_07". Apakah saya tidak sepenuhnya menetapkan nama komputer saya? Haruskah saya menggunakan hostnameperintah tradisional ?

at01
sumber
2
Sepengetahuan saya inilah DNS melaporkannya. Jika nomor IP Anda tidak memiliki nama, nama dari Preferensi digunakan (mungkin .localdomain))
Thorbjørn Ravn Andersen
@ ThorbjørnRavnAndersen - domain .local saya dari preferensi Sharing telah scotts-macbook-pro.local
at01

Jawaban:

297

Jika Anda menggunakan:

sudo scutil --set HostName name-you-want

ini akan bekerja sedikit lebih baik. Dari halaman manual 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
sumber
4
Bekerja untuk saya setelah menjalankan perintah itu dan me-reboot Terminal.
Johnathan Elmore
Bekerja sebagai pesona
Hos Mercury
Ini berfungsi untuk saya, tetapi setelah me-reboot, kemudian me-reset nama host di terminal kembali ke apa sebelum saya mengubahnya.
jwir3
Bekerja di Mojave. Terminal menunjukkan emulator02meskipun saya mengubahnya dalam pengaturan - atau mencoba. Saya baru saja menjalankan ketiga preferensi yang didukung dan memulai kembali terminal; sekarang saya bisa mendapatkan nama host dengan benar.
Daniel
126

Setelah mengikuti tip Jeffrey J. Hoover ,

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

Saya akan menambahkan dua langkah terakhir ini.

  • Siram cache DNS dengan mengetik: dscacheutil -flushcache
  • Mulai ulang Mac Anda.

EDIT: Tidak berfungsi untuk saya sampai saya me-restart mac saya.

Bahaya14
sumber
2
@iconoclast Terakhir menggunakan Windows terutama pada tahun 2004. Restart bekerja untuk saya dan 16 orang lainnya. Tidak akan sakit.
Bahaya14
10
Berarti itu tidak berfungsi sampai Anda memulai ulang? (Restart dapat merusak ketika Anda benar-benar melakukan pekerjaan serius pada komputer Anda, dan karenanya memiliki banyak aplikasi terbuka. Mendapatkan semuanya kembali seperti semula sebelum reboot dapat menjadi sebuah *****.) Juga, fakta bahwa 16 orang menemukan beberapa bagian dari jawaban Anda membantu bukan berarti tidak ada yang berhasil sampai mereka dimulai kembali.
iconoclast
15
Bekerja untuk saya tanpa memulai ulang, cukup keluar dari Terminal sepenuhnya dan buka kembali.
Alexander Wigmore
7
Saya pertama kali scutil --getmenemukan itu ComputerNamedan LocalHostNametelah ditetapkan dengan benar dengan menggunakan System Preferences (Sharing). Namun, itu memberitahuku HostNameitu not set. Jadi, saya hanya menggunakan sudo scutil --setuntuk mengatur HostName. Kemudian, saya tidak perlu menggunakan dscacheutilatau melakukan reboot segera setelah pemeriksaan hostnamemenunjukkan bahwa semuanya sudah diperbaiki untuk saya dan membuka tab Terminal baru menunjukkan prompt saya sekarang sudah diperbaiki juga. (OS X 10.9.4)
Quintin Willison
4
Anda bahkan tidak perlu me-restart terminal untuk mencerminkan perubahan, cukup sumber konfigurasi yang bertanggung jawab untuk prompt Anda.
Steve Buzonas
43

Bagi mereka yang tidak mencari solusi baris perintah, Anda dapat mengubahnya di bawah

System Preferences -> Sharing -> Computer Name: 
jerigen
sumber
13
Ini tidak berhasil untuk saya. Nama di terminal command prompt masih tetap sebagailocalhost
timurb
5
Apakah Anda me-restart terminal?
Gon
Saya defs harus me-restart Terminal, tetapi ini adalah metode termudah.
skybondsor
Ini tidak berhasil bagi saya karena Terminal terus menunjukkan nama lama. Tapi, jawaban John memang menyelesaikannya - di Mojave.
Rehmat
21

Anda dapat menentukan apa yang ingin Anda lihat sebelum $di terminal Anda dengan memodifikasi file ~/.profile.

Misalnya jika Anda menambahkan ke file ~/.profile, baris berikut:

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

Anda akan melihat nama host dan path lengkap dari direktori saat ini:

host_name:current_directory_path$

Anda juga dapat mengubah contoh saya dengan menggunakan opsi berikut dalam perintah ekspor:

\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
sumber
Kenapa -1? Dia mengatakan bahwa dia tidak dapat melihat nama host-nya di Terminal.
Maverik
4
bukan aku dengan -1 :). Terima kasih atas jawaban Anda, saya rasa saya tidak hanya mencari cara mengubah nama saya di terminal, tetapi jelas komputer saya masih direferensikan oleh nama buruk host-4 baru sebagai layanan seperti Backblaze menggunakannya. MacBook Pro saya sebelumnya memiliki nama yang lebih bagus yang saya pilih, saya tidak tahu mengapa singa gunung saya MacBook Pro tidak menggunakan nama yang saya miliki di preferensi Sharing
at01
8

Anda bisa lari

sudo hostname Name-Of-My-Computer

di Terminal untuk mengubah nama.

Galas
sumber
7
Halaman manual untuk hostname mengatakan untuk menjalankan scutil --set HostName name-of-hostjika Anda ingin menyimpan hostname di reboot
daviewales
Bagi saya itu bekerja dengan sangat baik, bahkan me-restart komputer. Terima kasih.
Brynner Ferreira
Ini bekerja untuk saya setelah saya me-restart Mac saya (menjalankan El Capitan)
Jader Feijo
7

Dalam kasus saya, saya menemukan bahwa itu adalah masalah dengan server DNS kami, karena pencarian balik DNS tidak mencari karena ada entri DNS duplikat untuk alamat IP dan nama host.

Chris Opperman
sumber
2

Saya menambahkan jawaban di sini karena saya baru saja mengalami masalah ini juga.

Di OSX 10.7.4 dan mungkin sebelumnya, tampaknya ada bug dalam opsi Edit Hostname di panel preferensi Berbagi. Ini menetapkan nama host ke set hal terakhir daripada set saat ini.

Saya harus menjalankan sudo hostname [preferred hostname]untuk menyetelnya dengan benar, setelah mengaturnya di Berbagi.

JDL
sumber
1

Saya tidak melakukan apa pun pada komputer saya, tetapi akhirnya karena beberapa alasan nama host dan komputer semuanya terdaftar sebagai nama yang pada awalnya saya tetapkan! Sebenarnya saya memiliki terminal berikut terbuka sepanjang waktu dan ini persis cut and paste:

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