今天,在學習了編程兩個多月后遇到的第一個菜鳥技術問題,解決后有一種興奮和迷茫。
言歸正傳,說說遇到的問題和解決方案。
在Ubuntu14.04中,按照linux的傳統做法(基於redhat),在root下輸入了startx並enter,結果出現了一個沒有任何圖標的界面,沒有任何命令可以輸入,於是選擇重啟,那么問題來了。
重啟后進入登錄界面,但是正確輸入密碼后還是輸入密碼的無限循環,糾結、、、Google、百度后發現原來有好多菜鳥也有同樣的問題,於是對此問題進行了探討學習。
先說解決方案:
(1)ctrl+alt+F1(或2、3、4、5、6),進入控制台界面
(2)然后輸入用戶名和密碼(這一步驟很容易忽略,而出現錯誤)
(3)cd / 然后進入到根目錄下
(4)rm -rf .Xaut* 使用rm命令刪除由於startx命令產生的多余文件
(5)ctrl+alt+F7 返回到初始界面,輸入密碼登錄
因為:在tty執行startx會生成的一個文件,ubuntu的登陸器是lightdm,這個登陸器發現你home目錄里有這個文件就會死循環,讓你無限輸入密碼。
startx 是用來啟動X windows服務的。在Ubuntu下慎用,會崩潰。具體的原理還不是很清楚。
注:此方案並非原創,借鑒於很多資料,並不能聯系到原作者,故此網址附上網址,希望不會出現侵權問題
(1)http://blog.csdn.net/ww_bin/article/details/46461675
(2)http://www.2cto.com/os/201405/297792.html
(3)http://blog.sina.com.cn/s/blog_63237e350100ojkr.html
為了研究問題出現的原因,在Linux社區 作者:hding99的文章(http://www.linuxidc.com/Linux/2012-12/76404.htm)中得到了一些關於運行級別init答案:
運行級別
傳統上,linux有幾種不同的運行級別,包括如下幾種:
# 0 - 停機
# 1 - 單用戶模式
# 2 - 多用戶,沒有 NFS
# 3 - 完全多用戶模式(標准的運行級)
# 4 – 系統保留的
# 5 – X11 (x window)
# 6 - 重新啟動
系統啟動后處於哪一種級別由init讀取/etc/inittab文件中的缺省級別設置來確定,一半圖形界面的系統是進入級別3。
但是ubuntu與傳統的不太一樣,默認情況下是找不到/etc/inittab文件的,而且運行級別也有差別,具體分這樣幾個級別:
# 0 – 關閉系統
# 1 – 單用戶模式
# 2~5 – 完整的多用戶模式
# 6 – 重新啟動
也就是說,默認情況下級別2、3、4、5都是一樣的,同時系統的默認級別設定也不是在inittab文件中,而是寫在/etc/init/rc- sysinit.conf文件中。打開此文件,可以找到下面一句:
env DEFAULT_RUNLEVEL=2
這表明系統當前默認是進入級別2。
對此的一點感想:不同的平台如ubuntu、redhat等雖然都是基於linux內核的linux系統,但是,還是有所差別,還有待深入研究。
注:學習編程的第一篇博客隨感,如果哪一天被大神看到,還請指點一二、、、哈哈哈
日期:2016年8月20日