在本期中,本站将为您带来关于如何在Linux中使用chkconfig命令的信息。文章内容丰富,从专业角度分析叙述。看完这篇文章,希望你能有所收获。
chkconfig
Chkconfig常用于命令行操作。它可以轻松设置和查询不同操作级别的系统服务。这个你要掌握好,熟练使用后就可以轻松管理自己的启动服务了。
注意:请记住,chkconfig不会立即自动禁用或激活服务,而是简单地更改符号连接。
chkconfig 语法:
chkconfig[-add][-del][-list][系统服务]
chkconfig[-level/levels][][level code][system service][on/off/reset]
语法解释:
Chkconfig显示无参数运行时的使用情况。如果添加了服务名称,请检查服务是否在当前运行级别启动。如果是,返回true否则,返回false。如果在服务名称后指定了on、off或reset,chkconfi将更改指定服务的启动信息。On和off分别表示服务的启动和停止,reset表示重置服务的启动信息,不管所讨论的初始化脚本指定了什么。开和关开关,默认情况下,系统仅对操作级别3、4和5有效,但复位可对所有操作级别有效。
- level选项指定要查看的运行级别,不一定是当前运行级别。
应该注意的是,每个运行级别只能有一个启动脚本或停止脚本。切换运行级别时,init不会重新启动已启动的服务或再次停止已停止的服务。
chkconfig ndash-list:显示所有运行级系统服务的运行状态信息(开或关)。如果指定了名称,将只显示不同运行级别的指定服务的状态。
chkconfig ndash-添加名称:添加新服务。Chkconfig确保每个运输级别都有一个开始(s)或结束(k)条目。如果缺少,它将从默认的初始化脚本自动创建。
chkconfig ndash-del name:从/etc/RC [0-6]中删除服务并删除相关符号连接。
chkconfig[-level | levels][][run level]系统服务[on|off|reset]:设置服务是在指定的运行级别启动、停止还是重置。
例如,要在运行级别3、4和5停止nfs服务,命令如下:
chkconfig-345 NFS关闭
运行级文件:
chkconfig管理的每个服务都需要在相应的init.d下向脚本添加两行或更多行注释
第一行告诉chkconfig默认启动的运行级别以及启动和停止的优先级。如果默认情况下服务没有在任何运行级别启动,请使用-而不是运行级别。
第二行描述服务,可以用 lines注释。
例如,random.init包含三行:
# chkconfig: 2345 20 80
#描述:为保存和恢复系统熵池
#更高质量的随机数生成。
附加介绍一下Linux系统的运行级的概念:
Linux操作系统将操作环境分为以下七个层次,即
0:关机
1:单用户模式(单用户,无网络)
2:无网络支持的多用户模式(多用户,无网络)
3.网络支持的多用户模式(多用户、网络)
4:保留,未使用
5:网络和X-Window支持多用户模式(多用户、网络和X-Window接口)
6:重启系统,即重启
Linux中有很多运行级别,常见的有2、3、4、5级多用户。很多人都知道5是运行X-Windows的级别,0代表关机。操作级别的改变可以通过init命令进行切换。例如,如果您想将系统保持在单用户状态,可以使用init1进行切换。在切换Linux运行级别的过程中,系统会自动在目录/etc/rc[0-6]中找到k和s开头的文件。d对应的运行级别,并按照下面的数字顺序执行这些脚本。维护这些脚本是一项乏味的任务。Linux提供chkconfig命令来更新和查询不同运行级别的系统服务。
范例:
1.检查不同执行级别的各种服务的状态:
代码如下:
$chkconfig -列表
2.列出系统服务vsftpd在每个执行级别的启动情况:
代码如下:
$chkconfig - list vsftpd
3.当执行3级和5级时,关闭vsftpd系统服务:
代码如下:
$ chkconfig-35级vsftpd关闭
4.在执行等级2,3,5时,开启 vsftpd系统服务:
代码如下:
$chkconfig --level 235 vsftpd on
4.1.在执行等级2,3,5时,重启vsftpd系统服务:
代码如下:
chkconfig --level 235 vsftpd restart
5.关闭一些自己不需要的服务:
如果没有打印机:
代码如下:
$chkconfig --level 235 cups off
如果没有局域网:
代码如下:
$chkconfig --level 235 smb off
如果不需要远程用户登录的:
代码如下:
$chkconfig --level 235 sshd off
如果不需要定时任务的:
代码如下:
$chkconfig --level 235 crond off
如果不需要添加新硬件的:
代码如下:
$chkconfig --level 235 kudzu off
查看特定系统服务的进程状态,如httpd:
代码如下:
$chkconfig --list | grep httpd
1、如何增加一个服务?
首先,服务脚本必须存放在/etc/ini.d/目录下;其次,需要用chkconfig ––add servicename来在chkconfig工具服务列表中增加此服务,此时服务会被在/etc/rc.d/rcN.d中赋予K/S入口了。最后,你就可以上面教的方法修改服务的默认启动等级了。
2、Linux下如何自动启动MySQL ?
首先确保/etc/rc.d/init.d/mysqld 存在,若用 service mysqld start 能够正常启动,表示服务存在(注意:如果是rpm形式安装,相应服务会自动在/etc/rc.d/init.d目录注册的)。运行命令:
代码如下:
chkconfig --add mysqld
运行命令:
代码如下:
chkconfig --level 345 mysqld on
重启即可
如何是源码安装,如何让软件开机启动,以Apache为例?在linux下安装了apache 服务(通过下载二进制文件经济编译安装、而非rpm包)、apache 服务启动命令:/server/apache/bin/apachectl start 。让apache服务运行在运行级别3下面。 命令如下:
代码如下:
touch /etc/rc.d/init.d/apachevi /etc/rc.d/init.d/apachechown -R root /etc/rc.d/init.d/apachechmod 700 /etc/rc.d/init.d/apacheln -s /etc/rc.d/init.d/apache /etc/rc.d/rc3.d/S60apache #S 是start的简写、代表启动、K是kill的简写、代表关闭。60数字代表启动的顺序。
apache的内容:
代码如下:
#!/bin/bash#Start httpd service/server/apache/bin/apachectl start
至此 apache服务就可以在运行级别3下 随机自动启动了。
(注意:当创建完 /etc/rc.d/init.d/apache 文件后,其实可以结合 chkconfig 对启动服务进行相应的调整的。)
另外,也可把启动命令 /server/apache/bin/apachectl start 直接写入 /etc/rc.d/rc.local 文件中,达到开启启动的目的!
上述就是小编为大家分享的chkconfig命令如何在Linux中使用了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。