6个Linux chkconfig命令实例 - 增加,删除,查看和修改services的自动启动选项

注意:service的安装目录在/etc/rc.d/init.d下,/etc/init.d 是/etc/rc.d/init.d的链接。

chkconfig命令用来安装,查看或修改 services随系统启动的启动选项的设置。本文章包含了7个实例来解释如何使用chkconfig命令。

1 在shell脚本中检查service的启动选项的设置

当你执行chkconfig加service名字,如果service被配置为自动启动,则它将返回true。下列的代码段显示了如何在脚本中检查一个service是否被配置为自动启动。

# vi check.sh
chkconfig network && echo "Network service is
configured"
chkconfig junk && echo "Junk service is
configured"

# ./check.sh
Network service is configured

你也可以特别地查看它是否配置为在某个run level自动启动。

# vi check1.sh
chkconfig network --level 3 && echo "Network
service is configured for level 3"
chkconfig network --level 1 &&
echo "Network service is configured for level 1"

# ./check1.sh
Network
service is configured for level 3

2 查看所有的services的启动选项的设置

--list选项显示所有的services的启动选项的配置状态。

# chkconfig --list
abrtd 0:off 1:off 2:off 3:on 4:off 5:on 6:off
acpid
0:off 1:off 2:off 3:off 4:off 5:off 6:off
atd 0:off 1:off 2:off 3:on 4:on
5:on 6:off
...

只查看在某个runlevel启动的services,例如查看在runlevel3下自动启动的services。

chkconfig --list | grep 3:on

查看某个service的启动选项的设置,也可以对chkconfig --list 的output使用grep,例如:chkconfig --list |
grep network

3 增加一个新的service为自动启动

使用-add选项来增加某个service,使其能够在系统启动的时候自动地启动。

下列的实例显示了如何增加一个新的service iptables,使其能够在系统启动的时候自动地启动。使用‘chkconfig
--add’命令将自动地设置在runlevel 2,3,4,5上自动地启动。

# chkconfig --list | grep iptables
# chkconfig --add iptables
#
chkconfig --list | grep iptables
iptables 0:off 1:off 2:on 3:on 4:on 5:on
6:off

注 意:”chkconfig --add“
只是设置一个存在的service为自动启动,此service必须已经安装,即已经存在于/etc/rc.d/init.d下。如果service不存
在,你需要首先安装service到/etc/rc.d/init.d下,然后再为其设置自动启动选项。这是很多的初学者都容易犯的错误,所以值得在这里 强调。

4 删除某个service的自动启动选项的设置

下列的实例显示了ip6tables service被配置为自动启动。
# chkconfig --list | grep
ip6tables
ip6tables 0:off 1:off 2:off 3:on 4:off 5:off 6:off

要删除某个service的自动启动的设置,使用--del选项,如下:
# chkconfig --del ip6tables
#
chkconfig --list | grep ip6tables

5
设置或取消某个service在某个runlevel的自动启动设置
有时你可能不想取消整个service的自动启动的设置,你只是需要设置或取消service在某个runlevel的自动启动的设置,

下列的实例将取消nfserver service在runlevel5的自动启动设置
# chkconfig --level 5 nfsserver
off
你也可以组合多个runlevel,例如你可以取消nfserver在runlevel3和5的自动启动设置
# chkconfig
--level 35 nfsserver off

6 chkconfig 与 rc*.d目录下的脚本
(*表示runlevel1-6)
当你使用chkconfig来增加或删除某个service的自动启动选项的设置的时候,其实是在rc*.d目录下做下列的事情:
当chkconfig
--add命令执行的时候,其实是在对应的rc*.d目录下创建相应用来启动和停止service的service的symbollink文件;
当chkconfig
--del命令执行的时候,其实是在对应的rc*.d目录下删除相应用来启动和停止service的service的symbollink文件;

rc*.d目录下与某个service关联的2个symbollink文件中,以K(kill)开始的表示此文件用来停止service,以S(start)开始的表示此文件用来启动service。

例如service nfsserver没有设置自动启动选项的时候,我们在/rc*.d下看不到用来启动和停止service的symbollink文件

# chkconfig --list | grep nfsserver
nfsserver 0:off 1:off 2:off 3:off
4:off 5:off 6:off

# ls /etc/rc.d/rc3.d | grep nfsserver
# ls /etc/rc.d/rc5.d | grep
nfsserver

当我们为nfsserver service设置自动启动选项后,我们就可以看到相应的symbollink文件了
# chkconfig --add
nfsserver
nfsserver 0:off 1:off 2:off 3:on 4:off 5:on 6:off

# cd /etc/rc.d/rc3.d
# ls -l | grep nfsserver
lrwxrwxrwx 1 root root 12
2011-06-18 00:52 K08nfsserver -> ../init.d/nfsserver
lrwxrwxrwx 1 root
root 12 2011-06-18 00:52 S14nfsserver -> ../init.d/nfsserver

# cd /etc/rc.d/rc5.d
# ls -l | grep nfsserver
lrwxrwxrwx 1 root root 12
2011-06-18 00:52 K08nfsserver ->../init.d/nfsserver
lrwxrwxrwx 1 root root
12 2011-06-18 00:52 S14nfsserver -> ../init.d/nfsserver

当你取消此service在某个runlevel的自动启动选项的设置的时候,对应的rc*.d目录下的symbollink文件也将被自动的删除,

# chkconfig --level 5 nfsserver off
# ls /etc/rc.d/rc5.d | grep
nfsserver

6个Linux chkconfig命令实例 - 增加,删除,查看和修改services的自动启动选项,布布扣,bubuko.com

时间: 2024-11-03 21:23:48

6个Linux chkconfig命令实例 - 增加,删除,查看和修改services的自动启动选项的相关文章

Linux常用命令_(文件查看)

文件查看主要有以下命令 cat.more.less.head.tail cat命令:是一个文本文件查看和连接工具.从第一个字节开始正向查看文件的内容,适用于小文件 以第一行开始,显示没有停顿,文件较长的话,只能看到最后一页内容在屏幕上 当文件内容过多时,就带来一个问题,因为文本在屏幕上迅速地闪过,用户来不及看清其内容.因此,当文件内容较大时,一般可用more等命令分屏显示,以免因屏幕滚动太快而无法看清. 说明:把档案串连接后传到基本输出(屏幕或加 > fileName 到另一个档案) 主要参数:

Linux/shell命令的实际应用——查看Port占用

该Linux/shell命令主要用于解决: 1.查看某端口是否被占用: 2.查看某端口被哪个进程占用: 3.查看某个进程占用了哪些端口: 比如我tomcat启动失败,日志显示端口(Port)被占用,可以通过以下命令查看指定Port(tomcat默认端口8080)到底被哪个进程占用 netstat -anpt | grep 8080 比如我tomcat运行中,但是通过http://ip:8080/xxx这种方式访问不了,可以查看tomcat进程是否监听了8080端口(假设tomcat pid =

python 从入门到放弃之列表的增加,删除,插入,修改

#列表是什么? 列表是由多个按顺序排列的元素组成的 #在python中用[]来代表一个列表 例如: name_list = [] #这就是创建一个简单的列表 #让我们在列表里面加入一些东西来做为后面列表操作的基础数据 name_list = ['tom','Jim','hanmeimei'] #这样就可以了 #列表索引的介绍 name_list = ['tom','Jim','hanmeimei']  #这个列表里面有三个值 它们分别对应的索引值为 0  1  2 这个是从零开始的(我记住的方法

Linux chkconfig命令

on和off开关,系统默认只对运行级3,4,5有效,但是reset可以对所有运行级有效. 等级0表示:表示关机    等级1表示:单用户模式    等级2表示:无网络连接的多用户命令行模式    等级3表示:有网络连接的多用户命令行模式    等级4表示:不可用    等级5表示:带图形界面的多用户模式    等级6表示:重新启动 chkconfig --list                       # 列出所有的系统服务chkconfig --add httpd            

Linux sed命令实例解析

最近看project的makefile,又见到了sed的强大编辑能力,在makefile工作之前,通常都是执行脚本或者make menuconfig来配置好各种全局变量.sed活动阶段通常在bash shell中,正好再了解一下. 1. Sed简介 sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕.接着处理下一行,这样不断重复,直到文件末尾

Linux chkconfig 命令详解

一.简介 chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. 二.安装 [email protected]:~$ sudo apt-get install chkconfig 三.用法 [email protected]:~$ chkconfig --help usage: chkconfig -A|--allservices (together with -l: show all ser

【Linux】目录文件权限的查看和修改【转】

转载自:http://zhaoyuqiang.blog.51cto.com/6328846/1214718 ------------------------------------------------------------------------------------------------------------------------------------------ =========================================================

Linux 自动更新系统及手动查看、修改系统时间

当我们在虚拟机装完一个新的centos系统后,虽然在安装时己在ntp设置中选择了上海,但进入到系统,输入date命令时,查看到的系统时间与现时时间是不一样的,我们可以用以上方法来查看,自动更新和修改系统时间 查看系统时间: [[email protected] ~]# date Sat Mar 25 00:47:59 CST 2017 一. Linux 自动更新时间 使用ntpdate命令进行更新: [[email protected] ~]# ntpdate time.nist.gov 24 

sed 命令的增加 删除 修改 查询

1.1sed查询 1.1.1根据行号查询 Last login: Tue Aug 15 19:46:48 2017 from10.0.0.1 [[email protected] ~]# cat>person.txt<<EOF > 101,oldboy,CEO > 102,zhangyao,CTO > 103,Alex,COO > 104,yy,CFO > 105,feixue,CIO > EOF 1.1.1.1 显示第二行 [[email prote