当我们使用 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系统的开机启动中
这样以后我们就可以做到 系统级 开机自启动了,你明白了吗?





chkconfig的原理 和添加开机自启动的办法的更多相关文章

  1. linux添加开机自启动脚本示例详解

    linux下(以RedHat为范本)添加开机自启动脚本有两种方法,先来简单的; 一.在/etc/rc.local中添加如果不想将脚本粘来粘去,或创建链接什么的,则:step1. 先修改好脚本,使其所有 ...

  2. Centos 下添加开机自启动服务和脚本

    最近刚玩Centos7的系统,跟Centos6还是很多方面有改变的,这里记录一下怎么在Centos7下添加开机自启动脚本和服务的方法. 1.添加开机自启服务 我这里以docker 服务为例,设置如下两 ...

  3. Centos 下添加开机自启动服务和脚本【转】

    最近刚玩Centos7的系统,跟Centos6还是很多方面有改变的,这里记录一下怎么在Centos7下添加开机自启动脚本和服务的方法. 1.添加开机自启服务 我这里以docker 服务为例,设置如下两 ...

  4. win8系统添加开机自启动软件的方法(转)

    win8系统添加开机自启动软件的方法,把需要设置开机自启动的软件的快捷方式复制到下面任意路径就ok了.开机自启动路径如下:C:\ProgramData\Microsoft\Windows\Start ...

  5. 为你的MacOS App添加开机自启动(Swift)

    猴子原创,欢迎转载.转载请注明: 转载自Cocos2Der-CSDN,谢谢! 原文地址: http://blog.csdn.net/cocos2der/article/details/52104828 ...

  6. Centos7 下添加开机自启动服务和脚本

    1.添加开机自启服务 #设置jenkins服务为自启动服务 systemctl enable jenkins.service #启动jenkins服务 systemctl start jenkins. ...

  7. 在centos中添加开机自启动服务

    将服务的shell脚本添加到/etc/rc.d的rc.local文件的最后面,需要在服务名称的前面加上其路径. 例如我要将httpd添加到开机自启动中,需要在rc.local添加如下代码 /usr/s ...

  8. [Winform]setupfactory打包时添加开机自启动的脚本

    摘要 如果有这样的需求,需要软件开机自启动,该如何做呢?开机自启动的做法,就是修改注册表,将你的exe注册到注册表Run节点下. setupfactory 在安装的时候需要以管理员身份运行,这样可以保 ...

  9. linux 添加开机自启动脚本

    原文 Linux设置服务开机自动启动的方式有好多种,这里介绍一下通过chkconfig命令添加脚本为开机自动启动的方法. 1. 编写脚本autostart.sh(这里以开机启动redis服务为例),脚 ...

随机推荐

  1. 关闭PdfReader右侧工具栏的方法

    1.首先单次关闭工具栏 点击视图-显示/隐藏-工具窗格,关闭右侧工具栏,但下次打开pdf还会出来,所以: 2.记住设置状态 编辑-首选项-文档-记住工具窗格当前状态

  2. AUC ROC PR曲线

    ROC曲线: 横轴:假阳性率 代表将负例错分为正例的概率 纵轴:真阳性率 代表能将正例分对的概率 AUC是ROC曲线下面区域得面积. 与召回率对比: AUC意义: 任取一对(正.负)样本,把正样本预测 ...

  3. wordpress Bloginfo()函数

    bloinfo($show); ‘name‘ – 显示在 设置 > 常规 中设置的“站点标题”. 该数据是从 wp_options 这个数据表中检索到的 "blogname" ...

  4. Elasticsearch之kopf插件安装之后的浏览详解

    前提, Elasticsearch之插件介绍及安装 https://i.cnblogs.com/posts?categoryid=950999&page=2  (强烈建议,从头开始看) 比如, ...

  5. C51串口的SCON寄存器及工作…

    原文地址:C51串口的SCON寄存器及工作方式作者:batistar 一,串行口控制寄存器SCON 它用于定义串行口的工作方式及实施接收和发送控制.字节地址为98H,其各位定义如下表: D7 D6 D ...

  6. 6410裸板程序,led、蜂鸣器、按键…

    //***************************************************************** //作者:昊天 // //功能:在ok6410板子上跑裸板程序, ...

  7. java Web JSTL介绍及基本应用

    由于实际开发中我们一般不能在jsp页面上写java代码,而el表达式也做不了判断 循环之类的复杂操作,为了弥补这些缺点,所以就有了JSTL. 简介 JavaServer Pages Standard ...

  8. Python中__new__与__init__介绍

    在python2.x中,从object继承得来的类称为新式类(如class A(object))不从object继承得来的类称为经典类(如class A()) 新式类跟经典类的差别主要是以下几点: 1 ...

  9. Docker学习笔记_安装和使用nginx

    一.软件环境 1.宿主机OS:Win10 64位 2.虚拟机OS:Ubuntu 18.04,虚拟机IP:192.168.8.25 3.Docker安装在虚拟机Ubuntu 18.04上 二.安装过程 ...

  10. boost 错误报告

    #include <Windows.h> #include <boost/asio.hpp> 编译器会报错,fatal error C1189: #error :  WinSo ...