systemd 工具命令使用

Posted zy09

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了systemd 工具命令使用相关的知识,希望对你有一定的参考价值。

	systemd 新特性:
		系统引导时实现服务并行启动。
		按需激活进程
		系统状态快照
		基于依赖关系定义服务控制逻辑
		
	核心概念:unit (单元)
		配置文件进行标识和配置,文件中主要包含系统服务,监听socket,保存系统快照及其他init 相关信息
		文件保存至:
			/usr/lib/systemd/system
			/run/systemd/system 
			/etc/systemd/system 
	
		unit 类型:
			service unit :文件扩展名为.service ,用于定义系统服务
			Target unit:文件扩展名为.target ,用于模拟实现运行级别
			device unit :.device 用于定义内核识别的设备
			mount unit:.mount 定义文件系统挂载点
			socket unit : .socket ,用于标识进程间通信的socket文件
			snapshot unit :管理系统快照
			swap unit :用于标识swap 设备
			automount unit : .automount 文件系统的自动挂载点
			path unit :.path  用于定义文件系统中的文件或目录
			
	关键特性:
		基于socket 的激活机制,socket 与服务程序分离
		基于bus 的激活机制;
		基于device 的激活机制
		 基于path 的激活机制
		 系统快照
		 向后兼容sysv   init 脚本。
			
	不兼容:
		systemctl 命令固定不变,
		非由systemd 启动的服务,systemctl 无法与之通信
	管理系统服务:
		CENTios 7:service unit
		注意 能兼容早起的服务脚本
		
		命令:systemctl COMMAND  name.service
		
	
	systemctl start name.service
	systemctl stop name.service	
	systemctl status name.service	
	systemctl restart name.service	
	
条件式重启: systemctl try-restart name.service

查看服务当前状态: systemctl is-active name.service
	
--------------------------------------------------------------
当前位置:首页 » 系统管理 » systemctl systemctl命令进程和作业管理 systemctl命令是系统服务管理器指令,它实际上将 service 和 chkconfig 这两个命令组合到一起。 任务	旧指令	新指令 
使某服务自动启动	chkconfig --level 3 httpd on	systemctl enable httpd.service 
使某服务不自动启动	chkconfig --level 3 httpd off	systemctl disable httpd.service 
检查服务状态	service httpd status	             systemctl status httpd.service 
(服务详细信息)                                    systemctl is-active httpd.service (仅显示是否 Active) 
显示所有已启动的服务	chkconfig --list	          systemctl list-units --type=service 
启动某服务	service httpd start	                     systemctl start httpd.service 
停止某服务	service httpd stop	                     systemctl stop httpd.service 
重启某服务	service httpd restart	                 systemctl restart httpd.service
显示所有服务:chkconfig --list	                     systemctl list-units --type=service --all
查看所有服务开机启动状态  systemctl list-unit-files --type=service


	target units:
			unit 配置文件 .target 
			运行级别:
			0  ==== runlevel0.target poweroff 关机
			1  ==== runlevel1.target rescue.target  救援模式
			2 ===== runlevel2.target multi-user.target 
			3 ===== runlevel3.target multi-user.target 
			4 ====	runlevel4.target multi-user.target
	#2 3 4 级别相同
			5  ==== runlevel5.target  GUI 级别  graphical.target 
			6  ==== runlevel6.target   reboot.target 
	
	级别切换:
		init N ==== systemctl isolate name.target 
		
		systemctl isolate graphical.target  #切换为图形界面
	
			systemctl list-units --type target  #查看装载级别
--------------------------------------------------------------
basic.target          loaded active active Basic System
cryptsetup.target     loaded active active Encrypted Volumes
getty.target          loaded active active Login Prompts
graphical.target      loaded active active Graphical Interface
local-fs-pre.target   loaded active active Local File Systems (Pre)
local-fs.target       loaded active active Local File Systems
multi-user.target     loaded active active Multi-User System
network-online.target loaded active active Network is Online
network-pre.target    loaded active active Network (Pre)
network.target        loaded active active Network
paths.target          loaded active active Paths
remote-fs.target      loaded active active Remote File Systems
slices.target         loaded active active Slices
sockets.target        loaded active active Sockets
swap.target           loaded active active Swap
sysinit.target        loaded active active System Initialization
timers.target         loaded active active Timers
-------------------------------------------------------
	
	获取默认运行级别:
	/etc/inittab 	systemctl get-default
	修改默认级别
	/etc/inittab    systemctl set-default graphical.target

	或者修改配置文件
	/etc/systemd/system/default.target 
	 /usr/lib/systemd/system/multi-user.target.

	将user lib 文件软连接至 etc 下
	
	
	切换至救援模式:
	systemctl emergemcy 
	
	其他常用命令
		systemctl halt 关机
		systemctl poweroff  关机
		systemctl reboot  重启
		systemctl  suspend  挂起
		systemctl hiberate   快照
		systemctl hybrid-sleep 快照并且挂起
		
--------------------------------------------------------
System Commands:
  is-system-running               Check whether system is fully running
  default                         Enter system default mode
  rescue                          Enter system rescue mode
  emergency                       Enter system emergency mode
  halt                            Shut down and halt the system
  poweroff                        Shut down and power-off the system
  reboot [ARG]                    Shut down and reboot the system
  kexec                           Shut down and reboot the system with kexec
  exit                            Request user instance exit
  switch-root ROOT [INIT]         Change to a different root file system
  suspend                         Suspend the system
  hibernate                       Hibernate the system
  hybrid-sleep                    Hibernate and suspend the system
-------------------------------------------------------------------		
	
	
	systemctl list-dependencies httpd.service   #查看依赖关系
	
	systemctl reload-or-restart 			 #重载或重启服务
	
	禁止设定为开机自启: 			systemctl mask name.service
		
	取消设定        				systemctl	umask name.service

  

 

以上是关于systemd 工具命令使用的主要内容,如果未能解决你的问题,请参考以下文章

systemctl 命令详解及使用教程

(转)systemctl 命令完全指南

systemctl命令完全指南

systemctl 命令完全指南

centos7 中 systemd systemctl管理服务的命令

Systemd程序及相关命令