基于linux的服务有哪些内容,linux基础(一)服务分类与管理

前言

对于linux的众多服务,我们可以根据其安装形式分为:

1.rpm默认安装的服务

2.源码包安装的服务

对于rpm默认安装的服务,又可以分为独立的服务和基于xinetd的服务

区别

1.通过rpm安装的服务和源码安装的服务安装后文件的位置不同

2.通过rpm安装的服务和源码安装的服务启动方式不同

安装位置的不同

源码安装的一般都手动放在/usr/local目录下

rpm安装的服务根据不同服务功能安装的目录在如图所示

19d4b01f64a5

location.png

启动方式的不同

一、rpm安装包的启动方式

1.独立服务的管理

注:

启动:当前系统下服务启动

自启动:下次开机后服务启动,现在服务是否启动不知道

netstat –pantu :查看系统启动的服务和服务的链接和监听状态

ps –aux 也是可以查看系统启动服务

lsof -i :端口号 #查看特定端口的服务类型

1.启动方式:

/etc/init.d/独立服务名 start|stop|status|restart #此方式适用所有linux系统

service 独立服务名 start|stop|status||restart #redhat系列系统才有命令

2.自启动方式:

chkconfig –level 2345 httpd on #--level 2345可以省略

编辑/etc/rc.d/rc.local 文件,在其中加入启动方式,例如在文件中写入: /etc/init/httpd start #此方式推荐

ntsysv

注:

-----/etc/rc.d/rc.local和/etc/rc.local互为软链接,任意一个即可。

-----2种自启动方法,二选一即可,各自不影响。

-----ntsysv命令和chkconfig 是一种方法,ntsysv是图形界面(也是redehat系列有此方法)

-----chkconfig --list 是查看服务自启动状态,可以看到所有rpm包安装的服务

2.基于xinetd服务(使用xinetd来开启和关闭rsync)

前提:xinetd被安装(用rpm -qa xinetd查看),若没有,则用yum安装。

启动方法(以rsync服务为例):

1.编辑.vim /etc/xinted.d/rsync文件,更改如图所示参数

19d4b01f64a5

image.png

2.rsync等服务是基于xinetd,即被xinetd管理的,则重新启动rsync服务,要:service xinetd restart

若要自启动:

1.chkconfig rsync on

2.ntsysv

注:

1.rsync服务的作用:用于linux之间数据备份

2.安装xinetd来开启和关闭rsync服务,若没有安装xinetd,则可以用其他方法开启rsync服务:

rsync --daemon #开启服务

3.或者使用自己编写的rsync启动脚本进行服务的开启

#!/bin/bash

#chkconfig:2345 21 81

#description

#上面2行为开机自动开启服务

#限制参数个数

if [ $# -ne 1 ]

then

echo $"usage:$0 {start|stop|restart}"

exit 1

fi

#参数类型

版本一:

if [ "$1" == "start" ];then

rsync --daemon

sleep 2 #休息2秒,这点很重要,停止或启动后建议休息2秒后在判断

if [ $(netstat -pantu | grep rsync | wc -l) -ne 0 ];then #如果过滤的rsync不是0,则说明启动了

echo "rsync is started"

exit 0

fi

elif [ "$1" == "stop" ];then

pkill rsync &>/dev/null #停止服务的方法很多,自选即可

sleep 2

if [ $(netstat -pantu | grep rsync | wc -l) -eq 0 ];then

echo "rsync is stopped"

exit 0

fi

elif [ "$1" == "restart" ];then

killall rsync

sleep 1

postKill=$(netstat -pantu | grep rsync | wc -l) #关闭前和启动后都有对应的标识字符

rsync --daemon

sleep 1

postStart=$(netstat -pantu | grep rsync | wc -l)

if [ "$postKill" -eq 0 -a "$postStart" -ne 0 ];then

echo "rsync is restarted"

exit 0

fi

else

echo $"usage:$0 {start|stop|restart}" #若没有安装要求输入参数,则提示后退出脚本

fi

注:

只有独立的服务才有运行级别,而基于xinetd的服务没有运行级别;

chkconfig 启动基于xinetd的服务时,不能加运行级别,否则会报错;

独立的服务:启动就是启动,自启动就是自启动;

xinetd服务:启动和自启动相通,混为一谈,即通过chkconfig rsync on 和编辑/etc/xinetd.d/rsync文件的效果是一样的,改一个,另一个也会变,包括配置文件。

二、源码包的启动方式(apache为例)

1.启动方式

使用绝对路径,调用启动脚本来启动

/usr/local/apache/bin/apachectl start | stop

lsof -i:80 #检查是否开启

注:

安装时,默认放在/usr/local/,也可以加上--prefix=目录来 指定路径

2.自启动方式

在配置文件:/etc/rc.local 中写入:/usr/local/apache/bin/apachectl start

3.被service所启动

ln -s /usr/local/apache/bin/apachectl /etc/init.d/httpd#做软链接

放到/etc/init.d目录下后,service可以识别,以便用service启动

eg:service httpd start #开启

lsof -i :80 #检查是否开启

4.被chkconfig所识别(以apache为例)

源码安装的Apache,chkconfig不支持:

19d4b01f64a5

image.png

为了使其支持源码安装的:

1.编辑/etc/init.d/httpd文件,加入下面2行(#不可省略)

#chkconfig:35 86 77

#description:source package apache

第一句话是:指定httpd脚本可以被chkconfig命令管理,格式:chkconfig :运行级别 启动顺序 关闭顺序

第二句话:说明,内容随意

注:此启动顺序 号和 关闭顺序号与/etc/rc3.d/下以“s”开头和以“k”开头的号码不能重复的任意号码。

/etc/rc5.d/是运行级别五的启动目录

2.执行chkconfig --add httpd 即可

总结如图:

19d4b01f64a5

image.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值