SHELL脚本编程----sshd服务启停脚本

题目:

判断 sshd 进程是否运行,如果服务未启动则启动相应服务。

具体代码实现:
 

#!/bin/bash

sshd_service=`systemctl is-active sshd`

if [ "$sshd_service" == "active" ]; then

	echo "sshd is running....."
else
	echo "sshd is not running"
	systemctl start sshd &> /dev/null
	sleep 1
	echo "sshd start"
fi

解题分析:

1.需要知道sshd服务是否启动,可以通过is-active进行查看;

2.定义变量sshd_service接收命令`systemctl is-active sshd`的执行结果;

3.判断变量的值是否等于“active”,如果是,则提示sshd正在运行,如果不是,则启动sshd服务;

4.使用命令`systemclt start sshd`启动服务,并将其产生的信息丢弃到/dev/null黑洞中去;

补充:

判断的方法不局限于一种,还有很多方法查看sshd是否运行,如:

1. ps命令查看进程

ps -ef | grep sshd | grep -v grep|wc -l

2.netstat或ss查看端口(sshd的端口是22)

netstat -lntup | grep 22 | wc -l
ss -lntup|grep -w 22|wc -l

不同方法判断的条件不同。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值