systemctl 介绍

Systemctl是一个systemd工具,主要负责控制systemd系统和服务管理器。

重要:Systemctl接受服务(.service),挂载点(.mount),套接字(.socket)和设备(.device)作为单位。

systemctl 常用 命令

Systemd的版本

systemd --version

systemd和systemctl的二进制文件和库的安装位置

# whereis systemd
systemd: /usr/lib/systemd /etc/systemd /usr/share/systemd /usr/share/man/man1/systemd.1.gz
# whereis systemctl
systemctl: /usr/bin/systemctl /usr/share/man/man1/systemctl.1.gz

列出所有可用的单位

# systemctl list-unit-files
UNIT FILE                                   STATE
proc-sys-fs-binfmt_misc.automount           static
dev-hugepages.mount                         static
dev-mqueue.mount                            static
proc-sys-fs-binfmt_misc.mount               static
sys-fs-fuse-connections.mount               static
sys-kernel-config.mount                     static
sys-kernel-debug.mount                      static
tmp.mount                                   disabled
brandbot.path                               disabled
.....

列出所有运行单元

# systemctl list-units
UNIT                                        LOAD   ACTIVE SUB       DESCRIPTION
proc-sys-fs-binfmt_misc.automount           loaded active waiting   Arbitrary Executable File Formats File Syste
sys-devices-pc...0-1:0:0:0-block-sr0.device loaded active plugged   VBOX_CD-ROM
sys-devices-pc...:00:03.0-net-enp0s3.device loaded active plugged   PRO/1000 MT Desktop Adapter
sys-devices-pc...00:05.0-sound-card0.device loaded active plugged   82801AA AC'97 Audio Controller
sys-devices-pc...:0:0-block-sda-sda1.device loaded active plugged   VBOX_HARDDISK
sys-devices-pc...:0:0-block-sda-sda2.device loaded active plugged   LVM PV Qzyo3l-qYaL-uRUa-Cjuk-pljo-qKtX-VgBQ8
sys-devices-pc...0-2:0:0:0-block-sda.device loaded active plugged   VBOX_HARDDISK
sys-devices-pl...erial8250-tty-ttyS0.device loaded active plugged   /sys/devices/platform/serial8250/tty/ttyS0
sys-devices-pl...erial8250-tty-ttyS1.device loaded active plugged   /sys/devices/platform/serial8250/tty/ttyS1
sys-devices-pl...erial8250-tty-ttyS2.device loaded active plugged   /sys/devices/platform/serial8250/tty/ttyS2
sys-devices-pl...erial8250-tty-ttyS3.device loaded active plugged   /sys/devices/platform/serial8250/tty/ttyS3
sys-devices-virtual-block-dm\x2d0.device    loaded active plugged   /sys/devices/virtual/block/dm-0
sys-devices-virtual-block-dm\x2d1.device    loaded active plugged   /sys/devices/virtual/block/dm-1
sys-module-configfs.device                  loaded active plugged   /sys/module/configfs
...

检查单元是否启用?

[root@10 ~]# systemctl is-enabled kubelet
enabled

检查单元或服务是否正在运行?

[root@10 ~]# systemctl status kubelet -l
● kubelet.service - kubelet: The Kubernetes Node AgentLoaded: loaded (/etc/systemd/system/kubelet.service; enabled; vendor preset: disabled)Drop-In: /etc/systemd/system/kubelet.service.d└─10-kubeadm.confActive: active (running) since Sat 2019-11-16 02:33:56 CST; 1 weeks 1 days agoDocs: https://kubernetes.io/docs/Main PID: 566971 (kubelet)Memory: 90.4MCGroup: /system.slice/kubelet.service└─566971 /usr/bin/kubelet
--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf
--kubeconfig=/etc/kubernetes/kubelet.conf
--config=/var/lib/kubelet/config.yaml
--cgroup-driver=cgroupfs
--network-plugin=cni
--pod-infra-container-image=10.10.101.175/k8s-deploy/pause:3.1
--system-reserved=memory=782Mi
--system-reserved-cgroup=/system.slice

如何在Linux中启动,重新启动,停止,重新加载和检查服务(httpd.service)的状态

# systemctl start httpd.service
# systemctl restart httpd.service
# systemctl stop httpd.service
# systemctl reload httpd.service
# systemctl status httpd.service

如何在引导时激活服务并启用或禁用服务(系统引导时自动启动服务)

# systemctl is-active httpd.service
# systemctl enable httpd.service
# systemctl disable httpd.service

journalctl

Systemd 统一管理所有 Unit 的启动日志。带来的好处就是,可以只用journalctl一个命令,查看所有日志(内核日志和应用日志)。日志的配置文件是/etc/systemd/journald.conf。

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

journalctl 常用命令

# 查看所有日志(默认情况下 ,只保存本次启动的日志)
$ journalctl

# 查看内核日志(不显示应用日志)
$ journalctl -k

# 查看系统本次启动的日志
$ journalctl -b
$ journalctl -b -0

# 查看上一次启动的日志(需更改设置)
$ journalctl -b -1

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

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

# 显示尾部指定行数的日志
$ journalctl -n 20

# 实时滚动显示最新日志
$ journalctl -f

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

# 比如查看docker服务的日志
$ systemctl status docker

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

# 查看某个路径的脚本的日志
$ journalctl /usr/bin/bash

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

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

# 实时滚动显示某个 Unit 的最新日志
$ 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
$ journalctl -p err -b

# 日志默认分页输出,--no-pager 改为正常的标准输出
$ journalctl --no-pager

# 以 JSON 格式(单行)输出
$ journalctl -b -u nginx.service -o json

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

# 显示日志占据的硬盘空间
$ journalctl --disk-usage

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

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

Linux基础:systemctl和journalctl常用命令相关推荐

  1. kubernetes基础介绍及kubectl常用命令

    kubernetes基础介绍及kubectl常用命令 k8s的pod分类 自主式pod 控制器管理的pod 核心主键 HPA service 网络模型 同节点Pod之间的通信 不同节点上的Pod通信 ...

  2. 【方向盘】达到Linux第三阶段的常用命令笔记记录---Part Ⅱ

    实现自己既定的目标,必须能耐得住寂寞单干 本文已被https://yourbatman.cn收录:女娲Knife-Initializr工程可公开访问啦:程序员专用网盘https://wangpan.y ...

  3. linux命令grep和find怎么用,Linux下find和grep常用命令及区别介绍

    在使用linux时,经常需要进行文件查找.其中查找的命令主要有find和grep.两个命令是有区别的. 区别: (1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空 ...

  4. Linux K8S(Kubernetes)常用命令

    Linux K8S(Kubernetes)常用命令集 一.K8S简介 二.常用命令 2.1 想查看kubectl命令的方法 2.2 常用的命令类 2.3 K8S常用命令 一.K8S简介 Kuberne ...

  5. 查看Linux当前操作系统版本信息常用命令

    查看Linux当前操作系统版本信息常用命令 Linux查看当前操作系统版本信息 Linux查看版本当前操作系统内核信息 linux查看版本当前操作系统发行信息 Linux查看cpu相关信息,包括型号. ...

  6. Windows 和 Linux 查看和关闭端口常用命令

    title: Windows 和 Linux 查看和关闭端口常用命令 date: 2022-03-11 09:35:48 tags: Linux Windows categories: 开发实践 co ...

  7. NO9 Linux快捷键整理及最常用命令

    Linux快捷键整理及最常用命令 常用快捷键: Ctrl + u            删除光标之前到行首的字符 Ctrl + k            删除光标之前到行尾的字符 Ctrl + c   ...

  8. Linux(Ubuntu) 使用指南和常用命令

    L i n u x ( U b u n t u ) Linux(Ubuntu) Linux(Ubuntu) 使用指南与常用命令 Copyright: Jingmin Wei, Pattern Reco ...

  9. linux系统10个最常用命令,Linux操作系统10条最常用的基础操作命令

    Linux操作系统10条最常用的基础操作命令 玩过Linux的人都会知道,Linux中的命令的确是非常多,但是玩过Linux的人也从来不会因为Linux的命令如此之多而烦恼,因为我们只需要掌握我们最常 ...

  10. Linux基础、vim、find命令等

    Linux基础: 树状目录结构 /bin:是Binary的缩写,这个目录存放着系统必备执行命令 /boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件,自己的安装别放 ...

最新文章

  1. java enum.isdefined_Enum.IsDefined 方法 (System) | Microsoft Docs
  2. PHP实现列表页综合筛选功能,dede织梦列表页联动筛选方法功能的实现
  3. 程序员修神之路--问世间异步为何物?
  4. SpringBoot→thymeleaf静态模板
  5. 数据访问优化性能(转载)
  6. 2015职称计算机考试模拟,2015职称计算机考试《Dreamweaver》模拟试题(9)
  7. 阵列信号处理——求根MUSIC算法(Root MUSIC)
  8. 情侣博客源码php,wordpress如何搭建简单的情侣博客
  9. 手写bpnn算法实现iris多分类
  10. java se检查异常,JavaSE:异常(下)
  11. 程序员转岗产品经理有哪些优势和劣势?
  12. 在线头像制作网站FaceYourManga
  13. mapbox-gl:创建Marker
  14. WinXP去掉桌面图标阴影
  15. 正弦余弦指引的乌鸦搜索算法-附代码
  16. 跨境爆款ANC主动降噪耳机,蓝牙耳机厂家分享产品详细参数
  17. 蓝牙基础知识进阶——Link Manager通用规则介绍
  18. LDAP未授权漏洞验证
  19. 使用navicat新建sqlite数据库
  20. Tableau基础-第三章(快速表计算)

热门文章

  1. C语言(New B语言)
  2. 【带书签】零基础学SQL.pdf(孙浏毅 等著) 下载
  3. SVN checkout 之后图标没有显示(绿色勾)的问题
  4. 判断图有无环_汽车 AEB 驾驶员在环系统建立
  5. secs/gem协议系统通讯平台
  6. 资讯美国悬赏1000万美元追捕勒索黑客、能源行业成为网络钓鱼攻击“重灾区”|11月8日全球网络安全热点
  7. 层次分析法(附实例)
  8. html表头固定原理,html Table 表头固定的实现
  9. 终结者2免费教程_如何在模拟器上玩(匹配的还是手机服)_适用最新客户端
  10. VMWare虚拟机服务器设置固定ip,切换网络后不用重新设置服务器ip