Linux 服务相关命令

Linux的服务跟windows中的服务是一样的,如果所示。windows中的这些服务可以手动的启动和关闭,在linux需要用到systemctl命令来进行

一、systemctl 

①基本命令 

systemctl status sshd  #查询sshd服务的状态
systemctl stop sshd    #关闭
systemctl start sshd   #启动
systemctl restart sshd #重启

②查看所有的服务

systemctl指令管理的服务在下面的目录查看,但是不能看到服务是否开机自启动

ls /usr/lib/systemd/system

 ②查看服务是否开机自启动

systemctl list-unit-files

也可以查询某一个的开机自启动

细节:上面的grep sshd的服务名必须要写全才能生效

enabled表示开机自启动

disabled表示关闭开机自启动

③查看某一个服务是否开机自启动

[root@master-129 ~]# systemctl is-enabled sshd
enabled

 ④设置某一个服务开机自启动

systemctl enable sshd

⑤设置某一个服务开机不自启动

systemctl disable sshd

 像我们有时候搭建某个测试系统,关闭了防火墙,如果重启也关闭防火墙就太麻烦了,可以使用这个命令,使电脑重启后不用启动防火墙的服务

systemctl disable firewalld

 二、chkconfig

①作用

1、可以给服务在不同的运行级别设置 启动/关闭,

运行级别即linux的运行级别0-6,一般常用的就是3和5

等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动

2、chkconfig 指令管理的服务可以在/etc/init.d目录查看

②基本语法

chkconfig --list 查看服务

chkconfig --level 3 服务名 on/of

如果简写 chkconfig mysqld on, mysql则会在 2 3 4 5四个级别上面自启

③ chconfig重新设置服务后,需要重启机器后才生效

④ 案例 创建一个shell,然后开机自启动

1、创建一个shell

#!/bin/sh
#chkconfig:2345 80 90
#decription:autostar
date > /root/test.txt ##将当前时间输入到/root/test.txt文件中

#!/bin/sh
#chkconfig:2345 80 90  ##启动脚本规范
#decription:autostar       ##启动脚本规范

2、添加执行权限

chmod +x start.sh

3、把start.sh移动到/etc/init.d目录 并用chkconfig配置

mv start.sh /etc/init.d
chkconfig --add start.sh ## 添加到系统服务中
chkconfig start.sh on   ##设置开机自启动

配置完成后重启服务器,查看/root目录是否存在test.txt文件


版权声明:本文为u010648194原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。