歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

開機和關機

  開機 您或許會發現安裝完 Linux 之後,原來的 Windows 開機畫面不見了!那~~ 怎麼回去啊? 不知道不緊要啦。當機器開著之後,在您看到 RedHat 的開機選單,移動上下方向鍵選擇您要進入的系統就可以了;如果您這時候按 Ctl+X 鍵,則會得到 LILO Boot: 的提示(後面我們提到‘單人模式’的時候會用到),然後按 Tab 鍵,也可以看到開機的各項選擇。假如您的系統是按照前面的例子進行安裝的話,應該會看到 linux 和 win(您在安裝時所取的名稱) 這兩項。如果要進入 Linux,可以輸入 Linux 再 Enter,或直接按 Enter(因為此例中 Linux 被選擇為預設系統了);如果您要進入 Windows,可以輸入 win 再按 Enter。 tips:如果您原來的系統是 NT 的話,有一個要注意的地方,就是:當增加 linux partition 之後, 原先 NT 看到的 partition number 或許會有所變更,這需要修改 c:/boot.ini 才可以糾正過來。修改的時候,基本上您無需理會各句子前面的號碼,將 partition( ) 中的號碼換換試試,直到可以開機為止。 剛才提到的 LILO,是 linux 安裝在機器上面的系統載入程式,取名於 LInux LOader 的前兩個字母的組合。根據我們在安裝的時候所選擇,目前 LILO 安裝在系統的 MBR (Master Boot Record),也就是開機磁碟的第一個 Cylinder 之第一個 Sector 之上。MBR 所存放的 loader,是用來告訴機器在啟動之後要載入那個系統,和到哪裡載入。除了 LILO 之外,其實我們也有許多其它 loader 可以選擇,例如 NT 的 NT Loader、System Commander、Boot Magic、以及國人所寫的 spfdisk、等等。假如您已經采用別的 loader 而不是 LILO,那您在安裝的時候,就要確定您的 LILO 是裝在 /boot partition (所謂的 super block)上面而不是 MBR (後面我會介紹用 NT loader 來載入 Linux 的方法)。無論您用哪個 loader,也不管 LILO 裝在 MBR 還是 supper block,在一些新的大容量硬碟上面(通常超過 8G),要注意 /boot 分區所在位置不要超過 1024 磁柱的范圍。不過,新的 Linux 啟動程式都允許超出這個限制,只需確定磁碟使用 LBA 模式,以及在 LILO 上使用 lba32 選項就可以了(這個以後我們在談到 LILO 的設定時再說明)。 tips:假如您的 linux 開機分區裝在 slave 硬碟之上,開機的時候可能會遇到麻煩,請盡量避免。如果您真的必須如此,可以參考 Juniko 兄的文章: 撰寫於郵件 news:[email protected]... > ※ 引述《[email protected] (Harrier Knight)》之銘言: > > lilo 你說了這段話: > > > 問題解決了... > > > 就只是linux不可以放在第二個ide上 > > 這是目前 LILO 的限制吧? > > 嗯, 我目前是放在第二顆(hdd) IDE 上, boot 也在 hdd 上 > > 稍微修改一下 lilo.conf > > 加入 > > disk=/dev/hdd > bios=0x81 # 本來 hdd ,lilo 會讀成 0x82, 中間裝了兩台 Cdrom > # Why? i don't know, 我試著改成 0x80 也不行, 所以 > # 我猜0x81 指的是第二顆 IDEHD > # 以此類推, 第四顆 IDEHD 應該改成 0x83, 因為我沒有 > # 第四顆 HD, 所以沒辦法 test > > disk=/dev/hda > bios=0x80 #需不需要設定 /dev/hda 我不是很確定, > #因為一開始就設了, 也沒移除試過 (假如您還不會修改 lilo.conf,那就等日後我們介紹完 vi 和 LILO 的時候再回來不遲。) 有些朋友,在碰到多重系統安裝的時候,會覺得有些疑惑,或許只是對 OS loader 不甚了解而已,單純將安裝順序換成:先 windows 後 linux 就可以了。 為什麼?那要知道各 OS 放在 MBR 裡面的 loader 能力了。一般的 OS loader,都會提供開機選單,讓您選擇用什麼系統開機,以及開機系統放在硬碟的什麼位置上。比 如,linux 的 LILO 就有這個功能:它除了開 linux 之外,還提供一個選單,給您開Windows。但 windows 的 loader 卻不然,它的 loader 只能開 windows 而不讓您有選單開 linux。(真是不公平哦~~) 而 OS loader 一般都放在 MBR 位置上,也就是第一個 cylinder 的第一個 sector 上面,這樣,系統順利通過 BIOS 之後,就會到這裡讀入硬碟的開機資訊,也就是載入loader 。在 MBR 上面,每次只能放一個 loader,如果您先放 windows 的 loader,然後放 linux 的,MBR 的 loader 就變成是 LILO,那您就有一個選單來選擇開機系統。如果先灌 linux 再 windows,那 MBR 的 loader 是 windows 的,因而沒有選單選擇,只能進入 windows。


不過,linux 的 LILO,除了放在 MBR 之外,還可以放在 boot 的 partition 上面的第一個 block,也就是所謂的 superblock是也。那您在安裝的時候,就要將 LILO 裝在 boot 的 partition 上面;或是修改 /etc/lilo.conf ,將 boot=hda 改成boot=hda2 (假設您的 boot partition 是在 hda2 上面),然後再執行 lilo 命令就可以完成。 假如您真的將 LILO 裝在 superblock 上面,那您在 MBR 上面的 loader 必須有能力提供選單,而且能夠告訴系統到哪裡找到 LILO。抱歉,windows 的 loader 都沒有這個能力。其它諸如 partition magic 或 spfdisk 之類的 loader,則有這個功能,但前提條件是:您的 LILO 要裝在 superblock 上面。 當您在 LILO 選擇 linux之後,您會看到一大堆開機過程的報告,有興趣可以逐行看看(假如您眼睛夠快的話)。如果開機過程卡在某些服務上面而等上好幾分鐘的話,可能您的網路設定不正確,最常見的問題是 /etc/hosts 或 DNS沒設定好。為避免這些情況,請確定機器在開機的時候,啟動程式能夠能連得上指定的伺服器地址。 最終,您會看到 Login: 的提示,如果您的 X window 在安裝的時候設定好了,那麼登錄畫面會是圖形界面的。這時候您可以用 ‘ root ’進行登錄,然後輸入您在安裝時設定的 root 密碼。之後,整個 linux系統就是您的啦! tips:不過,任何時候,我們都不鼓勵直接用 root 登錄,因為它的權限太大,會在系統安全上構成威脅。我們通常是用普通用戶進行登錄(也就是安裝的時候所設定的帳號),然後真的碰到系統設定的時候,才用 su 或 sudo 命令切換為 root 身份執行。不過,這裡的例子,大部份是教您設定伺服器的,通常都需要 root 來執行,只是日後換到真正的工作系統之後,就請盡量避免用 root 來工作了。 至於機器如何從啟動到成功載入,如果我們對這個過程了解的話,相信在日後的管理,或遇到問題的時候會非常有幫助。下面不妨讓我們看看 linux 的開機過程和其中的一些選項。 Init & Run Level 系統的初始化步驟粗略如下: 1. 首先,當電源打開之後,機器會首先經過 POST 檢查,然後從 CMOS 載入 BIOS,以確定最基本的硬體架構,如時鐘和硬碟資訊等。 2. 然後會找到 MBR,載入 boot loader,以確定啟動哪一個作業系統。 3. 當作業系統選定之後,LOADER 會告訴機器到那裡載入作業系統的核心程式。 tips:關於 LILO 這個開機管理程式,本身的開機提示符號就非常有學問,不妨參考下面這篇錄自新聞群組的文章: "繼續頹廢" 撰寫於郵件 news:[email protected]... > ※ 引述《[email protected] (無雨的夏天)》之銘言: > > 灌完 Redhat 7.3 後, 沒有任何錯誤訊息 > > 重開機後只見 LI 就當機了 > > 請問是何問題. > > 似乎在哪有見過類似的說明 > > L 後當機 > > LI 後當機 > > LIL 後當機 > > 謝謝.. > > LILO 啟動訊息 > > 當LILO自行載入時,它會顯示LILO一字。在執行某些特定的動作之前或之後會 > 列印每一個字母。如果LILO在某一點失敗,則目前為止已印出的字母可用來識 > 別問題。 > > 請注意,如果發生暫態磁碟問題,則在第一個"L"之後可插入某些十六進位數字。 > 除非LILO在該點停止,產生無限的錯誤碼串流,這種十六進位數字不表示伺服器 > 問題。 > > [無] > - 未載入 LILO 的任何部件。 LILO 不是未安裝就是其啟動區段所在的分割區 > 不在作用中。 > > L [錯誤] ... > - 第一階段啟動載入程式已載入並啟動,但是它無法載入第二階段啟動載入程式。 > 二位數字錯誤碼指出問題的類型。 這種狀況通常表示媒體失效或幾何不符 > (例如,磁碟參數無效)。 > > LI > - 第一階段啟動載入程式已能夠載入第二階段啟動載入程式,但是無法加以執行。 > 這可能是由於幾何不符或是沒有執行 map 安裝程式而移動 /boot/boot.b所導致。 > > LIL > - 第二階段啟動載入程式已啟動,但是它無法從映射檔載入描述子表格。這通常是 > 由於媒體失效或幾何不符所導致。 > > LIL? > - 在不正確的位址載入了第二階段啟動載入程式。這通常是由於細微的幾何不符或 > 是沒有執行 map 安裝程式而移動 /boot/boot.b 所導致。 > > LIL- > - 描述子表格訛誤。這可能是由於幾何不符或是沒有執行 map 安裝程式而移動 > /boot/map 所導致。LILO 已順利載入 LILO 的所有部件。

4. 當核心程式載入之後,機器基本上就交由核心處理了。核心程式首先要載入檔案系統,然後第一個執行的程式就是 init (它是所有程式的 parrent ),init 的第一個動作是找到 /etc/rc.d/rc.sysinit 並執行之。 5. 這個 rc.sysinit 程式首先是執行 /sbin/initlog 並輸出 $LOGLEVEL 變數,以決定記錄檔的信息量。 6. 接著檢查 /dev/.devfsd 和 /sbin/devfsd 這兩個檔案,以決定系統是否使用 devfs 。 7. 然後設定 PATH 環境。 8. 然後檢查 /etc/sysconfig/network 檔是否存在,然則根據設定檔設定網路環境,否則用 localhost 命名系統。 9. 再來是執行 /etc/rc.d/init.d/functions 這只 script ,以提供其後的 shell 程式所使用的一些變數和功能。 10. 然後載入 keymap,按照您安裝時指定的鍵盤資訊來確定您的鍵盤類型。 11. 執行 /sbin/setsysfont 來設定系統使用的字型。 12. 啟動系統的置換(swap)空間。至此,系統之主機名稱(hostname)和網域名稱(domain),將作為環境變數的依據。 13. 然後 rc.sysinit 會檢查 /fsckoptions 這個檔是否存在,然則,會改變這個檔的中的一個變數值;如果 /forcefsck 檔案存在的話,就會在這個變數值前面增加一個旗標,這樣會導致後面的步驟強迫系統對檔案系統進行檢查。 14. 接下來,會檢查 /fastboot 是否存在,然則,系統會略過檔案系統的檢查步驟;否則,系統會對 / ( 也就是 root) 進行一個完整的檢查。 15. 之後,系統會執行 mount -t proc /proc /proc 命令,為核心掛載一個特殊的檔案系統,它完全建立在記憶體之上。每次關機都會消失,而每次開機才被建立。其中的資料,純粹是給核心使用的,其中一些設定,會根據系統設定檔進行配置。 16. 完成這個動作之後,接下來是對 Plug and Play 設備的檢測。如果經過特別設定,還會執行 isapnp 程式來檢查 ISA 類型的 PnP 設備。 17. 現在,檔案系統的 / 才掛載為完整的讀和寫模式,並更新 quota 資訊,同時在 / 上面實施 quota 限制。 18. 再來呢,系統會清掉 IN_INITLOG 變數,如果 /etc/HOSTNAME 檔不存在,則將 HOSTNAME 的變數值作為該檔的內容。 19. 再來是清空 mtab,並將 / 檔案系統和 /proc 置於其中。系統通常根據 /etc/fstab 來判定要掛載的檔案系統在哪裡,而 mtab 是一個檔案,算是從 /etc/fstab 提煉出來真正給系統使用的版本吧。 20. 然後,系統會載入一系列的核心模組。一旦完成,除非前面的 /fastboot 存在,否則系統會對 / 之外的所有檔案系統進行檢查。除了 NFS 之外,所有分區都會完成掛載,並且非 / 分區的 quota 也會打開。 21. 到這裡,系統會砍掉一些檔案,以清理這次啟動,同時也是為下次啟動作准備。前面提到的 /fastboot 和檔案系統檢查選項都會清掉,同時, /var/lock 其下的一些 lock 檔也會移除,/var/run 裡面的陳舊行程 ID 也會砍掉,更多在 /tmp 裡面的 lock 檔也會砍光。這樣,rc.sysinit 可以說為系統安排好一切了:設定好系統時鐘、啟用置換空間、載入相應模組、並根據 /etc/sysconfig/desktop 來決定 X 系統使用的視窗管理系統(除非使用者另行設定)。 22. 關於 rc.sysinit 在啟動過程中所顯示的所有信息,都會存放到 /var/log/dmesg 裡面去。 23. 此時,rc.sysinit 已經完成准備工作,並將系統交還 /sbin/init 程式,然後根據 /etc/inittab 選擇預設的 run level (這個容後解釋),以決定執行哪些服務程式。具體要執行的程式,按照 /etc/rc.d/rcX.d/ ( X 代表不同的 run level 號碼)目錄裡面的 script 內容而定。而最後一個要執行的 script,則是 /etc/rc.d/rc.local 。並執行 /sbin/loglevel 以確定系統的記錄等級(級別越高,記錄越詳細)。 Tips:在 /etc/rc.d/ 目錄下的 rc.local,有點像 DOS 裡面的 autoexec.bat ,如果您有哪些在開機的時候需要執行的系統設定,可以將命令行,或 script 寫在這裡。比方說,您在用別台機器 telnet 進來的時候,會看到機器目前的作業系統資訊(這或許對別有用心的人非常有用),您單純以為修改 /etc/issue.net 的內容就可以解決掉;但發現重新開機之後,檔案又復原了。呵~~ 這就是 rc.local 搞的鬼啦:當您修改好 issue.net 之後,還不要忘記修改 rc.loal 這個檔,將其中一行 cp -f /etc/issue /etc/issue.net 注解起來。 24. 最後,init 將系統交由 login 程式接管,正式完成開機使命。 以上就是大致的開機流程,其中我省略了許多步驟,如果您有興趣研究的話,不妨深入追蹤一下 /etc/rc.d/rc.sysinit 這個檔案。 Tip:有時候您不正常關機,會造成檔案損毀的現像,系統在開機的時候會嘗試自動修復。如果自動修復不成功,則會停下來要您輸入 root 密碼,執行 fsck 程式進行手工修復。 您要知道有問題的 partiton 是那一個(幾個)?比方說您現在碰到 / 有問題,假設它 在 /dev/hda6 上面,那您就輸入: fsck /dev/hda6

然後要回答許多問題,一直按 y 就是了;如果您不想按 y ,那就輸入: fsck -y /dev/hda6 不過,小心哦:有時候第一個問題可能告訴您一些警告,然後說按 y 進行 cancel,那您就只好第一個按 n,然後逐個按 y 了。 假如您對上面的描述不是很理解,不用擔心,盡可略過您不懂的對方,等日後對系統有更充份的了解之後,再回來重拾靈感好了。不過,對開機過程的了解程度,會影像到您日後的系統管理和調整技巧,尤其是在進行除錯的時候。建議您最好將開機過程了解透切一些,是絕對有百利而無一害的。 好了,前面提到過 run level 這個詞,究竟是什麼東東呢?嗯,如果您以前玩過 DOS,為不同游戲設定過不同的開機環境,或許比較容易了解。要不然,您可以簡單的認為:run level 就是不同的系統啟動配置,不同的 run level 會讓系統執行不同的服務和設定,最後獲得的環境和功能也不一樣。系統每次開機,只能進入其中一個 run level 而已,您可以在 LILO 提示的時候指定要進入哪個 level (或是在啟動時看到紅色的 RedHat 文字時按 i 鍵),也可以調整 /etc/inittab 的設定來指定系統的預設 level (號碼)。不同的廠商,其 run leve 的號碼不太一樣,如果以 RedHat 為例,號碼所代表的 run level 如下: * Level 0:關機 * Level 1:單人模式 * Level 2:多人模式,沒有網路功能 * Level 3:完整多人模式,文字界面 * Level 4:保留 * Level 5:完整多人模式,圖形界面 * Level 6:重新開機 以上這些號碼,分別對應不同的系統配置。在 /etc/inittab 檔案中,您會找到一行句子如: id:5:initdefault: 其中的數字 5 所代表的就是系統預設的 run level,這裡就是圖形界面,當您的系統完成啟動之後,您會看到 X window 的登錄畫面。如果您要將預設界面換成文字模式,那只要將 5 換為 3 就可以,這樣下次開機就會進入文字界面;當然,如果您換成 0 的話,那每次啟動完畢就會關機,這可不好玩哦~~~ 有時候,因為系統的設定錯誤,或是檔案損壞,您可能必須進入單人模式進行一些維護工作。比方說,您的 root 密碼忘了,那您可以到 LILO 提示那裡(開機選單按 Ctl+X),然後輸入: linux -s 這樣啟動完成後就會進入 run level 1,這裡您是無須登錄就具備 root 權限的了,然後您輸入 passwd root 就可以重新設定 root 的密碼了。不過,這個便利也變成一個系統的安全問題。此時,如何確保您的系統不被外人實體上接觸到就顯得非常重要了,否則,別人只要重新啟動機器就可以為所欲為了。小心小心!如果您想在單人模式中也需要密碼檢驗,那可以修改 /etc/inittab 這個檔案,在 si:: sysinit:... 那行句子後面另外增加一行設定: 修改前: si::sysinit:/etc/rc.d/rc.sysinit 修改後: si::sysinit:/etc/rc.d/rc.sysinit ~~:S:wait:/sbin/sulogin 不過,這樣您就一定不能將 root 密碼忘記啰~~~ ^_^ tips:您還可以修改 lilo.conf,加上密碼,這樣別人選好 LILO 選單之後,只有知道密碼才能載入(不過,如果您想要執行遠端重開機的話,有麻煩)。這部份留待日後我們談到 lilo.conf 的時候再介紹吧。不過,有經驗的用戶,還是知道如何用其它辦法進行開機的啦。所以,實體上的安全還是至關重要的。 另外,有些系統預設上並不使用 LILO 而使用另一套名為 GRUB 的開機管理程式來載入核心。要進入單人模式的方法和 LILO 有所不同,基本的步驟如下: 1,移動方向鍵選擇正確的 linux 選單後 按"e" 2,再選擇以 kernel 開頭的句子(通常為二行),再按"e" 3,並將游標移到該行行尾,並輸入一個空白鍵和" -s" 4,按Enter 5,按"b"就能進入單人模式 如果您已經在一個 run level 裡面了,這時候要換到另一個 level 去,除了重新開機之外,您也可以直接用 init 命令來轉換,如輸入 init 1 就會切換到單人模式去,然後再輸入 init 3 就回到多人文字模式去。有機會不妨玩玩看。 那麼,究竟不同的 run level 是如何為系統配置出不同的環境呢?如果您有興趣知道的話,請看看 /etc/rc.d/ 目錄下面,分別有著 rcX.d 的子目錄,其中的 X 就是不同 run level 的號碼了。然後再看看 rcX.d 目錄裡面的檔案,您會發現有兩類檔案:其一是以 S 開頭的,而另外則是以 K 開頭的。這些檔案都是一些 script,如果以 S 開頭的話,那是在進入(Startup)該 level 的時候要執行的,其執行順序是根據 S 後面的數字來決定,數值越小,越被優先執行。您千萬不要隨便亂改這些數字哦,因為有些 script 之間是有相依關系的,必須等前面的 script 執行妥當之後,才能執行後面的 script。而那些以 K 開頭呢?K 是 Kill 的意思,沒錯啦,就是在退出該 level 的時候要執行的,順序也是以數字為依據。 Tips:事實上,不同的 run level 是幫您執行行不同的 daemon 服務程式而已(我們日後再說 daemon )。您可以執行 ntsysv 命令,然後用空白鍵上下選擇哪些 daemon 要在開機的時候執行,哪些不需要。然而,除了 ntsysv 外,更精確的設定工具應該是 chkconfig 這只程式: chkconfig --level 3 pcmcia on chkconfig --level 3 pcmcia off

chkconfig --level 3 --del pcmcia 第一個命令是在 run level 3 將 pcmcia 服務打開(也就是設定為 S 開頭的服務);第二行則是關閉(也就手設定為 K 開頭);第三行則將之刪除(沒有 S 也沒有 K )。透過靈活的組合,您可以輕松的控制各個 run level 所執行的服務程式。建議您 man chkconfig 詳細看看它的用法。 不過,並不是所有寫在 /etc/rc.d/init.d 的 deamon 都能使用 chkconfig 來設定哦,您必須包含如下兩個句子在檔案中(缺一不可): # chkconfig: 2345 80 20 # description: decsription about the daemon 要注意:這兩句前面的 ‘ # ’符號不能拿掉哦!第一行的第一堆數字是說要作用於哪些 run level 上面;而中間的數字則是 link 到各 rcX.d 目錄後的以 " S " 開頭的數字;最後一組數字則是 " K " 開頭的數字。第二行可以隨便寫,關於 daemon 的說明文字就是了。 如果您仔細比較不同的 rcX.d 目錄,您會發現它們的 script 數目和順序都不太一樣!沒錯啦,就是這些不一樣才讓系統獲得不同的配置。不過,如果您再仔細檢查這些檔案,其實它們都是一些 links (這個我們在介紹檔案系統的時候再說),歸跟結底,這些 script 都集中放在 /etc/rc.d/init.d/ 目錄裡面,然後根據不同的 level 而‘分身’在不同的 rcX.d 目錄中而已。這個,等我們日後對 script 和 links 有一定了解之後,就比較清楚了。如果您現在不大理解,那沒關系,知道不同的 run level 要對應到哪個 rcX.d 目錄就好。 關機 除非您不想機器不用的時候還開著(如為了省電),或是進行硬體更換,linux 甚少需要關機的(有些 Linux 跑好幾年還好好的呢!)。不過,您知道怎樣關機嗎? 如果您在安裝過程中能夠正確設定好 XWindow,並且選擇了開機進入 X,或許您還能找到關機的門徑(和 windows 和像)。不過,通常來說,除非是天才,在第一次使用 linux 的時候(之前也沒 Unix 或 Novell 經驗),還真不知道怎麼關機哦!(哈哈,指我自己啦~~~ ^_^ 見笑見笑!) 不過,各位根據剛才的 run level 和 init 命令,或許也不難找出關機的辦法吧?輸入 init 0 就可以了!不過,這其實不是一個正確的關機辦法, 如果您輸入下面這個指令: shutdown --help 您會看到好些選項,請看看各項的意思。如果您要立即將機器關掉的話,建議您輸入: shutdown -h now 如果用 r 代替 h 的話,會進行重新啟動,不過,您可以用 reboot 這個指令代替,或可以按 ctl+alt+del (這個也不建議使用,更要注意所有資料已回存好和程式都關閉妥當)。 在某些舊系統中,您還必須執行 sync 命令多次,以確定所有資料都回存到硬碟中,才可以進行關機的動作。不過,如果您用 shutdown 或 reboot 命令的話,就不需擔心這個了。 tips:關於關機所使用到的一些命令,大家不妨參考 Leo 兄的說明: From: "leo" To: Sent: Sunday, August 12, 2001 8:37 PM Subject: Hi 其實,常常遇到有人問說,shutdown -r 與 reboot 與 halt 這些指令的關系。 其實 shutdown 指令,只是可以設定訊息,時間等,真正 reboot 之類的動作, 還是呼叫 reboot 來執行的。 而 reboot 指令則不,將會立即 reboot。 halt 也是一樣,將會立即關機。 reboot 與 halt 預設都會先執行 sync,(也可強迫不要用 sync,比方 reboot -n) 這兩個指令無法送出訊息到 tty.. 等等。 另外還有人問到 poweroff 指令, 其實 halt 指令,預設是會執行 poweroff 的,所以會將電源切掉。 等您已經會得正常的開機和關機之後,我才可以說:您可以放心進行學習了。



如果您仔細比較不同的 rcX.d 目錄,您會發現它們的 script 數目和順序都不太一樣!沒錯啦,就是這些不一樣才讓系統獲得不同的配置。不過,如果您再仔細檢查這些檔案,其實它們都是一些 links (這個我們在介紹檔案系統的時候再說),歸跟結底,這些 script 都集中放在 /etc/rc.d/init.d/ 目錄裡面,然後根據不同的 level 而‘分身’在不同的 rcX.d 目錄中而已。這個,等我們日後對 script 和 links 有一定了解之後,就比較清楚了。如果您現在不大理解,那沒關系,知道不同的 run level 要對應到哪個 rcX.d 目錄就好。 關機 除非您不想機器不用的時候還開著(如為了省電),或是進行硬體更換,linux 甚少需要關機的(有些 Linux 跑好幾年還好好的呢!)。不過,您知道怎樣關機嗎? 如果您在安裝過程中能夠正確設定好 XWindow,並且選擇了開機進入 X,或許您還能找到關機的門徑(和 windows 和像)。不過,通常來說,除非是天才,在第一次使用 linux 的時候(之前也沒 Unix 或 Novell 經驗),還真不知道怎麼關機哦!(哈哈,指我自己啦~~~ ^_^ 見笑見笑!) 不過,各位根據剛才的 run level 和 init 命令,或許也不難找出關機的辦法吧?輸入 init 0 就可以了!不過,這其實不是一個正確的關機辦法, 如果您輸入下面這個指令: shutdown --help 您會看到好些選項,請看看各項的意思。如果您要立即將機器關掉的話,建議您輸入: shutdown -h now 如果用 r 代替 h 的話,會進行重新啟動,不過,您可以用 reboot 這個指令代替,或可以按 ctl+alt+del (這個也不建議使用,更要注意所有資料已回存好和程式都關閉妥當)。 在某些舊系統中,您還必須執行 sync 命令多次,以確定所有資料都回存到硬碟中,才可以進行關機的動作。不過,如果您用 shutdown 或 reboot 命令的話,就不需擔心這個了。 tips:關於關機所使用到的一些命令,大家不妨參考 Leo 兄的說明: From: "leo" To: Sent: Sunday, August 12, 2001 8:37 PM Subject: Hi 其實,常常遇到有人問說,shutdown -r 與 reboot 與 halt 這些指令的關系。 其實 shutdown 指令,只是可以設定訊息,時間等,真正 reboot 之類的動作, 還是呼叫 reboot 來執行的。 而 reboot 指令則不,將會立即 reboot。 halt 也是一樣,將會立即關機。 reboot 與 halt 預設都會先執行 sync,(也可強迫不要用 sync,比方 reboot -n) 這兩個指令無法送出訊息到 tty.. 等等。 另外還有人問到 poweroff 指令, 其實 halt 指令,預設是會執行 poweroff 的,所以會將電源切掉。 等您已經會得正常的開機和關機之後,我才可以說:您可以放心進行學習了。



# description: decsription about the daemon 要注意:這兩句前面的 ‘ # ’符號不能拿掉哦!第一行的第一堆數字是說要作用於哪些 run level 上面;而中間的數字則是 link 到各 rcX.d 目錄後的以 " S " 開頭的數字;最後一組數字則是 " K " 開頭的數字。第二行可以隨便寫,關於 daemon 的說明文字就是了。 如果您仔細比較不同的 rcX.d 目錄,您會發現它們的 script 數目和順序都不太一樣!沒錯啦,就是這些不一樣才讓系統獲得不同的配置。不過,如果您再仔細檢查這些檔案,其實它們都是一些 links (這個我們在介紹檔案系統的時候再說),歸跟結底,這些 script 都集中放在 /etc/rc.d/init.d/ 目錄裡面,然後根據不同的 level 而‘分身’在不同的 rcX.d 目錄中而已。這個,等我們日後對 script 和 links 有一定了解之後,就比較清楚了。如果您現在不大理解,那沒關系,知道不同的 run level 要對應到哪個 rcX.d 目錄就好。 關機 除非您不想機器不用的時候還開著(如為了省電),或是進行硬體更換,linux 甚少需要關機的(有些 Linux 跑好幾年還好好的呢!)。不過,您知道怎樣關機嗎? 如果您在安裝過程中能夠正確設定好 XWindow,並且選擇了開機進入 X,或許您還能找到關機的門徑(和 windows 和像)。不過,通常來說,除非是天才,在第一次使用 linux 的時候(之前也沒 Unix 或 Novell 經驗),還真不知道怎麼關機哦!(哈哈,指我自己啦~~~ ^_^ 見笑見笑!) 不過,各位根據剛才的 run level 和 init 命令,或許也不難找出關機的辦法吧?輸入 init 0 就可以了!不過,這其實不是一個正確的關機辦法, 如果您輸入下面這個指令: shutdown --help 您會看到好些選項,請看看各項的意思。如果您要立即將機器關掉的話,建議您輸入: shutdown -h now 如果用 r 代替 h 的話,會進行重新啟動,不過,您可以用 reboot 這個指令代替,或可以按 ctl+alt+del (這個也不建議使用,更要注意所有資料已回存好和程式都關閉妥當)。 在某些舊系統中,您還必須執行 sync 命令多次,以確定所有資料都回存到硬碟中,才可以進行關機的動作。不過,如果您用 shutdown 或 reboot 命令的話,就不需擔心這個了。 tips:關於關機所使用到的一些命令,大家不妨參考 Leo 兄的說明: From: "leo" To: Sent: Sunday, August 12, 2001 8:37 PM Subject: Hi 其實,常常遇到有人問說,shutdown -r 與 reboot 與 halt 這些指令的關系。 其實 shutdown 指令,只是可以設定訊息,時間等,真正 reboot 之類的動作, 還是呼叫 reboot 來執行的。 而 reboot 指令則不,將會立即 reboot。 halt 也是一樣,將會立即關機。 reboot 與 halt 預設都會先執行 sync,(也可強迫不要用 sync,比方 reboot -n) 這兩個指令無法送出訊息到 tty.. 等等。 另外還有人問到 poweroff 指令, 其實 halt 指令,預設是會執行 poweroff 的,所以會將電源切掉。 等您已經會得正常的開機和關機之後,我才可以說:您可以放心進行學習了。



Copyright © Linux教程網 All Rights Reserved