一、Linux 系統(tǒng)啟動過程1、Linux系統(tǒng)的啟動過程并不是大家想象中的那么復雜,其過程可以分為5個階段: (1)內核的引導。 (2)運行 init。 (3)系統(tǒng)初始化。 (4)建立終端 。 (5)用戶登錄系統(tǒng)。 2、內核引導 當計算機打開電源后,首先是BIOS開機自檢,按照BIOS中設置的啟動設備(通常是硬盤)來啟動。操作系統(tǒng)接管硬件以后,首先讀入 /boot 目錄下的內核文件。 ![]() 3、運行 init (1)init 進程是系統(tǒng)所有進程的起點,你可以把它比擬成系統(tǒng)所有進程的老祖宗,沒有這個進程,系統(tǒng)中任何進程都不會啟動。init 程序首先是需要讀取配置文件 /etc/inittab。 ![]() (2)運行級別:許多程序需要開機啟動。它們在Windows叫做'服務'(service),在Linux就叫做'守護進程'(daemon)。 init 進程的一大任務,就是去運行這些開機啟動的程序。但是,不同的場合需要啟動不同的程序,比如用作服務器時,需要啟動Apache,用作桌面就不需要。 Linux允許為不同的場合,分配不同的開機啟動程序,這就叫做'運行級別'(runlevel)。也就是說,啟動時根據'運行級別',確定要運行哪些程序。 ![]() (3)Linux系統(tǒng)有7個運行級別(runlevel):
4、系統(tǒng)初始化 在 init 的配置文件中有這么一行: si::sysinit:/etc/rc.d/rc.sysinit 它調用執(zhí)行了/etc/rc.d/rc.sysinit,而 rc.sysinit 是一個 bash shell 的腳本,它主要是完成一些系統(tǒng)初始化的工作,rc.sysinit是每一個運行級別都要首先運行的重要腳本。 它主要完成的工作有:激活交換分區(qū),檢查磁盤,加載硬件模塊以及其它一些需要優(yōu)先執(zhí)行任務。 ![]() 5、建立終端:rc 執(zhí)行完畢后,返回 init。這時基本系統(tǒng)環(huán)境已經設置好了,各種守護進程也已經啟動了。init 接下來會打開6個終端,以便用戶登錄系統(tǒng)。 6、用戶登錄系統(tǒng):命令行登錄、ssh 登錄、圖形界面登錄 3 種 ![]() 詳情可看這篇博客:http://www./blog/2013/08/linux_boot_process.html 二、Linux 關機1、正確的關機流程為:sync > shutdown > reboot > halt 2、關機指令為:shutdown ,你可以man shutdown 來看一下幫助文檔。 3、實例: sync # 將數(shù)據由內存同步到硬盤中。shutdown –h 10 'This server will shutdown after 10 mins’ #這個命令告訴大家,計算機將在10分鐘后關機,并且會顯示在登陸用戶的當前屏幕中。shutdown –h now # 立馬關機shutdown –h 20:25 # 系統(tǒng)會在今天20:25關機shutdown –h 10 # 十分鐘后關機shutdown –r now #系統(tǒng)立馬重啟shutdown –r 10 #系統(tǒng)十分鐘后重啟reboot # 就是重啟,等同于 shutdown –r nowhalt # 關閉系統(tǒng),等同于shutdown –h now 和 poweroff 4、不管是重啟系統(tǒng),還是關閉系統(tǒng),首先要運行 sync 命令,把內存中的數(shù)據寫到磁盤中。 關機的命令有 shutdown –h now、halt、poweroff 和 init 0,重啟系統(tǒng)的命令有 shutdown –r now、reboot、init 6。 5、shutdown 會給系統(tǒng)計劃一個時間關機,它可以被用于停止、關機、重啟機器。
要取消即將進行的關機,只要輸入下面的命令: shutdown -c 6、halt 命令通知硬件來停止所有的 CPU 功能,但是仍然保持通電。你可以用它使系統(tǒng)處于低層維護狀態(tài)。注意在有些情況會它會完全關閉系統(tǒng)。
poweroff 會發(fā)送一個 ACPI 信號來通知系統(tǒng)關機。 # poweroff ### 關閉機器、關閉電源# poweroff --halt ### 停止機器# poweroff --reboot ### 重啟機器 reboot 命令 reboot 通知系統(tǒng)重啟。
三、Linux 目錄結構1、樹狀目錄結構: ![]() 2、一些常用目錄的解釋: /bin:bin 是 Binaries (二進制文件) 的縮寫, 這個目錄存放著最經常使用的命令。 /etc:etc 是 Etcetera(等等) 的縮寫,這個目錄用來存放所有的系統(tǒng)管理所需要的配置文件和子目錄。 /home:用戶的主目錄,在 Linux 中,每個用戶都有一個自己的目錄,一般該目錄名是以用戶的賬號命名的,如上圖中的 alice、bob 和 eve。 /usr:usr 是 unix shared resources(共享資源) 的縮寫,這是一個非常重要的目錄,用戶的很多應用程序和文件都放在這個目錄下,類似于 windows 下的 program files 目錄。 /usr/bin:系統(tǒng)用戶使用的應用程序。 /usr/sbin:超級用戶使用的比較高級的管理程序和系統(tǒng)守護程序。 /var:var 是 variable(變量) 的縮寫,這個目錄中存放著在不斷擴充著的東西,我們習慣將那些經常被修改的目錄放在這個目錄下。包括各種日志文件。 /run:是一個臨時文件系統(tǒng),存儲系統(tǒng)啟動以來的信息。當系統(tǒng)重啟時,這個目錄下的文件應該被刪掉或清除。如果你的系統(tǒng)上有 /var/run 目錄,應該讓它指向 run。 3、在 Linux 系統(tǒng)中,有幾個目錄是比較重要的,平時需要注意不要誤刪除或者隨意更改內部文件。 /etc: 上邊也提到了,這個是系統(tǒng)中的配置文件,如果你更改了該目錄下的某個文件可能會導致系統(tǒng)不能啟動。 /bin, /sbin, /usr/bin, /usr/sbin: 這是系統(tǒng)預設的執(zhí)行文件的放置目錄,比如 ls 就是在 /bin/ls 目錄下的。值得提出的是,/bin, /usr/bin 是給系統(tǒng)用戶使用的指令(除root外的通用戶),而/sbin, /usr/sbin 則是給 root 使用的指令。 /var: 這是一個非常重要的目錄,系統(tǒng)上跑了很多程序,那么每個程序都會有相應的日志產生,而這些日志就被記錄到這個目錄下,具體在 /var/log 目錄下,另外 mail 的預設放置也是在這里。 4、在 Linux 或 Unix 操作系統(tǒng)中,所有的文件和目錄都被組織成以一個根節(jié)點開始的倒置的樹狀結構。 文件系統(tǒng)的最頂層是由根目錄開始的,系統(tǒng)使用 / 來表示根目錄。在根目錄之下的既可以是目錄,也可以是文件,而每一個目錄中又可以包含子目錄文件。如此反復就可以構成一個龐大的文件系統(tǒng)。 在Linux文件系統(tǒng)中有兩個特殊的目錄,一個用戶所在的工作目錄,也叫當前目錄,可以使用一個點 . 來表示;另一個是當前目錄的上一級目錄,也叫父目錄,可以使用兩個點 .. 來表示。
如果一個目錄或文件名以一個點 . 開始,表示這個目錄或文件是一個隱藏目錄或文件(如:.bashrc)。即以默認方式查找時,不顯示該目錄或文件。 5、目錄分類介紹 系統(tǒng)啟動必須:
指令集合:
外部文件管理:
臨時文件:
賬戶:
運行過程中要用:
擴展用的:
|
|