中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
ubuntu 12.04運(yùn)行級(jí)別

<轉(zhuǎn)>ubuntu 12.04設(shè)置開(kāi)機(jī)啟動(dòng)圖形應(yīng)用程序,替換默認(rèn)圖形桌面

想把ubuntu 12.04的開(kāi)機(jī)設(shè)置模式改為默認(rèn)為命令方式,搜索半天,現(xiàn)將成功的方法轉(zhuǎn)出,并感謝作者。

http://blog.csdn.net/liebergott/article/details/7793408 我只用了設(shè)置run level內(nèi)容,其他未驗(yàn)證,保留以為后用。

一、前言

無(wú)論你想要在ubuntu 12.04(11.10適用)開(kāi)機(jī)啟動(dòng)圖形程序,或者非圖形程序,相信這篇文章能幫上大忙。

我將根據(jù)我的需求講解我的做法,并解釋為什么這么做。完了以后,各位看官根據(jù)自己的需求不加修改或稍加修改即可適用。我這邊,總得來(lái)說(shuō),需求是做一個(gè)RDP瘦客戶(hù)端,在一個(gè)板子上裝上ubuntu 12.04,然后要這個(gè)系統(tǒng)啟動(dòng)后能立即彈出RDPclient登錄框,而不是進(jìn)入ubuntu的圖形桌面。

二,三部分講解我是怎么做的,四部分總結(jié)設(shè)置程序?yàn)殚_(kāi)機(jī)啟動(dòng)的方法,五部分主要針對(duì)需要把圖形界面程序弄成開(kāi)機(jī)啟動(dòng)的同學(xué),講解startx。

第六部分為后來(lái)補(bǔ)充的:如何關(guān)閉ubuntu的啟動(dòng)時(shí)載入畫(huà)面(“l(fā)oading screen”)。


二、阻止默認(rèn)圖形桌面啟動(dòng)

ubuntu 12.04默認(rèn)的開(kāi)機(jī)會(huì)進(jìn)入一個(gè)圖形界面,用命令pstree可以看到圖形界面所在的進(jìn)程樹(shù):


首先要做的,就是阻止這個(gè)lightdm的進(jìn)程開(kāi)機(jī)啟動(dòng)。 做法:

一、查看文件/etc/init/rc-sysinit.conf,在第14行附近:確認(rèn)“env DEFAULT_RUNLEVEL=2”。2是新裝系統(tǒng)默認(rèn)的,確保不被修改。

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

解釋?zhuān)簂inux系統(tǒng)都有一個(gè)運(yùn)行級(jí)別(runlevel)的概念,不同的運(yùn)行級(jí)別配置將導(dǎo)致系統(tǒng)的啟動(dòng)過(guò)程有很大差異,比如當(dāng)配置 runlevel 為 1 是,是不進(jìn)入圖形界面的。系統(tǒng)啟動(dòng)過(guò)程中會(huì)有一個(gè)init進(jìn)程來(lái)拉起許多其他進(jìn)程(各種系統(tǒng)服務(wù),窗口界面)。在ubuntu上(11.10,12.04 是這樣,其他版本或其他linux發(fā)行版不確定)init會(huì)執(zhí)行兩個(gè)目錄下的腳本,一個(gè)是/etc/init/下的,另一個(gè)是/etc/rc?.d/下的,問(wèn)號(hào)可能是0~6的其中一個(gè)數(shù)字,代表運(yùn)行級(jí)別。接下來(lái),講解一下流程以加深理解。

在ubuntu上,init進(jìn)程首先執(zhí)行/etc/init/目錄下的rc-sysinit.conf,這個(gè)文件指明了本次啟動(dòng)的默認(rèn)運(yùn)行級(jí)別。這是上面第一步的意義:確保默認(rèn)運(yùn)行級(jí)別是2。接下來(lái)目錄/etc/init下的其他腳本的執(zhí)行都會(huì)根據(jù)不同的運(yùn)行級(jí)別做出不同的動(dòng)作,比如lightdm會(huì)判斷運(yùn)行級(jí)別是否處于1,2,3,4,5中的一個(gè),是則啟動(dòng)lightdm,不是則不啟動(dòng)lightdm。這便是上面第二步的意義,修改 lightdm.conf ,把“2”加入到判斷語(yǔ)句,使得lightdm在運(yùn)行級(jí)別2的時(shí)候不要啟動(dòng)。明白了這些,你就可以靈活一點(diǎn),例如把默認(rèn)級(jí)別設(shè)置為3,而把3加入那個(gè)判斷語(yǔ)句,也可以達(dá)到阻止lightdm啟動(dòng)的效果。完成了/etc/init/目錄下的啟動(dòng)動(dòng)作,init 進(jìn)程會(huì)繼續(xù)執(zhí)行/etc/rc2.d目錄下的腳本。


三、設(shè)置自己的程序?yàn)殚_(kāi)機(jī)啟動(dòng)

阻止了lightdm的啟動(dòng)之后,還要做的就是把我的RDPClient設(shè)置為開(kāi)機(jī)啟動(dòng)。做法:

一、在目錄/usr/bin下,有個(gè)文件startx,在當(dāng)前目錄復(fù)制出一份來(lái),命名為mystartx(cp startx mystartx)。編輯mystartx,在文件末尾有一行“xinit "$client" $clientargs -- "$server" $display $serverargs”,在這一行的前面加入一行"client="/root//myRdpClient/myRdpClient.py"。

二、編輯文件/etc/rc.local,在"exit 0"前添加一行:/usr/bin/mystartx。

解釋?zhuān)旱谝徊嚼铮抑谱髁艘粋€(gè)啟動(dòng)RDPClient的腳本,第二步里,我把這個(gè)腳本設(shè)置為開(kāi)機(jī)啟動(dòng)。制作RDPClient或其他圖形應(yīng)用程序的啟動(dòng)腳本請(qǐng)看本文的第五部分,第四部分講解開(kāi)機(jī)啟動(dòng)的方法和注意事項(xiàng)。


四、添加開(kāi)機(jī)啟動(dòng)程序的方法及其注意事項(xiàng)

對(duì)于開(kāi)機(jī)啟動(dòng)程序,需要關(guān)注4個(gè)地方(排序有分先后):1.目錄 /etc/init/ 下的所有conf都會(huì)被init進(jìn)程首先執(zhí)行。2.運(yùn)行級(jí)別為2的時(shí)候,目錄 /etc/rc2.d/ 下的所有腳本會(huì)其次執(zhí)行,其他運(yùn)行級(jí)別雷同。3.文件/etc/rc.local里的命令會(huì)得到執(zhí)行。4.在文件/etc/crontab里面配置為@reboot的命令會(huì)得到執(zhí)行。
以下分別講解每個(gè)地方該怎么做。

1.在/etc/init/目錄下添加開(kāi)機(jī)啟動(dòng)程序的方法。該目錄下新建文件myrdpclient.conf。將下面的內(nèi)容拷貝至文件保存即可。

start on login-session-start

script

     /usr/bin/mystartx
end script

這樣init進(jìn)程就會(huì)啟動(dòng)的時(shí)候執(zhí)行/usr/bin/mystartx。之前我解釋運(yùn)行級(jí)別(runlevel)的時(shí)候,說(shuō)這個(gè)目錄下的是腳本,是不想在那個(gè)地方廢話。其實(shí),這個(gè)目錄下的 .conf 文件是供init進(jìn)程讀取的配置文件,每個(gè)配置文件的內(nèi)容包含兩個(gè)內(nèi)容,一是一段腳本在告訴init要啟動(dòng)哪個(gè)程序,即指定一個(gè)job,或者說(shuō)任務(wù);二是一些標(biāo)簽(如“start on”)表明這個(gè)程序在什么時(shí)候啟停。首先被讀取執(zhí)行的是rc-sysinit.conf。關(guān)于具體該如何寫(xiě)一個(gè)conf文件來(lái)讓init在適當(dāng)?shù)臅r(shí)候運(yùn)行某個(gè)程序請(qǐng)自行搜索,我給出個(gè)這個(gè)配置是個(gè)非常簡(jiǎn)單的配置,如果你需求不多的話,把/usr/bin/mystartx 替換為你的程序就夠了。

2.在/etc/rc2.d目錄下添加開(kāi)機(jī)啟動(dòng)程序的方法。執(zhí)行命令:

ln -s /usr/bin/mystartx  ./S99mystartx

這個(gè)命令將會(huì)該目錄下建立一個(gè)指向/usr/bin/mystartx 的鏈接,這樣init在啟動(dòng)時(shí)就會(huì)執(zhí)行這個(gè)鏈接指向的命令。那個(gè)S99打頭的命名規(guī)則,我其實(shí)不清楚其意義是什么,大約是在標(biāo)明啟動(dòng)優(yōu)先級(jí)??傊?,你只需要將/usr/bin/mystartx替換為你想要執(zhí)行的命令(你的程序),同時(shí)鏈接的名字以"S99"為前綴即可。

3.在/etc/rc.local文件里添加啟動(dòng)程序,在“exit 0”之前寫(xiě)上你的命令就可以了,我正是這么做的。

4.在文件/etc/crontab里添加開(kāi)機(jī)啟動(dòng)程序,編輯該文件,在文件末尾添加一行:

@reboot   root  /usr/bin/mystartx

這樣你的程序會(huì)被一個(gè)叫 cron 的例程拉起(而不是 init ),實(shí)際上,是 init 在啟動(dòng)過(guò)程中啟動(dòng)啦 cron 例程,而 cron 例程通常在系統(tǒng)中做一些定時(shí)作業(yè),通過(guò)配置也可以讓 cron 在啟動(dòng)時(shí)做一些作業(yè)。

 

 


所以,如果你要添加自己的開(kāi)機(jī)啟動(dòng)程序,以上四個(gè)地方都可以,其中要大家注意的幾點(diǎn):

一、前兩種方法可能是不穩(wěn)妥的,因?yàn)檫@兩個(gè)階段是系統(tǒng)啟動(dòng)階段,你添加的程序若對(duì)系統(tǒng)某些服務(wù)有依賴(lài),將導(dǎo)致你的程序出現(xiàn)錯(cuò)誤,比如我的RDPclient會(huì)出現(xiàn)段錯(cuò)誤。

二、第三種方法,添加到/etc/rc.local里面,是網(wǎng)上出現(xiàn)最多的答案,這也是我采用的方法。。事實(shí)上,rc.local是系統(tǒng)特地為用戶(hù)提供的一個(gè)添加開(kāi)機(jī)啟動(dòng)程序的接口。需要注意的是,并非每個(gè)運(yùn)行級(jí)別都會(huì)運(yùn)行rc.local,在ubuntu 里只有2,3,4,5運(yùn)行級(jí)別會(huì)執(zhí)行,所以如果運(yùn)行級(jí)別設(shè)置不對(duì)的話,你寫(xiě)在rc.local里的命令可能就不能如期執(zhí)行了。如果你對(duì)rc.local如何被執(zhí)行感興趣的話讀下面。實(shí)際上運(yùn)行rc.local是rc2.d目錄下所有腳本中的最后一個(gè)腳本。接下來(lái)證明這點(diǎn),可以在rc2.d目錄下執(zhí)行命令:ls -l:

S99rc.local -> ../init/rc.local

可以看到,rc2.d目錄下的S99rc.local是一個(gè)到 /etc/init.d/rc.local 的鏈接,運(yùn)行 S99rc.local 就是在運(yùn)行 /etc/init.d/rc.local ,而打開(kāi)這個(gè)文件發(fā)現(xiàn)里面的注釋?zhuān)?/font>

# Default-Start:     2 3 4 5
# Default-Stop:
# Short-Description: Run /etc/rc.local if it exist

實(shí)際上,就是在運(yùn)行 /etc/rc.local 。所以,執(zhí)行rc2.d目錄下的所有腳本,最后一步,就是執(zhí)行 /etc/rc.local 。其中的注釋同樣表明了只有2、3、4、5運(yùn)行級(jí)別會(huì)執(zhí)行rc.local,這是因?yàn)?,只有?、3、4、5對(duì)應(yīng)的 /etc/rc?.d 目錄才有運(yùn)行 rc.local 的鏈接。




五、制作圖形應(yīng)用程序啟動(dòng)腳本

對(duì)于要開(kāi)機(jī)啟動(dòng)非圖形界面的同學(xué)來(lái)說(shuō),事情是非常簡(jiǎn)單的,在rc.local里添加你的命令即可(或者使用第四部分的其他方法)。之前的阻止lightdm啟動(dòng)你都不需要做,做了也無(wú)妨。至于運(yùn)行級(jí)別,你沒(méi)動(dòng)過(guò)的話應(yīng)該是2,是ok的。

對(duì)于要啟動(dòng)圖形化界面的同學(xué),要知道為什么我在startx里面添加一行,設(shè)置為開(kāi)機(jī)啟動(dòng),同時(shí)屏蔽lightdm的啟動(dòng),就可以達(dá)到目的,可能還需要進(jìn)一步的說(shuō)明。

在linux里,要運(yùn)行圖形界面,需要同時(shí)有 X server(或者叫X11 server,"11"是當(dāng)前的版本號(hào)), 和X client,這是 x windows 工作的模式(據(jù)說(shuō)以后會(huì)改成wayland什么的,那是后話)。X server在目錄 /etc/X11 下,X server啟動(dòng)后的進(jìn)程名字叫 Xorg ,如果你的系統(tǒng)啟動(dòng)了圖形桌面。那么運(yùn)行命令 pstree 一定可以看到Xorg,正如我在第一部分的貼圖里顯示,在那里,Xorg 是被 lightdm 拉起來(lái)的。

所以,如果ubuntu系統(tǒng)要跑圖形程序,不管是它的默認(rèn)圖形桌面lightdm,還是我的RDPClient,都必須先啟動(dòng) X server(Xorg),再啟動(dòng)圖形程序作為X client。沒(méi)有修改過(guò)的ubuntu的圖形桌面就是這樣啟動(dòng)的,從圖中你可以看到它先啟動(dòng)了Xorg,再啟動(dòng)了自己的一大堆metacity什么的。那么,我現(xiàn)在阻止了lightdm的啟動(dòng),要運(yùn)行RDPCLient,也同樣要分兩步:一、啟動(dòng)X server,二、啟動(dòng)RDPClient(作為X client)。

這看起來(lái)真難,因?yàn)槲移鋵?shí)也不知道如何啟動(dòng)X server。但是在 /usr/bin 下有一個(gè)腳本叫 startx 。這個(gè)腳本是個(gè)歷史遺留腳本,在過(guò)去的ubuntu,或者現(xiàn)在某些其發(fā)行版本linux,是這個(gè)腳本負(fù)責(zé)啟動(dòng)默認(rèn)的圖形桌面的。它會(huì)做兩件事,一、啟動(dòng)X11server,二,啟動(dòng)圖形桌面作為 X client。我可以拿這個(gè)腳本稍作修改,替換掉其中的圖形桌面為我的RDPClient就可以了,具體做法在第二部分。

為什么我不修改lightdm.conf來(lái)達(dá)到目的?lightdm也是做了兩件事,不是也可以替換它的X client為我的X client就可以了么?也許這樣是可以的,但是,lightdm.conf那個(gè)腳本,哥們兒,你去看看吧,我反正下不了手。反觀startx,startx的啟動(dòng)邏輯是非常清晰的,它通過(guò)執(zhí)行了一個(gè) xinit 命令來(lái)同時(shí)啟動(dòng)X server 和 X client,建議你使用命令“man xinit” 查看xinit的相關(guān)內(nèi)容。修改startx來(lái)達(dá)到目的比較容易,這就是為什么我不修改lightdm。

總結(jié),阻止lightdm啟動(dòng)默認(rèn)桌面,通過(guò)修改startx來(lái)制作一個(gè)腳本mystartx以啟動(dòng)X server和我的RDPClient,把mystartx搞成開(kāi)機(jī)啟動(dòng)。這是這樣!


六、關(guān)閉Ubuntu的載入畫(huà)面

ubuntu啟動(dòng)時(shí),會(huì)有一個(gè)ubuntu字樣出現(xiàn)在屏幕,文字下方有閃爍的點(diǎn),這時(shí)按ESC可以在動(dòng)畫(huà)和文字界面之間切換。這一步驟不屬于lightdm,而是一個(gè)叫 plymouth 的進(jìn)程在起作用。實(shí)際上,plymouth的意義就在于,在開(kāi)機(jī)到圖形桌面 (lightdm)起來(lái)這段時(shí)間里展示出一個(gè)動(dòng)畫(huà),從而提高用戶(hù)體驗(yàn)。

屏蔽的方法:

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

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" 

去掉”splash“,改后:

GRUB_CMDLINE_LINUX_DEFAULT="quiet"

二、執(zhí)行命令:

sudu updat-grub

重啟,即可看到,不再有載入畫(huà)面出現(xiàn)了。


以下引自 :http://hi.baidu.com/bihailan/blog/item/f12e78c8cb77821f7e3e6fba.html 感謝他的辛勤工作!


Ubuntu的默認(rèn)開(kāi)機(jī)的runlevel是2,可以用runlevel來(lái)查看當(dāng)前的默認(rèn)運(yùn)行級(jí)別。

debian系(ubuntu是基于debian)的Linux一直是用runlevel 2來(lái)默認(rèn)啟動(dòng),并且runlevel定義也與redhat有區(qū)別。

debian的runlevel級(jí)別定義如下:
0 - Halt
1 - Single
2 - Full multi-user with display manager (GUI)
3 - Full multi-user with display manager (GUI)
4 - Full multi-user with display manager (GUI)
5 - Full multi-user with display manager (GUI)
6 - Reboot

可以發(fā)現(xiàn)2~5級(jí)是沒(méi)有任何區(qū)別的。

######而redhat的runlevel級(jí)別定義如下:
######0 - Halt
######1 - Single
######2 - Not used/User definable
######3 - Full multi-user NO display manager
######4 - Not used/User definable
######5 - Full multi-user with display manager (GUI)
######6 - Reboot

對(duì)應(yīng)的配置文件夾如下:
/etc/rc0.d Run level 0
/etc/rc1.d Run level 1
/etc/rc2.d Run level 2
/etc/rc3.d Run level 3
/etc/rc4.d Run level 4
/etc/rc5.d Run level 5
/etc/rc6.d Run level 6

這里的runlevel3-5都是進(jìn)入圖形界面。這與其他的linux發(fā)行版不太一致,通常runlevel 3是Multi user mode,即直接登錄到字符界面;而runlevel 5是Multi user mode with GUI,即登錄到圖形界面

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶(hù)發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服