linux下誤操作startx命令後,在登入介面進不去解決辦法

Pop_Rain發表於2017-06-03

問題描述:(參考連結,這裡把它複製過來,但是他的解決方案,親測失敗!!!)

給自己以前的電腦搗鼓了一個linux,然後給他搭配一些環境,然後就誤操作了startx命令,導致一直在登入頁面,輸入正確地使用者名稱和密碼也還是進不去,真是醉了,重啟了N次,並沒有什麼用處。。。

具體的現象為:

在紫紅色的登入介面輸入登入密碼後,一閃(其實大概就是黑屏了一秒鐘),然後就又回到了登入頁面,始終無法進入系統。。。

分析原因:

      經過一番搜尋,得出瞭如下的原因:原來是之前誤操作startx(其實也不算誤操作吧,就是在環境配置的某一步,隨意敲了一個startx,然後就醉了)之後,主目錄下的.Xauthority檔案的擁有者變成了root,從而使用者在登入的時候,無法讀取.Xauthority檔案,就會報timeout錯誤。

      說明:Xauthority,是startx指令碼記錄檔案。Xserver啟動時,讀檔案~/.Xauthority,讀入對應其display的記錄。當一個需要顯示的客戶程式啟動呼叫XOpenDisplay()也讀這個文 件,並把找到的magic code 傳送給Xserver。

       當Xserver驗證這個magic code正確以後,就同意連線啦。觀察startx指令碼也可以看到,每次startx執行,都在呼叫xinit以前使用了xauth的add命令新增了一個新的記錄到~/.Xauthority,用來這次執行X使用認證

解決辦法:(來自執行startx後Ubuntu密碼正確進不去的問題,這裡做了整理,直接看這裡吧!)

步驟如下

1,在登入介面按Ctrl+Alt+F3 切換到控制檯登陸,這裡要登入普通使用者,而不是root

2,命令:cd~

3,命令:rm -rf .Xaut* #注意空格大小寫rm_-rf_.Xaut*

4,最後:按Ctrl+Alt+F7回到登陸介面,輸入密碼正常登陸。

順便說說:

進不去的原因是什麼?

在tty執行startx會生成的一個檔案,ubuntu的登陸器是lightdm,這個登陸器發現你家目錄裡有這個檔案就會死迴圈,讓你無限輸入密碼。

stratx 命令是用來幹啥的?

startx 是用來啟動X windows服務的。在Ubuntu下慎用,原理還不是很清楚。

執行後在/home目錄下自動生成.Xauthority 目錄,導致出現上面的問題。


轉載自:http://www.jianshu.com/p/1e475cc38cbb

相關文章