首页 > 其他分享 >systemd服务介绍及systemctl工具使用

systemd服务介绍及systemctl工具使用

时间:2025-01-07 20:34:19浏览次数:1  
标签:httpd systemd target service systemctl 工具 NAME

redhat从centos7开始,各类服务由systemd接管

Systemd的一些特性:
系统引导时实现服务并行启动;
按需激活进程;
系统状态快照;
基于依赖关系定义服务控制逻辑;

Systemd的兼容性:
向后兼容sysv init脚本:
/etc/init.d/ 兼容此目录下的脚本,可由systemd管控
如/etc/init.d/network start 启动网络后,可由systemctl stop network 关闭


不兼容:
systemcti的命令是固定不变的;
非由systemd启动的服务,systemctl无法与之通信;
如安装httpd服务后,可直接执行httpd启动服务,但通过systemctl status httpd查看服务并没有启动


systemd相关配置文件
/usr/lib/systemd/system 存放各类service服务
/lib/systemd/system/ 存放各类service服务
/etc/systemd/system/ 添加开机自启后,服务会被链接到此目录下


systemd核心 unit 单元:
unit由其相关配置文件进行标识、识别和配置;文件中主要包含了系统服务、监听的socket、保存的快照以及其它与init相关的信息。如此目录/lib/systemd/system/ 下的各类service,socket,target等文件
常见的unit单元:
Service unit:文件扩展名为.service,用于定义系统服务;
Target unit:文件扩展为.target,用于模拟实现”运行级别“;
Socket unit:.socket,用于标识进程间通信用到的socket文件;


systemctl常用命令:
systemctl [OPTIONS...] COMMAND [NAME...]
启动:systemctl start NAME.service
  systemctl start --now NAME.service 启动服务同时设置开机自启
停止:systemctl stop NAME.service
  systemctl start --now NAME.service 停止服务同时设置禁止开机自启
重启:systemctl restart NAME.service
运行状态:systemctl status NAME.service
查看所有服务:systemctl list-units -t service -a
设置服务开机自启:systemctl enable NAME.service
禁止服务开机自启:systemctl disable NAME.service
查看某服务是否开机自启:systemctl is-enabled NAME.service
禁止某服务启动和设置开机自启:systemctl mask NAME.service
取消此禁止:systemctl unmask NAME.service


等同于service命令:service NAME.service start|stop|status|restart|reload|force-reload


systemd运行级别:
获取默认运行级别:systemctl get-default
修改默认运行级别:systemctl set-default NAME.target
systemctl set-default multi-user.target 设置运行级别为命令行
systemctl set-default graphical.target 设置运行级别为图形化
linux默认的6个运行级别,与systemd对应关系
0==>runlevel0.target,poweroff.target
1==>runlevel1.target,rescue.target
2==>runlevel2.tartet,multl-user.target
3==>runlevel3.tartet,multl-user.target
4==>runlevel4.tartet,multi-user.target
5==>runlevel5.target,graphlcal.target
6==>runlevel6.target,reboot.target


service文件内容说明:
一般service文件由三节组成,分别为[Unit],[Service],[Install]
Unlt段的常用选项:
Descrlptlon:描述信息:意义性描述:
After:定义unit的启动次序:表示当前unit应该晚于哪些unilt启动:其功能与Before相反
Requles:依赖到的其它units:强依赖,被依赖的units无法激活时,当前unit即无法激活
Wants:依赖到的其它unlts;弱依赖;
Confulcts:定义uplts间的冲突关系
Service段的常用选项:
Type:用于定义影响ExecStart及相关参数的功能的unlt进程启动类型:
Install段的常用选项:
Alias:
RequlredBy:被哪些units所依赖:
WantedBy:被哪些units所依赖:


注:新创建的unit文件,或者修改了unit文件,需要重载systemd,使新配置生效
systemctl daemon-reload

 

附:一个完整的httpd.service文件

[Unit]
Description=The Apache HTTP Server
After=network.target remote-fs.target nss-lookup.target
Documentation=man:httpd(8)
Documentation=man:apachectl(8)

[Service]
Type=notify
EnvironmentFile=/etc/sysconfig/httpd
ExecStart=/usr/sbin/httpd $OPTIONS -DFOREGROUND
ExecReload=/usr/sbin/httpd $OPTIONS -k graceful
ExecStop=/bin/kill -WINCH ${MAINPID}
# We want systemd to give httpd some time to finish gracefully, but still want
# it to kill httpd after TimeoutStopSec if something went wrong during the
# graceful stop. Normally, Systemd sends SIGTERM signal right after the
# ExecStop, which would kill httpd. We are sending useless SIGCONT here to give
# httpd time to finish.
KillSignal=SIGCONT
PrivateTmp=true

[Install]
WantedBy=multi-user.target

 

标签:httpd,systemd,target,service,systemctl,工具,NAME
From: https://www.cnblogs.com/gpysir/p/18658325

相关文章

  • NVIDIA 推出智能体构建工具 Agentic AI Blueprints;VITA-1.5:实时多模态交互,1.5 秒延迟
      这里是「RTE开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享RTE(Real-TimeEngagement)领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表编辑的个人观点,欢迎大家留言......
  • Wireshark 是一个强大的网络分析工具,支持使用过滤器来筛选数据包,帮助用户高效地分析和
    Wireshark是一个强大的网络分析工具,支持使用过滤器来筛选数据包,帮助用户高效地分析和排查网络问题。Wireshark的过滤命令可以分为多种类型,以下是按功能分类的常见过滤命令,并以表格的形式展示:Wireshark过滤命令按功能分类类别过滤命令描述协议过滤http过滤HTTP......
  • SecureCRT v9.5.2 for Mac SSH终端操作工具 安装
    SecureCRTv9.5.2forMacSSH终端操作工具安装SecureCRTMac破解版是一款SSH终端工具,为计算专业人士提供高级会话管理工具。也是一个功能强大且值得信赖的基于GUI的SHH和Telnet客户端,以及旨在提高工作效率并简化重复任务的终端仿真器。借助SecureCRTmac版的帮助,您可以通过对AN......
  • Protobuf协议接口请求工具
    最近在工作遇到了Protobuf协议接口,现成的测试工具jmeter、postman等,无法直接测试,想到开发工具快速集成测试以下是工具思路1、使用原始protos文件生成java类文件2、构建基础请求BaiduRtaProtos.RtaApiRequestrequest=requestBuilder.build();注意:返回类型GeneratedMess......
  • SecureFX for Mac FTP/SSH传输工具
    SecureFXforMacFTP/SSH传输工具SecureFXmac破解版是一款Mac平台的FTP/SSH传输工具。SecureFXforMac支持三种文件传输协议:FTP、SFTP和FTPoverSSH2。它可以提供安全文件传输。无论您连接的是任何一种操作系统的服务器,它都能提供安全的传输服务。它主要用于Linux操作系统......
  • ‌苹果手机群控系统:高效管理的强大工具
    ......
  • Olib开放图书 (zlibrary电子书在线搜索下载工具) 同步zlibrary
    喜欢下载小说的朋友们,这款工具绝对不能错过!Olib是一款强大的电子书搜索和下载工具,支持多个平台的资源,包括飞卢、起点、纵横、刺猬猫、菠萝猫等,甚至能同步zlibrary网站的所有资源!通过它,你可以轻松搜索并一键下载你想要的电子书,包括TXT、PDF、EPUB、MOBI、AZW、AZW3格式,还内......
  • AI编程工具使用-使用豆包大模型MarsCode AI编程插件结合IDEA辅助程序员编程使用实例
    1.MarsCode介绍 MarsCode是一个AI驱动的云端集成开发环境(IDE),支持作为VSCode和JetBrains等主流IDE的智能编程扩展使用。其主要功能包括代码补全、生成、优化、解释、注释生成、单元测试生成、错误修复等,并且支持云函数开发、API测试、存储和部署工具等‌。MarsCode支持多......
  • 出道即顶流!这款新AI工具能否春节解放打工人?
    日新月异的AI行业,让普通人过去一年感受最深的,应该是越来越强烈的获得感。AI不再是空中楼阁、高高在上,而是越来越触手可及、唾手可得。前几天,国民级互联网应用百度搜索,在PC端新上线了全新的百度AI搜,加速了这一进程。懂懂因为工作原因,经常要上网搜索。用百度AI搜才两天,就明显感......
  • 企业选型指南:AI Agent与SaaS工具的优劣势深度解析
    AIAgent(AI智能代理)和SaaS工具(软件即服务)代表了现代智能化软件产品的两种重要发展方向。虽然它们都致力于提升效率、优化任务和改善用户体验,但在本质、结构、优势、应用场景以及技术架构上有显著的区别。1、AIAgent和SaaS工具本质区别AIAgent定义:AIAgent是一种无需持续人类......