centos7 管理開機啟動:systemd


 

 

一、CentOS7 systemd 介紹

在 CentOS7 中,使用 systemd 來管理其他服務是否開機啟動,systemctl 是 systemd 服務的命令行工具

 

[root@mysql ~]# systemctl start httpd.service         // 啟動服務
[root@mysql ~]# systemctl stop httpd.service          // 關閉服務
[root@mysql ~]# systemctl restart httpd.service       // 重啟服務
[root@mysql ~]# systemctl status httpd.service        // 查看服務狀態

 

 

 

[root@mysql ~]# systemctl is-enabled httpd.service    // 查看指定的服務是否開機啟動
[root@mysql ~]# systemctl enable httpd.service        // 設置指定的服務開機啟動
[root@mysql ~]# systemctl disable httpd.service       // 設置指定的服務開機不啟動

 

 

 

二、CentOS7 unit 介紹

(1) CentOS7 中新增了 unit(單元)的概念,它是系統所有資源的統稱,不同的資源稱為不同的 unit(單元)
(2) 常見的 unit 有:Service Unit ( 系統服務 ) 、Device Unit ( 硬件設備 ) 、Path Unit ( 文件或路徑 ) 等等
(3) Systemd 用來管理這些單元,它保存了系統服務、硬件設備、掛載點等單元的配置文件,並能夠處理不同單元之間的依賴關系
(4) 單元的狀態:active 、inactive 、activing 、deactiving ,分別表示正在運行 、已經停止運行 、正在啟動 、正在停止

[root@mysql ~]#  systemctl list-units                        // 列出正在運行的unit
[root@mysql ~]#  systemctl list-units --all                  // 列出所有狀態的unit
[root@mysql ~]#  systemctl list-units --all --state=active   // 列出指定狀態的unit
[root@mysql ~]#  systemctl list-units --type=service         // 列出指定類型的unit

 

 

三、CentOS7 target 介紹

(1) target 其實就是一組 unit 組合,CentOS7 的 target 相當於 CentOS6 的 runlevel ( 運行級別 ) ,啟動一個 target,就相當於啟動多個 unit
(2) 一個 service 屬於一種類型的 unit ,多個 unit 可以組成一個 target ,一個 target 包含了多個 service

[root@mysql ~]# ll /usr/lib/systemd/system
lrwxrwxrwx. 1 root root   15 Mar 27 08:27 runlevel0.target -> poweroff.target
lrwxrwxrwx. 1 root root   13 Mar 27 08:27 runlevel1.target -> rescue.target
drwxr-xr-x. 2 root root   50 Mar 27 08:27 runlevel1.target.wants
lrwxrwxrwx. 1 root root   17 Mar 27 08:27 runlevel2.target -> multi-user.target
drwxr-xr-x. 2 root root   50 Mar 27 08:27 runlevel2.target.wants
lrwxrwxrwx. 1 root root   17 Mar 27 08:27 runlevel3.target -> multi-user.target
drwxr-xr-x. 2 root root   50 Mar 27 08:27 runlevel3.target.wants
lrwxrwxrwx. 1 root root   17 Mar 27 08:27 runlevel4.target -> multi-user.target
drwxr-xr-x. 2 root root   50 Mar 27 08:27 runlevel4.target.wants
lrwxrwxrwx. 1 root root   16 Mar 27 08:27 runlevel5.target -> graphical.target
drwxr-xr-x. 2 root root   50 Mar 27 08:27 runlevel5.target.wants
lrwxrwxrwx. 1 root root   13 Mar 27 08:27 runlevel6.target -> reboot.target

 

 

[root@mysql ~]# systemctl get-default                            // 查看當前系統默認的target
[root@mysql ~]# systemctl list-unit-files --type=target          //列出所有target
[root@mysql ~]# systemctl list-dependencies multi-user.target    // 查看指定target下有哪些unit

 

[root@mysql ~]# systemctl get-default
multi-user.target

 

 

[root@mysql ~]# systemctl list-dependencies multi-user.target 
multi-user.target
● ├─auditd.service
● ├─crond.service
● ├─dbus.service
● ├─firewalld.service
● ├─irqbalance.service
● ├─kdump.service
● ├─network.service
● ├─NetworkManager.service
● ├─plymouth-quit-wait.service
● ├─plymouth-quit.service
● ├─postfix.service
● ├─rhel-configure.service
● ├─rsyslog.service
● ├─sshd.service

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM