Когда я настраивал свой компьютер, я назвал его «MacBook Pro Скотта». И поэтому, когда я захожу в «Системные настройки» -> «Общий доступ», в качестве имени моего компьютера там написано «MacBook Pro Скотта». Однако открытие терминала дает мне это приглашение:
Last login: Sun Oct 7 11:02:49 on ttys003
new-host-4:~ scott$
Когда я вхожу в Backblaze, мой компьютер отображается как «новый хост‑4_2012_10_07». Я не полностью установил имя своего компьютера? Должен ли я использовать традиционную hostname
команду?
Если вы используете:
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.
emulator02
, хотя я изменил его в настройках или пытался. Я просто запустил все три поддерживаемых параметра и перезапустил терминал; теперь я могу получить правильное имя хоста.Следуя совету Джеффри Дж. Гувера ,
sudo scutil --set ComputerName "newname"
sudo scutil --set LocalHostName "newname"
sudo scutil --set HostName "newname"
Я бы добавил эти последние два шага.
dscacheutil -flushcache
РЕДАКТИРОВАТЬ: у меня это не сработало, пока я не перезапустил свой Mac.
scutil --get
обнаружил это ComputerName
и LocalHostName
был правильно настроен с помощью Системных настроек (Общий доступ). Однако мне сказали, что HostName
это так not set
. Таким образом, я просто использовал sudo scutil --set
для того, чтобы установить HostName
. Затем мне не нужно было использовать dscacheutil
или выполнять перезагрузку, так как сразу же проверка hostname
показала, что для меня все было исправлено, а открытие новой вкладки «Терминал» показало, что мое приглашение теперь тоже исправлено. (ОС Х 10.9.4)Для тех, кто не ищет решение командной строки, вы можете изменить его в разделе
System Preferences -> Sharing -> Computer Name:
localhost
Вы можете определить, что вы хотите видеть перед $
в вашем терминале, изменив файл ~/.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)
Вы можете запустить
sudo hostname Name-Of-My-Computer
в Терминале, чтобы изменить имя.
scutil --set HostName name-of-host
, если вы хотите сохранить имя хоста при перезагрузке.В моем случае я обнаружил, что это была проблема с нашим DNS-сервером, поскольку обратный поиск DNS не очищал, потому что были дублированные записи DNS для IP-адреса и имени хоста.
Я ничего не делал со своим компьютером, но в конце концов по какой-то причине имя хоста и имя компьютера были зарегистрированы как имя, которое я изначально установил! На самом деле у меня все время был открыт следующий терминал, и это именно вырезка и вставка:
new-host-4:~ scott$ hostname
new-host-4.home
new-host-4:~ scott$ hostname
Scotts-MacBook-Pro.local
Я добавляю ответ здесь, потому что недавно столкнулся с этой проблемой.
В OSX 10.7.4 и, возможно, более ранних версиях появляется ошибка в параметре «Редактировать имя хоста» на панели настроек «Общий доступ». Он устанавливает имя хоста в последний набор вместо текущего этого набора.
Пришлось бегать sudo hostname [preferred hostname]
, чтобы правильно настроить, предварительно выставив в Sharing.
Турбьёрн Равн Андерсен
.local
домен))at01