zoukankan      html  css  js  c++  java
  • centos6 chkconfig的原理 和添加开机自启动的办法

    当我们使用 chkconfig --list的时候 都会又 123456 这样的级别. 当某个级别是 on
    他就会开机启动,当他是off 的时候他就不会开机自启动. 那么这是什么原因呢?他的
    原理是什么?

    查看chkconfig的结果:

    思考 为什么 我们设置了3级别 on 他就会开机自启动呢?
    还记得开机自动的级别吗? 我们默认使用的什么级别呢?
    我们默认启动的是 /etc/rc.d/rc3.d/ 这里面的所有的脚本

    拿 sshd 为例子: 我们看看开机启动的 rc3.d 中的脚本

    我们现在看到的是: 这个文件 其实是一个软连接文件 他指向了 /etc/init.d/sshd 的实体文件. 但是奇怪的是他的名字是 S55sshd 而不是 sshd,好了,我们现在关闭他开机自启动,再看一下:

    看清楚们?同志们,这货来了个变身术..他不再是S55了 而是变成了 k25sshd

    是不是很惊喜,是不死和很意外?? 那么这是为什么呢?
    其实 这一切都只是源文件在作怪:
    我们来编辑这个文件看看里面是什么情况:

    我们来主要看这一块, 看清楚没? 有一个 55 和25 是不是和刚才的 k25 s55 很像?
    解释: 这里的 2345 是启动级别
    系统一旦识别到是 3 级别下启动了 sshd服务 就自动在 /etc/init.d/sshd 中生成了一个叫 S55sshd 的文件, 一旦停止 他就会立即删除 S55sshd文件,然后再生成一个K25sshd的文件... 他们无论启动或者停止 他们始终指向原来的脚本. 那么这里的意思你懂了吗?

    1.当我们在脚本中设置了一个程序为开机自动启动的时,他就会在/etc/init.d/的目录中 添加了一个 软连接指向源文件.
    2. 当我们关闭了一个程序的开机启动后,他就会在/etc/init.d/的目录中添加一个软连接指向源文件.

    在我们明白了这个原理的时候,我们做以下操作 不适用chkconfig 就让他on或者off

    来查看现在sshd 的状态是什么?
    [root@oldboyedu-sh01 ~]# chkconfig --list | grep sshd
    sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off

    可以看出目前sshd的3级别是on,那么我们现在做如下操作:

    删除掉这个文件,我们自己重新 做个快捷方式到 sshd
    [root@oldboyedu-sh01 ~]# ln -s /etc/init.d/sshd /etc/rc.d/rc3.d/K25sshd
    那么 现在我们重新再看sshd服务的状态

    他变成了 off 了? 惊不惊喜?意不意外?? 那么现在你明白了他的原理了吗?

    原理:
    任何文件需要进行开机启动,那么就相当于在 /etc/rc.d/rc3.d/ 中 设置一个
    软连接指向实体文件,他们的启动是 S开头 不启动是K开头. 开启和关闭
    全部由文件 控制.

    不信我们就查看sshd 配置文件:

    这里:
    2345 表示 级别
    55 表示开启
    25 表示关闭

    我们想创建一个文件开机启动 一样可以如此配置:
    #!/bin/bash
    #chkconfig: 2345 55 25
    #description: SSH is a protocol for secure remote shell access.
    随后使用 chkconfig --add [文件名] 添加到i系统的开机启动中
    这样以后我们就可以做到 系统级 开机自启动了,你明白了吗?

    微信赞赏

    支付宝赞赏

  • 相关阅读:
    检测服务器是否开启重协商功能(用于CVE-2011-1473漏洞检测)
    Wireshark解密HTTPS流量的两种方法
    text2pcap: 将hex转储文本转换为Wireshark可打开的pcap文件
    Hibernate框架(五)Hibernate主键生成策略
    HIbernate框架(四)实现添加操作
    Hibernaete框架(三)搭建hibernate环境(重点)
    Hibernate框架(二)什么是orm思想(重点)
    Hibernate框架(一)Hibernate框架是什么?
    拦截器和过滤器的区别
    谈谈java中遍历Map的几种方法
  • 原文地址:https://www.cnblogs.com/superlinux/p/12594149.html
Copyright © 2011-2022 走看看