ubuntu如何關閉圖形介面,啟動文字模式

sole_cc發表於2015-01-14

背景知識   
1、Ubuntu執行級別    
Linux 系統任何時候都執行在一個指定的執行級上,並且不同的執行級的程式和服務都不同,所要完成的工作和要達到的目的都不同,系統可以在這些執行級之間進行切換,以完成不同的工作。    
Ubuntu 的系統執行級別:    
*0:關機級別    
*1:單使用者執行級別,執行rc.sysinit和rc1.d目錄下的指令碼    
*2:多使用者,但系統不會啟動NFS,字元模式,在有些linux系統中,級別2為預設模式,具有網路功能,如ubuntu.debian    
*3:多使用者,字元模式,系統啟動具有網路功能,redhat常用執行級別    
*4:使用者自定義級別    
*5:圖形介面模式,redhat常用執行級別    
*6:重啟級別    
*S:單使用者執行級別,只執行rc.sysinit檔案    

2、檢視當前執行級別,執行命令:    
runlevel    
( runlevel 顯示上次的執行級別當前的執行級別,“N”表示沒有上次的執行級別。)   

3、切換執行級別,執行命令:     
init [0123456Ss]    
( 即在 init 命令後跟一個引數,此引數是要切換到的執行級的執行級代號,如:用 init 0 命令關機;用 init 6 命令重新啟動。)

圖形介面下的控制檯切換   
crtl+alt+F1~F7
F1~F6是6個字元介面的控制檯,F7返回圖形介面控制檯



從圖形介面轉到文字介面的方法:

方法一:

對於12.04的ubuntu桌面系統,如果想在開機的時候直接進入字元介面,那可以:

編輯檔案 /etc/init/lightdm.conf,在第12行附近,原句“ and runlevel[!06]” 改為“ and runlevel[!026]”即可,之後如果想切換到圖形介面,那再執行:startx 就可以了!

(sudo init 3不行,還是圖形介面,沒什麼變化
sudo service stop lightdm 圖形介面會關閉,卡在check battery那裡)

原理:

ubuntu 12.04預設的開機會進入一個圖形介面,用命令pstree可以看到圖形介面所在的程式樹:


首先要做的,就是阻止這個lightdm的程式開機啟動。 做法:

一、檢視檔案/etc/init/rc-sysinit.conf,在第14行附近:確認“env DEFAULT_RUNLEVEL=2”。2是新裝系統預設的,確保不被修改。

二、編輯檔案 /etc/init/lightdm.conf,在第12行附近,原句“ and runlevel [!06]” 改為“ and runlevel [!026]”。

解釋:linux系統都有一個執行級別(runlevel)的概念,不同的執行級別配置將導致系統的啟動過程有很大差異,比如當配置 runlevel 為 1 是,是不進入圖形介面的。系統啟動過程中會有一個init程式來拉起許多其他程式(各種系統服務,視窗介面)。在ubuntu上(11.10,12.04是這樣,其他版本或其他linux發行版不確定)init會執行兩個目錄下的指令碼,一個是/etc/init/下的,另一個是/etc/rc?.d/下的,問號可能是0~6的其中一個數字,代表執行級別。接下來,講解一下流程以加深理解。

在ubuntu上,init程式首先執行/etc/init/目錄下的rc-sysinit.conf,這個檔案指明瞭本次啟動的預設執行級別。這是上面第一步的意義:確保預設執行級別是2。接下來目錄/etc/init下的其他指令碼的執行都會根據不同的執行級別做出不同的動作,比如lightdm會判斷執行級別是否處於1,2,3,4,5中的一個,是則啟動lightdm,不是則不啟動lightdm。這便是上面第二步的意義,修改 lightdm.conf ,把“2”加入到判斷語句,使得lightdm在執行級別2的時候不要啟動。明白了這些,你就可以靈活一點,例如把預設級別設定為3,而把3加入那個判斷語句,也可以達到阻止lightdm啟動的效果。完成了/etc/init/目錄下的啟動動作,init 程式會繼續執行/etc/rc2.d目錄下的指令碼。


方法二:

sudo vi /etc/default/grub
# 把以”GRUB_CMDLINE_LINUX_DEFAULT=“開始的行改成:
GRUB_CMDLINE_LINUX_DEFAULT="text",
# 重設grub引導
sudo update-grub
# 重啟
sudo reboot

額外的小知識:

關閉Ubuntu的載入畫面

ubuntu啟動時,會有一個ubuntu字樣出現在螢幕,文字下方有閃爍的點,這時按ESC可以在動畫和文字介面之間切換。這一步驟不屬於lightdm,而是一個叫 plymouth 的程式在起作用。實際上,plymouth的意義就在於,在開機到圖形桌面 (lightdm)起來這段時間裡展示出一個動畫,從而提高使用者體驗。

遮蔽的方法:

一、編輯 /etc/default/grub 檔案,原文11行附近:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" 

去掉”splash“,改後:

GRUB_CMDLINE_LINUX_DEFAULT="quiet"

二、執行命令:

sudu update-grub

重啟,即可看到,不再有載入畫面出現了。

(來自:http://blog.csdn.net/dlutxie/article/details/8633721 seamus這篇文章還有其他很多有用的小知識)


參考文章:http://blog.sina.com.cn/s/blog_66439a3e0101dkef.html

http://blog.csdn.net/dlutxie/article/details/8633721

相關文章