linux 啟動管理

1、Linux系統啟動流程:POST 加電自檢 — BIOS(Boot Sequence)–>MBR(bootloader,446)(加載前512字節后的驅動程序,進入/boot目錄,加載內核)–>Kernel–>initrd–>(系統根路徑 /)(ROOTFS)/sbin/init(/etc/inittab)
2、init程序的類型:

SysV: init, CentOS 5 配置文件:/etc/inittab

Upstart: init,CentOS6 配置文件:/etc/inittab, /etc/init/*.conf

Systemd:systemd, CentOS 7 配置文件:/usr/lib/systemd/system;/etc/systemd/system

init讀取其初始化文件:/etc/inittab

初始運行級別(RUN LEVEL)

0:halt 關機

1: single user mode, 直接以管理員身份切入 修改root密碼

2:multi user mode, no NFS

3: multi user mode, text mode

4:reserved 保留

5: multi user mode, graphic mode

6: reboot

系統初始化腳本:/etc/rc.d/rc.sysinit

激活udev和selinux;

根據/etc/sysctl.conf文件,來設定內核參數;

設定時鐘時鐘;

裝載鍵盤映射;

啟用交換分區;

設置主機名;

根文件系統檢測,并以讀寫方式重新掛載;

激活RAID和LVM設備;

啟用磁盤配額;

根據/etc/fstab,檢查并掛載其它文件系統;

清理過期的鎖和PID文件;

對應運行級別的腳本目錄

捕獲某個關鍵字順序

定義UPS電源終端/恢復腳本

在虛擬控制臺生成getty

在運行級別5初始化X11

    切換runlevel:init #

    查看運行級別:runlevel: who -r

總結:/sbin/init–> (/etc/inittab) –> 設置默認運行級別–> 運行系統初始腳本、完成系統初始化–> (關閉對應下需要關閉的服務)啟動需要啟動服務–> 設置登錄終端
在CentOS 6 init程序為: upstart, 其配置文件:/etc/inittab, /etc/init/*.conf,配置文件的語法遵循upstart配置文件語法格式
3、系統引導grub.conf

default=0  # 設定默認啟動的title的編號,從0開始

timeout=5  # 等待用戶選擇的超時時長,單位是秒

splashimage= # grub的背景圖片

hiddenmenu # 隱藏菜單

password xxxxxx / password –md5 編輯加密

title      # 內核標題,或操作系統名稱,字符串,可自由修改

root (hd0,0)  # 內核文件所在的設備;對grub而言,所有類型硬盤一律hd,格式為(hd#,N);hd#,

         #表示第幾個磁盤;最后的N表示對應磁盤的分區;

kernel        # 內核文件路徑,及傳遞給內核的參數

initrd      # ramdisk文件路徑

4、安裝grub :(可修復破壞磁盤前446字節的情況)

# grub

grub> root (hd0,0)

grub> set (hd0)

安裝grub第二種方式:(修復1.5階段)

# grub-install –root-directory=/path/to/boot’s_parent_dir  /PATH/TO/DEVICE

5、Kernel初始化的過程:

設備探測

驅動初始化(可能會從initrd(initramfs)文件中裝載驅動模塊)

以只讀掛載根文件系統;

裝載第一個進程init(PID:1)

/sbin/init:(讀取/etc/inittab)upstart:  systemd:  

id:runlevels:action:process

id: 標識符

runlevels: 在哪個級別運行此行;

action: 在什么情況下執行此行;

process: 要運行程序; 

id:3:initdefault:

si::sysinit:/etc/rc.d/rc.sysinit

ACTION:

initdefault: 設定默認運行級別

sysinit: 系統初始化

wait: 等待級別切換至此級別時執行

respawn: 一旦程序終止,會重新啟動

/etc/rc.d/rc.sysinit:

##: 關閉或啟動的優先次序,數據越小越優先被選定

先關閉以K開頭的服務,后啟動以S開頭的服務;

6、chkconfig 

# chkconfig: runlevels SS KK  當chkconfig命令來為此腳本在rc#.d目錄創建鏈接時,runlevels表示默認創建為S*開頭的鏈接,-表示沒有級別默認為S*開頭的鏈接;除此之外的級別默認創建為K*開頭的鏈接;

S后面的啟動優先級為SS所表示的數字;K后面關閉優先次序為KK所表示的數字;

# description: 用于說明此腳本的簡單功能; \, 續行

chkconfig –list: 查看所有獨立守護服務的啟動設定;獨立守護進程!

chkconfig –list SERVICE_NAME

chkconfig –add SERVICE_NAME

chkconfig –del SERVICE_NAME

chkconfig [–level RUNLEVELS] SERVICE_NAME {on|off}

如果省略級別指定,默認為2345級別

原創文章,作者:cui,如若轉載,請注明出處:http://www.www58058.com/86151

(0)
cuicui
上一篇 2017-09-03
下一篇 2017-09-03

相關推薦

  • linux安裝

    點擊開始運行\\172.16.0.1\python10 用戶名:python10 密碼:python10magedu 運行 ftp://172.16.0.1 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?…

    Linux干貨 2018-03-17
  • Nginx相關實戰案例

    Nginx相關實戰案例: Nginx在實際生產中極為重要,先來看一下Nginx配置文件nginx.conf中文詳解 #定義Nginx運行的用戶和用戶組 user www www; #nginx進程數,建議設置為等于CPU總核心數。 worker_processes 8; #全局錯誤日志定義類型,[ debug | info | notice | warn |…

    Linux干貨 2017-06-19
  • 馬哥教育網絡班22期+第一周課程練習

        操作系統:centos 7.2  64位 計算機組成及功能。 計算機組成: 由存儲器、運算器、控制器、輸入設備、輸出設備組成。 功能: 存儲器:用來存放計算程序及參與運算的各種數據;例如:硬盤、內存 運算器:負責數據的算術運算和邏輯運算即數據的加工處理 控制器:負責對程序規定的控制信息進行分析,控制并…

    Linux干貨 2016-08-15
  • Bind編譯安裝詳解

    Bind編譯安裝詳解 Bind是一款開放源碼的DNS服務器軟件,由美國加州大學Berkeley分校開發和維護的,全名為Berkeley Internet Name Domain它是目前世界上使用最為廣泛的DNS服務器軟件,支持各種unix平臺和windows平臺。現今互聯網上最常使用的DNS服務器軟件,使用BIND作為服務器軟件的DNS服務器約占所有DNS服…

    Linux干貨 2016-07-22
  • 日志管理

    rsyslogd的相關介紹,journalctl的相關介紹和日志的轉儲

    2018-02-05
  • RPM與YUM命令異同詳解

    RPM和YUM都是用來安裝程序的工具,但是它們有太多相似的用法以至于有事很難分清應該哪個那就來一起詳細的了解一下他們的功能及用法,以及他們的相同以及不同之處。 RPM 軟件包管理器功能:安裝,卸載,升級,查詢,校驗,打包,數據庫管理RPM在安裝時不能處理程序之間復雜的依賴關系RPM可以驗證軟件包來源的合法性、完整性。常用選項: -i:表示安裝。(常用:-iv…

    2017-06-18
欧美性久久久久