当我们使用 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系统的开机启动中

这样以后我们就可以做到 系统级 开机自启动了,你明白了吗?

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

  1. chkconfig的原理 和添加开机自启动的办法

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. Android 开发入门(4)

    0x06 中级控件 (1)图形绘制 a. 图形 Drawable Drawable 类型包括图片.色块.画板.背景 drawable 目录一般保存描述性 XML 文件,具有具体分辨率的 drawabl ...

  2. spring cloud 学习笔记 服务注册与发现(二)

    前言 服务注册与发现的学习.这个其实是微服务的核心了,因为微服务的一个重要理念就是将项目拆分,达到解耦的地步.那么如何把这些服务联系到一起就很关键. 如果一个服务到另外一个服务通过ip地址之间访问,虽 ...

  3. TortoiseGit安装、配置(Git 小乌龟安装)

    1 TortoiseGit简介 tortoiseGit是一个开放的git版本控制系统的源客户端,支持Winxp/vista/win7.该软件功能和git一样 不同的是:git是命令行操作模式,tort ...

  4. 【笔记】oracle INTERSECT指令&邮箱的正则匹配&trim()函数

    [笔记]oracle INTERSECT 和 UNION 指令类似, INTERSECT 也是对两个 SQL 语句所产生的结果做处理的. 不同的地方是, UNION 基本上是一个 OR (如果这个值存 ...

  5. SVN Windows10的安装

    SVN Windows安装与配置 先去到官网的下载链接:Download Apache Subversion Sources 然后点这个 binary packages 在这里能看到大多数的操作系统的 ...

  6. 用积木讲运维,这样的IT人太会了

    简介: 日志服务SLS提供数据采集.加工.分析.告警可视化与投递功能,为AIOps.大数据分析.运营服务.大数据安全等场景提供支撑,并能以搭积木的方式适配各类运维场景,辅助企业的IT决策.近日,日志服 ...

  7. EasyNLP带你实现中英文机器阅读理解

    简介: 本⽂将提供对MacBERT模型的技术解读,以及如何在EasyNLP框架中使⽤MacBERT及其他预训练语言模型,进行中英文机器阅读理解任务的训练与预测. 作者:施晨.黄俊 导读 机器阅读理解是 ...

  8. 阿里云重磅发布业务中台产品 BizWorks,中台发展进入下一个阶段

    ​简介: 业务中台产品BizWorks重磅发布,这可以看作是阿里云在 "做厚中台" 战略上继 "云钉一体"之后的又一个新动作! 10 月 19 日,2021 云 ...

  9. WPF自定义控件的三种方式

    ​简介: 某些场景下,我们确实需要创建新的控件.此时,理解 WPF不同控件的创建方法就显得非常重要. WPF 提供3个用于创建控件的方法,每个方法都提供不同的灵活度. WPF控件可以通过数据模型(Da ...

  10. IIncrementalGenerator 判断程序集之间可见关系

    本文告诉大家如何在使用 IIncrementalGenerator 进行增量的 Source Generator 生成代码时,如何判断两个程序集之间是否存在 InternalsVisibleTo 关系 ...