Rhel7服务控制

来源:互联网 发布:单片机应该怎么学 编辑:程序博客网 时间:2024/05/16 17:23

rhel7服务控制

1)systemd对linux来说就是一个init程序 可以作为sysvinit和upstat的替代 在rhel7监视和控制systemd的主要命令是systemctl,该命令可以用于查看系统的状态和管理系统的服务。

在rhel7的服务systemctl脚本存放在:/usr/lib/systemd/下有系统(system)和用户(user)之分。在/usr/lib/systemd/system目录下每一个服务都是以 .service结尾,一般会分为三个部分 【Unit】【service】【install】



[Unit]部分主要是对这个服务的说明,内容包括 Description 和 After,Description 用于 描述服务,After 用于描述服务类别

[Service]部分是服务的关键,是服务的一些具体运行参数的设置,这里 Type=forking 是后 台运行的形式,PIDFile 为存放 PID 的文件路径,ExecStart 为服务的具体运行命令, ExecReload 为重载命令,ExecStop 为停止命令,注意:[Service]部分的启动、重启、停止 命令全部要求使用绝对路径,使用相对路径则会报错

[Install]部分是服务安装的相关设置,可设置为多用户的. 注意: 如果服务没有 Install 段落,一般意味着应该通过其它服务自动调用它们 使用 systemd 时,可通过正确编写单元配置文件来解决其依赖关系。典型的情况是,服务 A 要求服务 B 在 A 启动之前运行。在此情况下,向服务 A 配置文件中的 [Unit] 段添加 Requires=B 和 After=B 即可

2)我们对service&chkconfig两个命令并不陌生,在rhel7系统中systemctl是管制服务的主要工具,它整合了chkconfig和service功能于一体

systemctl命令的基本操作格式是: systemctl    服务名.service

在使用systemctl控制单元时,通常需要使用单元文件的全名,包括扩展名例如 httpd.service但是有些单元可以用简写的方式,如果不加扩展名,systemctl默认把扩展名当作.service来处理 例如httpd和httpd.service是等价的

systemctl start <单元>      #立即启动单元 
systemctl stop <单元>      #立即停止单元 
systemctl restart <单元>    #重启单元 
systemctl reload <单元>     #重新读取单元配置 
systemctl status <单元>     #输出单元运行状态 
systemctl is-enabled <单元>   #检查单元是否配置为自动启动 
systemctl enable <单元>     #开机自动启动单元 
systemctl disable <单元>     #取消开机自动激活单元 
systemctl is-active<单元>    #查看单元是不是正在运行 

电源管理:

systemctl reboot 重启  systemctl poweroff 退出系统并停止电源

下面就以http服务为例:

启动httpd服务


查看httpd服务的运行状态


停止并查看httpd服务


启动并加载httpd服务


禁用httpd服务并启动 查看是否能启动 我们发现启动失败原因是已经禁用了httpd服务 


取消禁用httpd服务 并启动httpd







原创粉丝点击