1. 程式人生 > >解決Ubuntu無法登入(輸入正確使用者名稱和密碼仍跳回登入介面)

解決Ubuntu無法登入(輸入正確使用者名稱和密碼仍跳回登入介面)

現象:在Ubuntu登陸介面輸入密碼之後,黑屏一閃後,又跳轉到登入介面。
原因:主目錄下的.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命令列終端登陸後輸入:(本人的使用者名稱為v,因此chown後面跟v:v,若為其他使用者名稱修改成相應的名稱即可)
$ cd ~
$ sudo chown hp:hp .Xauthority
然後再次輸入:
ls .Xauthority -l
成功後顯示如下:
-rw------- 1 hp hp 80 1月 27 10:41 .Xauthority
此時擁有者已經變為使用者。按下shift + ctrl + F7切換回圖形登陸介面登陸即可。