新聞中心
在 Linux 和其他類 Uniux 系統(tǒng)中,init(初始化)進(jìn)程是系統(tǒng)啟動(dòng)時(shí)由內(nèi)核執(zhí)行的第一個(gè)進(jìn)程,其進(jìn)程 ID(PID)為 1,并靜默運(yùn)行在后臺(tái),直到系統(tǒng)關(guān)閉。

成都創(chuàng)新互聯(lián)專注于蘇尼特左網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供蘇尼特左營(yíng)銷型網(wǎng)站建設(shè),蘇尼特左網(wǎng)站制作、蘇尼特左網(wǎng)頁(yè)設(shè)計(jì)、蘇尼特左網(wǎng)站官網(wǎng)定制、小程序定制開發(fā)服務(wù),打造蘇尼特左網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供蘇尼特左網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。
init 進(jìn)程負(fù)責(zé)啟動(dòng)其他所有的進(jìn)程,比如守護(hù)進(jìn)程、服務(wù)和其他后臺(tái)進(jìn)程,因此,它是系統(tǒng)中其它所有進(jìn)程之母(偏偏叫做“父進(jìn)程”)。某個(gè)進(jìn)程可以啟動(dòng)許多個(gè)子進(jìn)程,但在這個(gè)過程中,某個(gè)子進(jìn)程的父進(jìn)程結(jié)束之后,該子進(jìn)程的父進(jìn)程會(huì)變成 init 進(jìn)程,這么多年過去了,許多的初始化系統(tǒng)在主流 Linux 脫穎而出,和本文中,我將你來看看在 Linux 操作系統(tǒng)最好的初始化系統(tǒng)。
1. System V Init
1. System V Init
System V (SysV) 是一個(gè)在類 Unix 系統(tǒng)中最為成熟而且大受歡迎的初始化方案,是 Unix/Linux 系統(tǒng)中所有進(jìn)程的父進(jìn)程。SysV 是第一個(gè)商業(yè) Unix 系統(tǒng)設(shè)計(jì)的初始化方案。
除了 Gentoo 使用自主的初始化系統(tǒng)、Slackware 使用 BSD 風(fēng)格的初始化方案外,幾乎所有的 Linux 發(fā)行版都率先使用 SysV 作為初始化方案。隨著時(shí)間的推移,由于一些設(shè)計(jì)上的缺陷,有幾個(gè) SysV 初始化替換方案已經(jīng)開發(fā)出來,用以為 Linux 創(chuàng)建更加高效和完美的初始化系統(tǒng),盡管這些替代方案都超越了 SysV 并提供了更多新特性,但它們?nèi)匀缓驮?SysV 初始化腳本保持兼容。
2. SystemD
SystemD 是一個(gè) Linux 平臺(tái)中相對(duì)較新的初始化方案。它由 Fedora 15 引入,集成了各類工具以便更好的管理系統(tǒng)。主要目的是:系統(tǒng)初始化、管理和跟蹤引導(dǎo)進(jìn)程中和系統(tǒng)運(yùn)行時(shí)所有的系統(tǒng)進(jìn)程。Systemd 全面有別于其他傳統(tǒng)的 Unix 初始化系統(tǒng),特別是在啟動(dòng)系統(tǒng)和服務(wù)管理方面。它同樣兼容 SysV 和 LBS 初始化腳本。
其中較為突出的特性如下:
-
純粹、簡(jiǎn)單、高效的設(shè)計(jì)
-
啟動(dòng)時(shí)的并發(fā)和并行處理
-
更好的 API
-
開啟可選進(jìn)程的移除功能
-
使用 journald 來支持事件日志
-
使用 systemd calender timers 來支持任務(wù)計(jì)劃
-
以二進(jìn)制文件存儲(chǔ)日志
-
保存 systemd 的狀態(tài)以待今后查看
-
與 GNOME 更好整合實(shí)現(xiàn)等
查看 Systemd 初始化系統(tǒng)簡(jiǎn)介:https://fedoraproject.org/wiki/Systemd
3. Upstart
Upstart 是一個(gè)基于事件的初始化系統(tǒng),由 Ubuntu 的制作團(tuán)隊(duì)開發(fā)的,用以替代 SysV。它可以啟動(dòng)不同的系統(tǒng)任務(wù)和進(jìn)程、在系統(tǒng)運(yùn)行時(shí)校驗(yàn)進(jìn)程并在系統(tǒng)關(guān)閉時(shí)結(jié)束進(jìn)程。它是一個(gè)使用 SysV 和 Systemd 啟動(dòng)腳本的混合初始化系統(tǒng),Upstart 中值得一提的特性如下:
-
Ubuntu 的原生初始化系統(tǒng),但可以運(yùn)行在其他所有的發(fā)行版中
-
基于事件啟動(dòng)/結(jié)束的任務(wù)和服務(wù)
-
啟動(dòng)/結(jié)束任務(wù)和服務(wù)時(shí)生成事件
-
可以由其他系統(tǒng)進(jìn)程發(fā)送事件
-
使用 D-Bus 和 init 進(jìn)程通信
-
用戶可以啟動(dòng)/結(jié)束其各自的進(jìn)程
-
可以再現(xiàn)崩潰的進(jìn)程等
訪問 Upstart 主頁(yè):http://upstart.ubuntu.com/index.html
4. OpenRC
OpenRC 是一個(gè)基于依賴關(guān)系的類 Unix 系統(tǒng)初始化方案,兼容 SysV?;究梢哉f是 SysV 的升級(jí)版,但必須要清楚記住的是:OpenRC 并非只是完全替代 /sbin/init 文件。它所提供的出色特性如下:
-
可運(yùn)行在包括 Gentoo 和 BSD 在內(nèi)的多數(shù) Linux 系統(tǒng)之中
-
支持硬件觸發(fā)的初始化腳本(LCTT 譯注:如硬件熱插拔所觸發(fā)的)
-
支持單個(gè)配置文件
-
不支持單個(gè)服務(wù)配置文件
-
以守護(hù)進(jìn)程的方式運(yùn)行
-
并行服務(wù)啟動(dòng)等
訪問 OpenRC 主頁(yè):https://wiki.gentoo.org/wiki/OpenRC
5. runit
runit 同樣是一個(gè)跨平臺(tái)初始化系統(tǒng),可以運(yùn)行在 GNU/Linux、Solaris、BSD 和 Mac OS X 中,用替代 SysV,同時(shí)提供服務(wù)監(jiān)控。
相比于 SysV 和其他 Linux 初始化系統(tǒng),它提供了一些好用和卓越的組件,如下:
-
服務(wù)監(jiān)控:每個(gè)服務(wù)都關(guān)聯(lián)一個(gè)服務(wù)目錄
-
清理進(jìn)程狀態(tài),以保證每個(gè)進(jìn)程處于干凈狀態(tài)
-
可靠的日志機(jī)制
-
快速的系統(tǒng)啟動(dòng)和關(guān)閉
-
可移植
-
打包方便
-
代碼體積小等
訪問 runit 主頁(yè):http://smarden.org/runit/
正如我之前所說的,Linux 中的初始化系統(tǒng)負(fù)責(zé)啟動(dòng)和管理所有的進(jìn)程。此外,SysV 是 Linux 系統(tǒng)中主要的初始化系統(tǒng),但由于一些性能缺陷,系統(tǒng)開發(fā)者已經(jīng)開發(fā)出幾個(gè)替代品。在這里,我已經(jīng)介紹了幾個(gè)可用的替代方案,但你可能覺得有一些其他的初始化系統(tǒng)值得在此提及。請(qǐng)?jiān)谙路降脑u(píng)論區(qū)將你的想法告訴我們。
網(wǎng)站名稱:詳解Linux五大初始化系統(tǒng)
鏈接URL:http://m.fisionsoft.com.cn/article/dpidppj.html


咨詢
建站咨詢
