Linux学习_服务管理

服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysql , sshd 防火墙等),因此我们又称为守护进程,是Linux中非常重要的
知识点。

service管理指令

service 服务名 [start | stop | restart | reload | status]
五个中可以任选一个: 启动 停止 重启 重载 状态
在CentOS7.0后 不再使用service ,而是 systemctl
这种方式只是临时生效,当重启系统后,还是回归以前对服务的设置。
案例:
查看当前防火墙的状况,关闭防火墙和重启防火墙

[root@nyh ~]# service iptables status
表格:filter
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
2    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           
3    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
4    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22 
5    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination         
1    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination         

[root@nyh ~]# service iptables stop
iptables:将链设置为政策 ACCEPT:filter                    [确定]
iptables:清除防火墙规则:                                 [确定]
iptables:正在卸载模块:                                   [确定]
[root@nyh ~]# service iptables status
iptables:未运行防火墙。
[root@nyh ~]# service iptables start
iptables:应用防火墙规则:                                 [确定]
[root@nyh ~]# service iptables status
表格:filter
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
2    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           
3    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
4    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22 
5    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination         
1    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination      

案例二:可以看到上面我们开放的是22号端口,在windows下可以用telnet ip 端口号 测试Linux中某个端口是否开启
在cmd窗口中输入以下命令
C:\Users\nyh>telent 192.168.70.131 22
就会看到如下画面,证明连上了,端口是开放着的
在这里插入图片描述
如果出现下面这样则是服务没有开启
在这里插入图片描述
解决办法:把下图中的客户端√上确定就可以了
在这里插入图片描述

查看服务名

  • 使用setup ==> 系统服务 就可以看到。
    在终端中输入setup后回车会出现以下画面,选中系统服务就可以了
    在这里插入图片描述

可以用空格来控制是否开启服务(前面有*号的代表开启)
在这里插入图片描述

  • 查看 /etc/init.d/服务名称
    在这里插入图片描述

服务的运行级别(runlevel)

查看或者修改默认级别: vim /etc/inittab
Linux系统有7种运行级别(runlevel):常用的是级别3和5
• 运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
• 运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
• 运行级别2:多用户状态(没有NFS),不支持网络
• 运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
• 运行级别4:系统未使用,保留
• 运行级别5:X11控制台,登陆后进入图形GUI模式
• 运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动

开机流程示意图:
在这里插入图片描述
为什么运行级别会和服务有关系呢?
因为某些服务可能在特定的运行级别下会设置自启动或者不自启动的设置,比如可能sshd服务在运行级别2下设置了自启动,在运行级别0下就不自启动了…

chkconfig指令

通过chkconfig 命令可以给每个服务的各个运行级别设置自启动/关闭

基本语法

  • 查看某个服务 chkconfig --list | grep xxx
  • 查看某个服务chkconfig 服务名 --list
  • 设置某个服务在某个级别下是否自启动(on是自启动,off是关闭)chkconfig --level 5 服务名 on/off

案例
案例1: 请显示当前系统所有服务的各个运行级别的运行状态
在这里插入图片描述
案例2 :请查看sshd服务的运行状态
在这里插入图片描述
案例3: 将sshd 服务在运行级别5下设置为不自动启动,看看有什么效果?
[root@nyh ~]# chkconfig --level 5 sshd off

案例4: 当运行级别为5时,关闭防火墙。
[root@nyh ~]# chkconfig --level 5 iptables off

案例5: 在所有运行级别下,关闭防火墙(不用–level 指定级别就代表所有级别)
[root@nyh ~]# chkconfig iptables off

案例6: 在所有运行级别下,开启防火墙
[root@nyh ~]# chkconfig iptables on

chkconfig重新设置服务后自启动或关闭,需要重启机器reboot才能生效.

猜你喜欢

转载自blog.csdn.net/qq_36901488/article/details/82826762
今日推荐