当我们使用 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. 源码安装ceph后使用测试集群的方法

    标签(空格分隔): ceph,ceph实验,ceph源码 通过博客 源码编译安装ceph(aarch64架构) 成功安装ceph之后,之后可以运行一个测试集群进行实验 1,进入安装构建目录: [roo ...

  2. thinkphp中url的生成U()方法

    为了配合所使用的URL模式,我们需要能够动态的根据当前的URL设置生成对应的URL地址,为此,ThinkPHP内置提供了U方法,用于URL的动态生成,可以确保项目在移植过程中不受环境的影响.U方法的定 ...

  3. Oracle 错误: sp2 0734 unknown command beginning -- 解决方法

    今天在做一个Oracle的倒库操作,使用SQLPLUS倒库的时候发生SP2 0734的错误 !! 注:我是用的是Ocale11g自带的SQLPLUS 由于之前在工具(SQL Developer)里面运 ...

  4. C#中用SerialPort类中的Write()方法发送十六进制数

    在C#中用SerialPort类中的Write()方法向串口发送十六进制数的方法: MSDN对SerialPort::Write()是这样解释的: 将数据写入串行端口输出缓冲区. 重载列表   名称 ...

  5. delphi IOS发布添加其他资源文件

    添加自己的文件. Project>Deployment>Add File Remote Path android and IOS: assets\internal\ TPath.GetDo ...

  6. PHP PDO SQLSERVER

    $bbs = new PDO("odbc:MSSQLServer",   $username_bbs,    $password_bbs $bbs = new PDO('); $s ...

  7. MVC,MVP 和 MVVM 的详解

    一.MVC MVC模式的意思是,软件可以分成三个部分. 视图(View):用户界面. 控制器(Controller):业务逻辑 模型(Model):数据保存 各部分之间的通信方式如下. View 传送 ...

  8. Hive split 分割函数

    hive字符串分割函数 split(str, regex) - Splits str around occurances that match regexTime taken: 0.769 secon ...

  9. 分析比较多表查询中的IN与JOIN

    IN 是子查询的关键字,JOIN 是连接的关键字,项目开发中经常会使用到多表查询,而子查询与连接正是实现多表查询的重要途径.那两者是怎么运行的?IN与JOIN哪个更好?下面就来分析与比较. 现在有te ...

  10. Functions & Closures

    [Functions] 1.不带返回值的函数: 2.通过tuple返回元素 返回的tuple可按如下方式使用: 3.External Parameter: External parameter的使用: ...