![终端中的未知用户](https://linux22.com/image/1328415/%E7%BB%88%E7%AB%AF%E4%B8%AD%E7%9A%84%E6%9C%AA%E7%9F%A5%E7%94%A8%E6%88%B7.png)
我在使用 OS X 终端时遇到了一个奇怪的问题。
当我打开终端时,命令提示符下的用户名是:
unknown-04-0c-ce-e3-0d-c2: ~
不幸的是,我无法确定这种情况是何时发生的,也无法确定原因。我通常使用 iTerm 进行 Web 开发,但这也会发生在普通的 OS X 终端应用中。
任何想法/帮助都将非常感激。
谢谢
更新: 感谢@fayadfami 和@aliasgar 的正确回答,为我指明了正确的方向。这个论坛帖子也帮了我大忙http://forums.macrumors.com/showthread.php?t=152407 摘自右侧帖子:
我自己也遇到过完全相同的问题,并且在尝试弄清楚的过程中遇到了这个帖子,所以我想发布答案。
OS X 最初将您的主机名设置为共享中为计算机名称设置的主机名;但是,如果您设置了 DHCP 并且匹配 DHCP 服务器上的当前租约(即匹配另一个最近用户的 IP 地址),则 OS X 会将您的主机名设置为 DHCP 服务器当前对该租约的设置。
一开始这让我非常害怕,因为我刚刚重新格式化(刚买了我的第一台 Mac,想看看安装程序是如何工作的),知道我还没有更改共享中的计算机名称——但终端提示符下的系统主机名确实已更改为我之前设置的预格式化名称。我四处搜索,没有在保存日志条目的任何地方找到该名称;我想要么是格式实际上没有正确清除所有内容,要么是我疯了。最后我登录了我的路由器(它是运行 OpenWRT 的 Linksys WRT54GS),并在当前租约文件中找到了主机名。然后我手动将 Mac 的 IP 设置为其他内容,瞧!——主机名又回到了我预期的样子。
我希望这可以帮助某人摆脱与我一样的偏执。
答案1
答案2
解决此问题的一个非常简单的方法是直接转到System Preferences
> Network
> Advanced
> TCP/IP
,然后为 DHCP 客户端 ID 编写任何旧名称(位于“续订 DHCP 租约”按钮下方)。
答案3
有一篇关于如何自定义终端提示的精彩文章,请访问OSX日报不确定你的改变究竟是什么原因,但自定义它会让你恢复正常……或者如果你喜欢的话,可以恢复成其他的样子 :)
我将引用下面的一些文章内容:
Mac OS X 中的默认命令行提示符如下:
ComputerName:CurrentDirectory User$ or MacBook:~/Desktop Admin$
有点无聊而且不是最好的,对吧?更改起来相当容易。我们假设您使用默认的 bash shell,因此您将
.bashrc
默认编辑该文件,或者.profile
如果您安装了 fink 则编辑该文件。在终端提示符下,输入:nano .bashrc
现在输入:
export PS1=" "
在引号之间,您可以添加以下行来自定义终端提示符:
\d – Current date
\t – Current time
\h – Host name
\# – Command number
\u – User name
\W – Current working directory
(即:桌面版/)\w – Current working directory
,完整路径(即:/Users/Admin/Desktop)因此,假设您希望终端提示显示用户,然后是主机名,然后是目录,.bashrc 条目将是:
export PS1="\u@\h\w$ "
看起来会像这样:
Admin@MacBook~Desktop/$ "