[脚本]centOS 6 服务管理与服务脚本

  • A+
所属分类:原创文章
摘要

在开机启动过程中,我们计算机的各种服务也会按照配置信息启动服务,那个我们的服务使如何启动的呢?我们以模式为例,进行说明:上图中:rc3–>意味着读取/etc/rc.d/rc3.d/下的内容,现在我们看看/etc/rc.d/rc3.d/下有什么东西。在/etc/rc.d/rc3.d/目录下,我们看到全部都是软链接连接到/init.d/下的脚本。我

  在开机启动过程中,我们计算机的各种服务也会按照配置信息启动服务,那个我们的服务使如何启动的呢?我们以 模式为例,进行说明:

  http://www.526bt.com/[脚本]centOS 6 服务管理与服务脚本

  上图中:rc 3 --> 意味着读取/etc/rc.d/rc3.d/下的内容,现在我们看看/etc/rc.d/rc3.d/下有什么东西。

  [脚本]centOS 6 服务管理与服务脚本

  在/etc/rc.d/rc3.d/目录下,我们看到全部都是软链接连接到/init.d/下的脚本。

  我们可以通过脚本加状态的模式启用或关闭我们的某个服务:

  K*: K##*:##运行次序;数字越小,越先运行;数字越小的服务,通常为依赖到别的服务

  S*: S##*:##运行次序;数字越小,越先运行;数字越小的服务,通常为被依赖到的服务

  但是实际上它并不是按照数字排序的,而是按照字符串的大小排序的。

  所以我们在写服务脚本的时候,如果是依赖于某些服务的,我们最好能够将我们的脚本连接名排到我们的服务所依赖的服务软连接后面。

  我们看一下,在启动计算机的过程中,init加载了一个脚本/etc/rc.d/rc,下面是这个脚本的一部分内容。

  在上面的脚本中我们发现,计算机在启动服务过程中,会在对应的运行级别下,先关闭一部分服务,关闭玩服务之后才会再对应的运行级别下启动一些服务。

  所以面图片中带有K开头的软链接程序,就相当于执行真正指向的脚本后面跟上stop,带有S开头的软链接程序,就相当于执行真正指向的脚本后面跟上start。

  我们以autofs为例,作以说明:

  上述的效果其实和本质上是一样的:

  接下来,我们以一个简单的服务脚本为例,做一个简单的说明演示:

  脚本:

  接下来,我们将这个脚本放到/etc/rc.d/init.d/中去,先试一下看是否有什么问题:

  [脚本]centOS 6 服务管理与服务脚本

  我们使用service试试:一样可以使用

  [脚本]centOS 6 服务管理与服务脚本

  现在这个脚本并不是开机就能运行的,我们将它做成服务,还需要进行一些改变。在linux上,有一个工具控制着计算机服务的开机是否运行:

  如下图所示,带星好的就是开机运行的服务,不带星号的就是开机不运行的服务

  [脚本]centOS 6 服务管理与服务脚本

  这个工具有一个不好的地方就是它只能改本模式下的服务的开机是否启动,不能改变其他模式下服务的开机启动,如果我想改5模式的,需要使用,如果我们想改各个模式下的开机服务,如果使用这个方法一个一个该改,十分的不方便,所以,我们使用chkconfig命令:

  [脚本]centOS 6 服务管理与服务脚本

  我们可以使用这个命令看到各个模式下的服务是否开启或关闭,我以上图的第一个服务为例,关闭在3,5模式下的开机服务,看看如何实现:

  [脚本]centOS 6 服务管理与服务脚本

  关闭成功。

  更多的时候,我们会使用 或,这种方式默认启用或关闭2345模式下的服务。

  接下来我们使用开启服务,既然我们将服务就开启了,那么在/etc/rc3.d/下面肯定有一个以S开头的相关服务这就意味着它开机就能启动。

  [脚本]centOS 6 服务管理与服务脚本

  接下来,我们做一个小实验:

  查看atd服务是否开启,若开启,关闭

  删除掉/etc/rc3.d/下atd的软链接

  创建一个数值靠后,并且是S开头的软链接

  chkconfig查看atd服务状态

  [脚本]centOS 6 服务管理与服务脚本

  [脚本]centOS 6 服务管理与服务脚本

  [脚本]centOS 6 服务管理与服务脚本

  我们看到,当我们创建一个S开头的软链接之后,它的开机服务状态就变成了on了。

  接下来我们将刚才的testsrv.sh做成我们的服务脚本,要做服务脚本,还需要一点点的改动,我们需要在注释中加上一行 代表的含义是在3和5模式下开机启动,代表S开头的编号,代表K开头的编号。

  [脚本]centOS 6 服务管理与服务脚本

  现在还是没有服务启动的的,我们需要手动加上去:

  [脚本]centOS 6 服务管理与服务脚本

  现在,在3模式下他已经是可以开机启动的服务了,我们也可以现在手动改成在3模式下开机不启动的状态,我们只需要:

  如果我们不想要这个服务,我们需要将这个服务给删除,删除的方法是:,删除服务后,文件并不会被删除,但是软链接会被删除。也不能查询到。

  很多时候,一些服务我们平时用不到,有时候一年才用一次或者好几个月用一次,如果让该服务开机就跑起来就太过于浪费资源。我们需要再使用它的时候自动开启,这该如何实现呢?

  我们上面的一个一个的服务就做独立服务,而非独立服务是有特定的服务进行代理监听端口,等等有访问时由特定服务通知该服务启动运行,这个特定的服务就是xinetd,我们也可以称它是超级守护进程。

  Telnet服务就是一个非独立服务,它的使用需要依赖于xinetd,当我们使用yum安装该软件时,它会自动安装上xinetd,下面是我安装好的Telnet:

  [脚本]centOS 6 服务管理与服务脚本http://www.526bt.com/

  接下来我们启动该服务,在第一次安装后,首先启动xinetd,在启动telnet:

  [脚本]centOS 6 服务管理与服务脚本

  [脚本]centOS 6 服务管理与服务脚本

  我们在启动服务后可以看看是http://www.526bt.com/谁在监听这着23端口:

  [脚本]centOS 6 服务管理与服务脚本

  接下来我们尝试使用Telnet连接该系统,然后再次查看是谁在监听端口:

  [脚本]centOS 6 服务管理与服务脚本

  当我们开始使用的时候,他就变成了由原服务来执行,这就是我们要说的非独立服务。

  正常级别下,最后启动一个服务S99local没有链接至/etc/rc.d/init.d一个服务脚本,而是指向了/etc/rc.d/rc.local脚本

  不便或不需写为服务脚本放置于/etc/rc.d/init.d/目录,且又想开机时自动运行的命令,可直接放置于/etc/rc.d/rc.local文件中

  /etc/rc.d/rc.local在指定运行级别脚本后运行

  可以根据情况,进行自定义修改

分享当前页面将至少获得10%佣金,点此获取推广链接(规则说明)。

本站VIP源码资源永久免费下载!持续更新!www.526bt.com

加入999永久VIP会员带做项目包赚钱!教引流包搭建,社群资源共享!

新项目更新通知QQ群:767688774 站长技术交流QQ付费群:552760713

点击这里给我发消息备用QQ:点击这里给我发消息

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 源码安装视频教程
  • 教程项目网赚APP扫码下载
  • weinxin

admin
苹果签名200一月!不掉的苹果企业签名
服务器安全维护配置PHP/MySQL/FTP部署 VPS/阿里/腾讯云环境配置
做网站 PHP源码修改二次开发程序页面美化/功能定制/仿站/仿模板
H5牛牛游戏开发只要你有演示站,我们就能定制,精仿道游
广告也精彩

发表评论

您必须才能发表评论!