Ubuntu解決執行startx命令後出現登陸密碼正確但無法進入桌面問題
阿新 • • 發佈:2019-02-10
所謂,檢驗真理的標準只能是社會實踐,理論與實踐的統一是馬克思主義的一個最基本的原則,所以今天在深入理解X Windows的時候,我在Ubuntu14.04系統沒有備份的情況下直接進行實踐,敲入了startx命令後重啟系統,然後電腦就黑屏了,但是指示燈還亮著,我強制重啟後,正常進入登陸頁面,輸入正確的密碼之後,無法進入桌面,仍然跳轉回登陸頁面。
後來我搜索了關於startx這個指令的具體作用,作出瞭如下操作:
ctrl+alt+f3 #切換到控制檯
cd ~ #根目錄
rm -rf .Xaut*
ctrl+alt+f7 #返回登陸頁面,可以正常登陸
為什麼會進不去呢?首先要知道,ubuntu 的登陸器是lightdm,當時我在終端輸入
sudo service lightdm start
發現ubuntu反饋說:
lightdfm has already been started
我就奇怪了,明明進不去為何是已經開啟了呢?應該就是startx在發揮作用了,startx 是用來啟動X windows服務的,在tty執行startx的時候會生成一個檔案,這個是script檔案,主要負責載入和設定一些環境變數,最後執行xinit程式,而xinit程式是真正的x windows啟動程式。在startx執行過程中,不會經過gdm步驟,也就是沒有了語系的定義,自然也就不會有gdmgreeter的登陸視窗介面,從而直接startx後是不需要輸入使用者名稱和密碼的。具體更深層的原理還在探索中。
然而,就搞(理解)這個,一個工作日又過去了