今天小編給大家分享一下Linux系統(tǒng)啟動(dòng)與服務(wù)管理的方法是什么的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來(lái)了解一下吧。
創(chuàng)新互聯(lián)建站是一家專注網(wǎng)站建設(shè)、網(wǎng)絡(luò)營(yíng)銷策劃、小程序開(kāi)發(fā)、電子商務(wù)建設(shè)、網(wǎng)絡(luò)推廣、移動(dòng)互聯(lián)開(kāi)發(fā)、研究、服務(wù)為一體的技術(shù)型公司。公司成立十余年以來(lái),已經(jīng)為上1000+茶樓設(shè)計(jì)各業(yè)的企業(yè)公司提供互聯(lián)網(wǎng)服務(wù)。現(xiàn)在,服務(wù)的上1000+客戶與我們一路同行,見(jiàn)證我們的成長(zhǎng);未來(lái),我們一起分享成功的喜悅。
??服務(wù)器在正常的運(yùn)行過(guò)程中,一般很少重啟,但是如果發(fā)生了未知故障或者遇到了人為誤操作的情況,可能就會(huì)出現(xiàn)啟動(dòng)異常的狀況。雖然 Linux 系統(tǒng)啟動(dòng)流程是比較底層的知識(shí)了,但是為了加深對(duì) Linux 系統(tǒng)的理解,總結(jié)了這篇文章。
??服務(wù)器主機(jī)開(kāi)機(jī)以后,將根據(jù)主板 BIOS 中的設(shè)置對(duì) CPU、內(nèi)存、顯卡、硬盤等設(shè)備進(jìn)行初步檢測(cè),檢測(cè)成功后根據(jù)預(yù)設(shè)的啟動(dòng)順序移交系統(tǒng)控制權(quán),大多時(shí)候會(huì)移交給本機(jī)硬盤。
??當(dāng)從本機(jī)硬盤中啟動(dòng)系統(tǒng)時(shí),首先根據(jù)硬盤第一個(gè)扇區(qū)中 MBR (主引導(dǎo)記錄)的設(shè)置,將系統(tǒng)控制權(quán)傳遞給包含操作系統(tǒng)引導(dǎo)文件的分區(qū);或者直接根據(jù) MBR 記錄中的引導(dǎo)信息調(diào)用啟動(dòng)菜單(如GRUB) 。
??對(duì)于Linux操作系統(tǒng)來(lái)說(shuō),GRUB (統(tǒng)一啟動(dòng)加載器)是使用最為廣泛的多系統(tǒng)引導(dǎo)器程序。系統(tǒng)控制權(quán)傳遞給 GRUB 以后,將會(huì)顯示啟動(dòng)菜單給用戶選擇,并根據(jù)所選項(xiàng)(或采用默認(rèn)值)加載 Linux 內(nèi)核文件,然后將系統(tǒng)控制權(quán)轉(zhuǎn)交給內(nèi)核。需要注意的是,Centos7 采用的是 GRUB2 啟動(dòng)引導(dǎo)器。
??Linux 內(nèi)核是一個(gè)預(yù)先編譯好的特殊二進(jìn)制文件,介于各種硬件資源與系統(tǒng)程序之間, 負(fù)責(zé)資源分配與調(diào)度。內(nèi)核接過(guò)系統(tǒng)控制權(quán)以后,將完全掌控整個(gè) Linux 操作系統(tǒng)的運(yùn)行過(guò)程。
在CentoS 系統(tǒng)中,默認(rèn)的內(nèi)核文件位于"/boot/vmlinuz-3.10.0-514.el7.x86_64"。
??為了完成進(jìn)一步的系統(tǒng)引導(dǎo)過(guò)程,Linux 內(nèi)核首先將系統(tǒng)中的 “/sbin/init” 程序加載到內(nèi)存中運(yùn)行,init 進(jìn)程負(fù)責(zé)完成一系列的系統(tǒng)初始化過(guò)程,最后等待用戶進(jìn)行登錄。
檢測(cè)出第一個(gè)能夠引導(dǎo)系統(tǒng)的設(shè)備比如硬盤或光驅(qū)
運(yùn)行放在 MBR 扇區(qū)里的啟動(dòng) GRUB 引導(dǎo)程序
GRUB 引導(dǎo)程序通過(guò)讀取 GRUB 配置文件 /boot/grub2/grub.cfg 來(lái)獲取內(nèi)核和鏡像文件系統(tǒng)的設(shè)置以及路徑位置
把內(nèi)核和鏡像文件系統(tǒng)加載到內(nèi)存中
加載硬件驅(qū)動(dòng)程序,內(nèi)核把 init 進(jìn)程加載到內(nèi)存中運(yùn)行
由 Linux 內(nèi)核加載運(yùn)行 /sbin/init 程序
init 進(jìn)程是系統(tǒng)中第一個(gè)進(jìn)程
init 進(jìn)程的 PID 號(hào)永遠(yuǎn)為 1
[root@c7-1 ~]#ll /sbin/initlrwxrwxrwx. 1 root root 22 8月 13 21:44 /sbin/init -> ../lib/systemd/systemd
systemd 是 Linux 操作系統(tǒng)的一種 init 軟件
CentOS7 中采用全新的 systemd 啟動(dòng)方式,取代傳統(tǒng)的 SysVinit
CentOS7 中運(yùn)行的第一個(gè) init 進(jìn)程是 /lib/systemd/systemd
[root@c7-1 ~]#ps -ef UID PID PPID C STIME TTY TIME CMD root 1 0 0 8月15 ? 00:00:31 /usr/lib/systemd/systemd --switched-root --system --deserialize 22 root 2 0 0 8月15 ? 00:00:00 [kthreadd] root 4 2 0 8月15 ? 00:00:00 [kworker/0:0H] root 6 2 0 8月15 ? 00:00:00 [ksoftirqd/0] root 7 2 0 8月15 ? 00:00:00 [migration/0] ......
單元類型 | 擴(kuò)展名 | 說(shuō)明 |
---|---|---|
Service | .service | 描述一個(gè)系統(tǒng)服務(wù) |
Socket | .socket | 描述一個(gè)進(jìn)程間通信的套接字 |
Device | .device | 描述一個(gè)內(nèi)核識(shí)別的設(shè)備文件 |
Mount | .mount | 描述一個(gè)文件系統(tǒng)的掛載點(diǎn) |
Automount | .automount | 描述一個(gè)文件系統(tǒng)的自動(dòng)掛載點(diǎn) |
Swap | .swap | 描述一個(gè)內(nèi)存交換設(shè)備或交換文件 |
Path | .path | 描述一個(gè)文件系統(tǒng)中文件或目錄 |
Timer | .timer | 描述一個(gè)定時(shí)器(用于實(shí)現(xiàn)類似 cron 的調(diào)度任務(wù)) |
Snapshot | .snapshot | 用于保存一個(gè) systemd 的狀態(tài) |
Scope | .scope | 使用 systemd 的總線接口以編程的方式創(chuàng)建外部進(jìn)程 |
Slice | .slice | 描述居于 Cgroup 的一組通過(guò)層次組織的管理系統(tǒng)進(jìn)程 |
Target | .target | 描述一組 systemd 的單元 |
運(yùn)行級(jí)別 | systemd 的 target | 說(shuō)明 |
---|---|---|
0 | target | 關(guān)機(jī)狀態(tài),使用該級(jí)別時(shí)將會(huì)關(guān)閉主機(jī) |
1 | rescue.target | 單用戶模式,不需要密碼驗(yàn)證即可登錄系統(tǒng),多用于系統(tǒng)維護(hù) |
2 | multi-user.target | 用戶定義/域特定運(yùn)行級(jí)別。默認(rèn)等同于3 |
3 | multi-user.target | 字符界面的完整多用戶模式,大多數(shù)服務(wù)器主機(jī)運(yùn)行在此級(jí)別 |
4 | multi-user.target | 用戶定義/域特定運(yùn)行級(jí)別。默認(rèn)等同于3 |
5 | graphical.target | 圖形界面的多用戶模式,提供了圖形桌面操作環(huán)境 |
6 | reboot.target | 重新啟動(dòng),使用該級(jí)別時(shí)將會(huì)重啟主機(jī) |
格式:
systemctl COMMAND name.service #.service 也可以省略
Sysvinit 和 Systemd 命令對(duì)比
Sysvinit命令 | Systemd命令 | 含義 |
---|---|---|
service name start | systemctl start name | 啟動(dòng)服務(wù) |
service name stop | systemctl stop name | 關(guān)閉服務(wù) |
service name restart | systemctl restart name | 重啟服務(wù)不管當(dāng)前是啟動(dòng)還是關(guān)閉狀態(tài) |
service name reload | systemctl reload name | 重新載入服務(wù)配置信息而不中斷服務(wù) |
service name condrestart | systemctl condrestart name | 運(yùn)行狀態(tài)的服務(wù)可以重啟,不在運(yùn)行狀態(tài)無(wú)法重啟 |
service name status | systemctl status name | 查看服務(wù)的運(yùn)行狀態(tài) |
chkconfig name on | systemctl enable name | 設(shè)置服務(wù)為開(kāi)機(jī)自啟動(dòng) |
chkconfig name off | systemctl disable name | 設(shè)置服務(wù)為開(kāi)機(jī)關(guān)閉 |
chkconfig name | systemctl is-enabled name | 檢查服務(wù)是否開(kāi)機(jī)自啟 |
chkconfig name --add | systemctl daemon-reload | 創(chuàng)建一個(gè)新服務(wù)文件,或者變更配置的時(shí)候使用 |
示例:
#啟動(dòng) httpd 服務(wù) systemctl start httpd #停止 httpd 服務(wù) systemctl stop httpd #重啟 httpd 服務(wù) systemctl restart httpd #查看 httpd 服務(wù)狀態(tài) systemctl status httpd #禁止自動(dòng)和手動(dòng)啟動(dòng)服務(wù)(可以關(guān)閉運(yùn)行的服務(wù)) systemctl mask name.service #取消禁止 systemctl unmask name.service #查看某服務(wù)當(dāng)前是否正在運(yùn)行 systemctl is-active name.service #查看所有服務(wù) systemctl list-unit-files --type=service #查看所有已經(jīng)激活的服務(wù) systemctl list-unit-files --type=service | grep enabled #列出啟動(dòng)失敗的服務(wù) systemctl --failed --type=service 或 systemctl list-units --state failed 或 systemctl list-unit-files --state=failed #開(kāi)啟 httpd 服務(wù)并設(shè)置開(kāi)機(jī)自啟 systemctl enable --now httpd.service #關(guān)閉 httpd 服務(wù)并關(guān)閉開(kāi)機(jī)自啟 systemctl disable --now httpd.service #查看服務(wù)的依賴關(guān)系 systemctl list-dependencies name.service #殺掉進(jìn)程 systemctl kill unitname
以上就是“Linux系統(tǒng)啟動(dòng)與服務(wù)管理的方法是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
網(wǎng)站名稱:Linux系統(tǒng)啟動(dòng)與服務(wù)管理的方法是什么
分享地址:http://www.chinadenli.net/article48/pgichp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動(dòng)網(wǎng)站建設(shè)、微信小程序、用戶體驗(yàn)、建站公司、網(wǎng)站設(shè)計(jì)公司、動(dòng)態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)