【轉】Linux開機啟動管理---systemd使用


 常用命令 


使某服務自動啟動

systemctl enable httpd.service

使某服務不自動啟動

systemctl disable httpd.service

檢查服務狀態

systemctl status httpd.service (服務詳細信息) 
systemctl is-active httpd.service (僅顯示是否 Active)

顯示所有已啟動的服務

systemctl list-units --type=service

啟動某服務

systemctl start httpd.service

停止某服務

systemctl stop httpd.service

重啟某服務

systemctl restart httpd.service

 

開機服務管理

開機啟動 unit

systemctl enable test.service
增加由/lib/systemd/system/到/etc/systemd/system/multi-user.target.wants/下的軟鏈接
ln -s '/usr/lib/systemd/system/postfix.service' '/etc/systemd/system/multi-user.target.wants/test.service'

開機不啟動 unit

systemctl disable test.service
刪除/etc/systemd/system/multi-user.target.wants下的軟鏈接

查看服務開機是否啟動

systemctl is-enabled test.service #查詢服務是否開機啟動

查看開機自啟動程序

ls /etc/systemd/system/multi-user.target.wants/

顯示啟動失敗的單元

systemctl --failed

查看 systemd 管理的所有單元

systemctl list-unit-files

 

日志管理

Systemd 統一管理所有 Unit 的啟動日志。帶來的好處就是,可以只用journalctl一個命令,查看所有日志(內核日志和應用日志)。日志的配置文件是/etc/systemd/journald.conf。

journalctl功能強大,用法非常多。

# 查看所有日志(默認情況下 ,只保存本次啟動的日志)
$ sudo journalctl

# 查看內核日志(不顯示應用日志)
$ sudo journalctl -k

# 查看系統本次啟動的日志
$ sudo journalctl -b
$ sudo journalctl -b -0

# 查看上一次啟動的日志(需更改設置)
$ sudo journalctl -b -1

# 查看指定時間的日志
$ sudo journalctl --since="2012-10-30 18:17:16"
$ sudo journalctl --since "20 min ago"
$ sudo journalctl --since yesterday
$ sudo journalctl --since "2015-01-10" --until "2015-01-11 03:00"
$ sudo journalctl --since 09:00 --until "1 hour ago"

# 顯示尾部的最新10行日志
$ sudo journalctl -n

# 顯示尾部指定行數的日志
$ sudo journalctl -n 20

# 實時滾動顯示最新日志
$ sudo journalctl -f

# 查看指定服務的日志
$ sudo journalctl /usr/lib/systemd/systemd

# 查看指定進程的日志
$ sudo journalctl _PID=1

# 查看某個路徑的腳本的日志
$ sudo journalctl /usr/bin/bash

# 查看指定用戶的日志
$ sudo journalctl _UID=33 --since today

# 查看某個 Unit 的日志
$ sudo journalctl -u nginx.service
$ sudo journalctl -u nginx.service --since today

# 實時滾動顯示某個 Unit 的最新日志
$ sudo journalctl -u nginx.service -f

# 合並顯示多個 Unit 的日志
$ journalctl -u nginx.service -u php-fpm.service --since today

# 查看指定優先級(及其以上級別)的日志,共有8級
# 0: emerg
# 1: alert
# 2: crit
# 3: err
# 4: warning
# 5: notice
# 6: info
# 7: debug
$ sudo journalctl -p err -b

# 日志默認分頁輸出,--no-pager 改為正常的標准輸出
$ sudo journalctl --no-pager

# 以 JSON 格式(單行)輸出
$ sudo journalctl -b -u nginx.service -o json

# 以 JSON 格式(多行)輸出,可讀性更好
$ sudo journalctl -b -u nginx.serviceqq
 -o json-pretty

# 顯示日志占據的硬盤空間
$ sudo journalctl --disk-usage

# 指定日志文件占據的最大空間
$ sudo journalctl --vacuum-size=1G

# 指定日志文件保存多久
$ sudo journalctl --vacuum-time=1years

 

 

Reference:

https://blog.csdn.net/qq562029186/article/details/67639676   Linux開機啟動管理---systemd使用

 


免責聲明!

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



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