国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

關于Linux操作系統根文件系統的啟動分析

2024-06-28 13:03:03
字體:
來源:轉載
供稿:網友
 

一般的系統是先啟動/sbin/init,但是也可通過啟動參數指定init=來確定,如:我的系統就是制定的init=/linuxrc,因為文件系統是采用busybox的,而linuxrc。也是一個指向busybox的文件,不過不確認它指向具體哪個指令。不過可能是/sbin/init。

init進程的主要任務是按照inittab文件所提供的信息創建進程,由于進行系統初始化的那些進程都由init創建,所以init進程也稱為系統初始化進程。

如我的inittab:

::sysinit:/etc/init.d/rcS

::respawn:-/bin/login

::restart:/sbin/init

::ctrlaltdel:/bin/reboot

::shutdown:/bin/umount -a -r

::shutdown:/sbin/swapoff -a

inittab的格式如下:

id:rstate:action:PRocess

1.id字段是最多4個字符的字符串,用來唯一標志表項。

2.rstate(run state)字段定義該記錄項被調用時的運行級別,rstate可以由一個或多個運行級別構成,也可以是空,空則代表運行級別0~6。當請求init改變運行級別時,那些rstate字段中不包括新運行級別的進程將收到SIGTERM警告信號,并且最后被殺死;只有a、b、c啟動的命令外(a、b、c不是真正的運行級別)

3.action字段定義了該進程應該運行在何種狀態下:

boot 在系統啟動時運行,忽略runlevel

bootwait 在系統啟動時運行,init等待進程完成。忽略runlevel

ctrlaltdel 當Ctrl+Alt+Del三個鍵同時按下時運行,把SIGINT信號發送給init。忽略 runlevel

initdefault 不要執行這個進程,它用于設置默認runlevel

kbrequest 當init從鍵盤中收到信號時運行。這里要求鍵盤組合符合KeyBoardSigral(參見/usr/share/doc/kbd-*關于鍵盤組合的文檔)

off 禁止進入,因此該進程不運行

once 每一個runlevel級別運行一次

ondemand 當系統指定特定的運行級別A、B、C時運行

powerfail 當init收到SIGPWR信號時運行

powerokwait 當收到SIGPWD信號且/etc/文件中的電源狀態包含OK時運行

powerwait 當收到SIGPWD信號,并且init等待進程結束時運行

respawn 不管何時終止都重新啟動進程

sysinit 在運行boot或bootwait進程之前運行

wait 運行進程等待輸入運行模式

process 字段包含init執行的進程,該進程采用的格式與在命令行下運行該進程的格式一樣,

因此process字段都以該進程的名字開頭,緊跟著是運行時,緊跟著是運行時要傳遞給該進程的參數。

比如/sbin/shutdown -t3 -r now,該進程在按下Ctrl+Alt+Del時執行,在命令行下也可以直接輸入來重新啟動系統。

4.Process字段中進程可以是任意的守候進程、可執行腳本或程序。

另外:在任何時候,可以在文件inittab中添加新的記錄項,級別Q/q不改變當前的運行級別,重新檢查inittab文件,可以通過命令init Q或init q使init進程立即重新讀取并處理文件inittab.

他會先執行/etc/init.d/rcS

#! /bin/sh

/bin/mount -a

mdev -s

而mount -a會執行/etc/fstab

proc /proc proc defaults 0 0

none /tmp ramfs defaults 0 0

mdev /dev ramfs defaults 0 0

sysfs /sys sysfs defaults 0 0

掛載一些ramfs。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 锡林郭勒盟| 巫山县| 宜昌市| 湘西| 金沙县| 禄丰县| 阿巴嘎旗| 汉沽区| 阿勒泰市| 遂昌县| 南昌市| 分宜县| 河池市| 昌图县| 札达县| 奉新县| 成安县| 青岛市| 鲁甸县| 肃宁县| 唐河县| 汶川县| 镶黄旗| 揭东县| 石河子市| 南昌市| 福建省| 香格里拉县| 芜湖市| 卢龙县| 延川县| 安达市| 彰化县| 应城市| 三都| 仲巴县| 临夏市| 阿鲁科尔沁旗| 伽师县| 吐鲁番市| 咸丰县|