1. 程式人生 > >ubuntu輸入密碼登入後閃一下,無法進入系統

ubuntu輸入密碼登入後閃一下,無法進入系統

現象:在Ubuntu登陸介面輸入密碼之後,黑屏一閃並且出現了check battery state之類的文字之後,又跳轉到登入介面。
原因:主目錄下的.Xauthority檔案擁有者變成了root,從而以使用者登陸的時候無法都取.Xauthority檔案。
說明:Xauthority,是startx指令碼記錄檔案。Xserver啟動時,讀檔案~/.Xauthority,讀入對應其display的記錄。當一個需要顯示的客戶程式啟動呼叫XOpenDisplay()也讀這個文 件,並把找到的magic code 傳送給Xserver。當Xserver驗證這個magic code正確以後,就同意連線啦。觀察startx指令碼也可以看到,每次startx執行,都在呼叫xinit以前使用了xauth的add命令添加了一個新的記錄到~/.Xauthority,用來這次執行X使用認證


解決方法:我們需要將.Xauthority的擁有者改為登陸使用者(或者乾脆將.Xauthority刪除,此法轉自網上,本人未驗證)
開機後在登陸介面按下shift + ctrl + F1進入tty命令列終端登陸後輸入:(本人的使用者名稱為hp,因此chown後面跟了hp:hp若為其他使用者名稱修改成相應的名稱即可)

$ cd ~
$ sudo chown hp:hp .Xauthority

然後再次輸入:

ls .Xauthority-l

成功後顯示如下:
-rw------- 1hp hp80  1月 27 10:41 .Xauthority

此時擁有者已經變為使用者。按下shift + ctrl + F7切換回圖形登陸介面登陸即可。