突然,今天早上,我打開一個終端窗口,然後得到了這個信息:
我沒有名字!@macbook:〜$ whoami502
**我不是數字!我是人類! **
有什麼用?有人知道我需要做些什麼才能找回我的名字嗎?
我想這裡有兩個問題,一個是我的主機名未定義,另一個是whoami將我的名字報告為數字。
突然,今天早上,我打開一個終端窗口,然後得到了這個信息:
我沒有名字!@macbook:〜$ whoami502
**我不是數字!我是人類! **
有什麼用?有人知道我需要做些什麼才能找回我的名字嗎?
我想這裡有兩個問題,一個是我的主機名未定義,另一個是whoami將我的名字報告為數字。
內存中的某些內容已損壞,並且您的用戶ID(502)和用戶名(ipd)之間的映射丟失了。我已經看到了這種情況的發生(通常是當我手動殺死掛起的系統進程時),儘管我不確定是什麼原因造成的。可能會啟動
?
由於映射丟失, whoami
無法將您的ID轉換為用戶名,因此會返回ID,並且您的提示默認為“我沒有名字!”消息,因為您實際上沒有名字。
註銷並重新登錄可能會解決,但重新啟動是最好的方法(如您所見)。
基本上,這是另一個問題的徵兆,而不是其本身的問題。
我看到它是一個舊線程,但這是解決此問題的方法(無需重新啟動整個計算機)。
問題出在 opendirectoryd
守護程序和最早報告的日期為2011年初。重新啟動守護進程(通過“快速用戶切換”以管理員身份切換用戶)可以解決問題。
在撰寫此答案時,我發現了此處中有一個類似的問題,也涵蓋了我的答案。
從待機狀態恢復(即打開筆記本電腦)時,這是隨機發生的。註銷或重新引導是我修復它的唯一方法。我不知道是什麼原因造成的。當我輸入時,它正在發生。正如原始帖子中的評論所要求的那樣,我運行了 id -p
並崩潰了。 (崩潰報告: http://pastebin.com/nmFFQELq)
控制台命令:
whoami
-返回501
id -p
—崩潰
cat / etc / passwd
—我的用戶不在文檔中。
任何ssh嘗試都會失敗,並顯示以下錯誤:
您不存在,請走開!
我還從喚醒中籤出了控制台向上,從Dropbox之類的程序中出現了一堆隨機的“套接字未連接”錯誤(我認為這可能是正常的,因為無線網絡無法立即連接)。不過,會出現一個有趣的錯誤:
12/12/4 8:37:09.045 PM coreservicesd:_scserver_ServerCheckin:客戶端uid驗證失敗; getpwuid(501)== NULL
12/12/4 8:37:09.400 PM coreservicesd:_scserver_ServerCheckin:客戶端uid驗證失敗; getpwuid(501)== NULL
仍然不確定是什麼原因引起的,但是我認為我會分享這些診斷信息。
我正在使用2009年中的MacBook Pro已安裝10.7.3。
查看文件 / etc / passwd
的權限是否設置如下:
-rwxr--r-
是因為它從 passwd
文件中讀取用戶名。
我通過使用iterm => preferences => URL_handler並將whoami連接到我的用戶名..解決了問題,在iterm上重啟後,問題不再存在
我今天遇到了同樣令人困惑的問題(Lion 10.7.5),並且 dscacheutil -flushcache
為我解決了這個問題,如一些博客中的評論所建議的。
我的問題是passwd存檔中的權限,舊的權限是-rw ------- 1 root root 1280 Jun 9 15:41 passwd我使用了命令“ chmod a + r / etc / passwd”,現在-rw-r--r-- 1 root root 1280 Jun 9 15:41 passwd註銷該用戶並嘗試。=)