Як змінити ім'я комп’ютера, щоб термінал відображав його в 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.