最初的問題
我一直遇到一個零星的問題,我的Mac似乎“忘記”了我的主目錄。
第一個線索(因為這是我經常做的事情)始終是Google Chrome無法打開新標籤頁。我得到“哦按扣”錯誤屏幕。這導致我退出Chrome並重新啟動它,進而導致出現此錯誤對話框,此後Chrome無法啟動:
其他症狀
許多其他需要主目錄知識的事情也會失敗:
- 當我打開某些Apple應用程序(例如,預覽,便箋,消息)時,系統提示我一個對話框,提示該對話框需要修復我的主目錄並要求我進行身份驗證。在此處輸入密碼會導致
/ var / empty / Library
的所有者更改為我(從長遠來看這很糟糕,但允許某些事情開始起作用)。 - 單擊時Safari根本不會打開-它會在擴展塢中短暫出現然後消失,沒有“崩潰報告”對話框(儘管我不能說處於這種狀態的系統是否知道我喜歡查看那些對話框) )。
- 即使在“修復我的媒體庫”之後,許多應用也無法打開:
- 預覽:出現Finder對話框:無法打開應用程序“預覽”。
- Chrome:與以前相同的錯誤對話框,如上圖所示
- 注意:停靠圖標出現,然後消失。
- 修復我的媒體庫後,某些以前無法打開的應用現在可以打開,其中許多忘記了我的設置:
- Safari(我在研究時正在使用它寫這個問題)
- BBEdit
- Pixelmator
- 註釋
- 某些應用似乎不受庫權限的影響:
- 控制台
- 系統偏好設置
- 鑰匙串訪問
- 除非使用Grab或按住Control將屏幕截圖寫入剪貼板,否則我無法拍攝屏幕截圖(因為它沒有對
/ var / empty / Desktop
的寫權限,這是正確的由根擁有)。 - 在“打開”和“保存”對話框中,它沒有在邊欄中顯示我的主目錄,也沒有顯示其中的任何常用目標位置(桌面,文檔等)。
- 激活屏幕保護程序後,將顯示系統默認設置(Flurry),而不是我的常規設置(“經典”指向我選擇的照片目錄)。
- 終端使用默認的顏色/字體/等設置,而不是我的自定義設置。
還有其他事情似乎運行良好:
- 時間機器
- 聚光燈
- 熱門角落
自從我的工作機器發布後幾天升級到High Sierra以來,到目前為止已經發生了三遍。
研究
研究似乎表明macOS不會認為我的主目錄是 / var / empty
,而是它不知道我是have一個主目錄,並且某個地方存在一些後備邏輯,該邏輯會使系統對沒有主目錄的任何用戶使用/ var / empty。 (來源:是否可以創建沒有主目錄的用戶?)
進一步的研究表明/ var / empty作為不應該訪問任何內容的用戶的“安全監獄”存在(這就是為什麼更改權限或在其他位置進行符號鏈接很不好的原因)。 (來源: https://serverfault.com/questions/116632/what-is-var-empty-and-why-is-this-directory-by-sshd)
根據過去的情況,重新啟動可以解決問題(直到下次發生)。 一旦我提交了這個問題,我將嘗試斷開/重新連接網絡電纜並註銷以查看是否有任何幫助;我將返回並相應地編輯本段。 strike> Update:我斷開並重新連接了網絡電纜,然後重新啟動Finder。 Chrome可以再次使用,並且所有其他症狀似乎也已解決!當然,這可以減輕發生此問題時的痛苦,但是我仍然非常想理解並防止根本原因。
我從終端上看不到的東西似乎都顯示出了問題:
最後登錄時間:ttys000上的11月13日星期一13:21:18
jrobb @ oke-jrobb-mb:〜%pwd
/用戶/ jrobb
jrobb @ oke-jrobb-mb:〜%cd / var /空
jrobb @ oke-jrobb-mb:/ var / empty%ls -la
總共24
drwxr-xr-x 8個jrobb員工256B 10月20日16:32 ./
drwxr-xr-x 27根輪864B 10月20日14:49 ../
-rw-r--r-@ 1個root員工10K Oct 20 20:32 .DS_Store
drwx ------ 2個root員工64B Oct 14 05:52 .ssh /
drwx ------ 4個root員工128B 10月9日13:22桌面/
drwx ------ 3個根人員96B Sep 25 15:46 Documents /
drwx ------ 3個根人員96B Sep 25 15:46下載/
drwx ------ + 28個root員工896B Nov 13 13:37 Library /
jrobb @ oke-jrobb-mb:/ var / empty%whoami
羅伯
jrobb @ oke-jrobb-mb:/ var /空%echo $ HOME
/用戶/ jrobb
jrobb @ oke-jrobb-mb:/ var /空%
High Sierra的集成日誌記錄使Console.app成為夢night以求的夢,但是儘管如此,我還是花費了大量時間尋找相關消息。我發現了一些似乎是由問題引起的錯誤,但似乎沒有一個是問題引起的。我懷疑這是由於以下事實造成的:您無法將所有子系統中所有消息的無盡流滾動回到打開控制台之前,並且沒有明顯的方式一次可以搜索多個文件,除非您要搜索上述僅轉發流。一切正常時,我沒有運行Console,所以我想我很走運嗎? (非常感謝您在此提供的幫助/建議。)
我還看到許多其他人遇到相同問題的情況,可以追溯到2014年(10.9小牛)。以下是與遇到相同或相關問題的其他人的一些鏈接,對於這些鏈接,尚沒有令人滿意的解決方案:
- https://www.jamf.com/jamf-nation/discussions/22851/active-directory-user-home-directory-set-to-var-empty
- 至少有一個Jamf用戶在那裡找到了解決方案(選中了Directory Utility中的“創建移動帳戶之前需要確認”複選框,並且當出現確認對話框時,用戶單擊了“否”)。這些複選框已在我的系統上選中,但我從未見過(也不拒絕)這樣的確認對話框,因此我認為情況並非如此。但是,這不是共享計算機,因此現在未選中這些框。
- https://arstechnica.com/civis/viewtopic.php?f=19&t=1239175
- 對此線程從來沒有任何回复,所以我抓住了一個機會,問這個用戶是否發現了問題。還沒有答案。
- https://superuser.com/questions/721623/could-not-create-directory-var-empty-ssh
對於那些擁有“解決方案”的人來說,它們似乎真的是創可貼,它們暴露出明顯的安全漏洞:
- 符號鏈接
/ var / empty
到正確的主目錄 -
chown _user_ / var / empty
- 依此類推
上下文
我正在使用運行High Sierra的2013年末iMac(Core i7 3.9GHz,32GB RAM,1TB SSD)(始終是最新的修補版本;此版本從10.13.0開始,現在影響10.13.1)。這是由Jamf管理的設備,我向Active Directory域進行身份驗證。我在“用戶和組”首選項中的個人資料被標記為“管理員,託管,移動”。
升級到High Sierra之後,我們就開始在我工作的Jamf那里工作,因此這可能是Jamf問題或High Sierra問題(或者,實際上是其他任何問題)。
還有許多其他Mac用戶,許多其他High Sierra用戶和許多其他Jamf用戶;據我所知,沒有其他用戶遇到此問題。我是唯一的iMac用戶-這裡的所有其他Mac都是筆記本電腦。 (我很難想像我的iMac是問題所在-只是徹底。)
此問題開始在用戶會話的中間發生。一切都很好,直到突然變得不妙。因此,我認為這與登錄名或Active Directory沒有任何關係。
我在尋找什麼
我正在尋找一個解決方案,以防止macOS首先進入這種狀態,並希望解釋其發生的時間和方式。