Як змінити ім'я комп’ютера, щоб термінал відображав його в Mac OS X Mountain Lion? [дублікат]


245

На це питання вже є відповідь тут:

Під час налаштування комп'ютера я назвав його "MacBook Pro Скотта". І тому, коли я переходжу до системних налаштувань-> Спільний доступ, він каже, що в MacToo Pro Скотта є моє ім'я комп'ютера. Однак відкриття терміналу дає мені такий підказ:

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

Коли я входжу в Backblaze, вони моєму комп'ютеру називають "новий-хост-4_2012_10_07". Чи не я повністю встановив ім’я свого комп’ютера? Чи варто використовувати традиційну hostnameкоманду?


2
Наскільки мені відомо, про це повідомляє DNS. Якщо ваш IP-номер не має імені, використовується ім'я з Налаштування (можливо, .localдомен))
Thorbjørn Ravn Andersen

@ ThorbjørnRavnAndersen - мій .local домен із налаштуваннями Sharing був scotts-macbook-pro.local
01

Відповіді:


297

Якщо ви використовуєте:

sudo scutil --set HostName name-you-want

це буде працювати трохи краще. На сторінці чоловіка 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.

4
Працював для мене після запуску цієї команди та перезавантаження терміналу.
Джоннатан Елмор

Працював як шарм
Hos Mercury

Це працює для мене, але після перезавантаження він потім скидає ім'я хоста в терміналі назад до того, що було до того, як я змінив його.
jwir3

Працює в Мохаве. Термінал показував, emulator02хоча я змінив його в налаштуваннях - або спробував. Я просто запустив усі три підтримувані налаштування та перезапустив термінал; тепер я можу отримати правильне ім'я хоста.
Даніель

126

Дотримуючись підказки Джефрі Дж. Гувера ,

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

Я би додав ці два останні кроки.

  • Очистіть кеш DNS, ввівши: dscacheutil -flushcache
  • Перезавантажте Mac.

EDIT: Це не спрацювало для мене, поки я не перезапустив Mac.


2
@iconoclast Останнє використання Windows в основному в 2004 році. Перезавантаження працювало для мене та ще 16 людей. Не зашкодило б.
Danger14

10
Це означає, що він не працював, поки ви не перезапустили? (Перезапуск може зашкодити, коли ви справді працюєте на своєму комп’ютері, і тому у вас відкрито безліч додатків. Повернути все, як у вас це було до перезавантаження, може бути *****.) Також факт, що 16 людей знайшли деяку кількість частина вашої відповіді корисною не означає, що нічого не працювало, поки вони не перезапустили.
іконоборство

15
Працював для мене без перезавантаження, просто вийдіть з терміналу повністю та відкрийте його знову.
Олександр Вігмор

7
Я вперше scutil --getвиявив це ComputerNameі LocalHostNameбув правильно встановлений за допомогою системних налаштувань (обмін). Однак мені сказали, що це HostNameбуло not set. Таким чином, я просто використовував sudo scutil --setдля того, щоб встановити HostName. Тоді мені не потрібно було використовувати dscacheutilабо перезавантажуватись, оскільки негайно перевірка hostnameпоказала, що все виправлено для мене, і відкривши нову вкладку Термінал показав, що і моє підсказка тепер виправлена. (OS X 10.9.4)
Квінтін Віллісон,

4
Вам навіть не потрібно перезапускати термінал, щоб відобразити зміни, просто джерело конфігурації, відповідальної за ваш запит.
Стів Бузонас

43

Для тих, хто не шукає рішення командного рядка, ви можете змінити його під

System Preferences -> Sharing -> Computer Name: 

13
Це не спрацювало для мене. Ім'я в командному рядку терміналу все ще залишалося якlocalhost
timurb

5
Ви перезапустили термінал?
Gon

I defs довелося перезапустити Terminal, але це був найпростіший метод.
skybondor

Це не спрацювало для мене, оскільки Термінал продовжував показувати стару назву. Але відповідь Джона вирішила це - на Мохаве.
Рехмат

21

Ви можете визначити, що ви хочете бачити перед $своїм терміналом, змінивши файл ~/.profile.

Наприклад, якщо ви додаєте у файл ~/.profileнаступний рядок:

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

ви побачите ім'я хоста та повний шлях поточного каталогу:

host_name:current_directory_path$

Ви також можете змінити мій приклад, скориставшись наступними параметрами в команді експорту:

\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)

Чому -1? Він сказав, що не може бачити його ім'я в Терміналі.
Маверик

4
не я зі -1 :). Дякую за вашу відповідь, я думаю, я не просто шукаю, як змінити своє ім’я в терміналі, але, очевидно, на мій комп'ютер все ще посилається потворне ім'я new-host-4, оскільки його використовують сервіси, як Backblaze. Мій попередній MacBook Pro мав приємнішу назву, яку я вибрав, я не знаю, чому мій лев MacBook Pro не використовує прізвище, яке я маю в налаштуваннях обміну
01

8

Можна бігати

sudo hostname Name-Of-My-Computer

в Терміналі, щоб змінити назву.


7
Сторінка man для імені хоста говорить, що запустити, scutil --set HostName name-of-hostякщо ви хочете зберегти ім'я хоста через перезавантаження
daviewales

Для мене це спрацювало дуже добре, навіть перезавантаживши комп’ютер. Спасибі.
Бріннер Феррейра

Це спрацювало для мене після того, як я перезапустив свій Mac (запуск El Capitan)
Джадер Фейджо

7

У моєму випадку я виявив, що це проблема з нашим DNS-сервером, оскільки зворотний пошук DNS не збився, оскільки були дублюючі записи DNS для IP-адреси та імені хоста.


2

Тут я додаю відповідь, тому що нещодавно я також зіткнувся з цією проблемою.

В OSX 10.7.4 і, можливо, раніше, помилка в опції «Редагувати ім'я хоста» на панелі налаштувань спільного доступу може виявитися помилкою. Він встановлює ім'я хоста для останнього набору замість поточного цього набору.

Мені довелося запуститись sudo hostname [preferred hostname], щоб правильно його встановити, після того, як встановив його в розділі Спільний доступ.


1

Я нічого не робив зі своїм комп’ютером, але врешті-решт чомусь ім’я хоста та ім’я комп'ютера зареєстровано як ім’я, яке я встановив спочатку! Насправді у мене був відкритий наступний термінал, і це саме вирізання та вставка:

new-host-4:~ scott$ hostname
new-host-4.home
new-host-4:~ scott$ hostname
Scotts-MacBook-Pro.local
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.