[转]Linux中如何自动启动服务

摘要:
/此外,我们可以使用chkconfig命令将服务添加到系统的运行级别。稍后定义启动服务的运行级别(在示例中,2345启动服务)。

linux自动启动服务很简单,最简单的是把启动命令放到/etc/rc.d/rc.local文件里。这样就可以每次启动的时候自动启动服务了。例如对于 apache,编译好apache后会在安装目录的bin下生成apachectl文件,这是个启动脚本,我们只需要把这个命令加到rc.local里就可以了:
echo /usr/local/apache/bin/apachectl >> /etc/rc.d/rc.local

此外我们还可以使用chkconfig命令来把某项服务加到系统的各项运行级别中,步骤如下:
1 创建启动脚本,对于apache、mysql、ssh这样的软件都是自己带的,我们只要稍微修改一下使之支持chkconfig就可以了
2 修改脚本
我们需要在脚本的前面加上2行,才能支持chkconfig命令
# chkconfig: 2345 08 92
# description: Automates a packet filtering firewall with ipchains.

chkconfig:后面定义的使启动服务的运行级别(例子中使2345启动该服务),以及关闭和启动服务的顺序(上例中启动服务的顺序是8,关闭的顺序是92)。
descriptions:对该服务的描述(上例中是ipchains包过滤),你可以换成自己想要的

修改好之后执行
cp 你的脚本 /etc/rc.d/init.d/脚本名
chmod 700 /etc/rc.d/init.d/脚本名
chkconfig --add 脚本名
以后每次重新启动服务器都会自动启动和关闭我们的服务了

而且你执行setup之后也可以看到我们添加的服务,选中我们添加的服务按F1键还可以看到我们定制的信息。 

附chkconfig命令:

  chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。

语法:
    chkconfig --list [name]
    chkconfig --add name
    chkconfig --del name
    chkconfig [--level levels] name <on|off|reset>
    chkconfig [--level levels] name
    chkconfig 没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务是否在当前运行级启动。如果是,返回true,否则返回false。如果在服务名后面指定 了on,off或者reset,那么chkconfi 会改变指定服务的启动信息。on和off分别指服务被启动和停止,reset指重置服务的启动信息,无论有问题的初始化脚本指定了什么。on和off开 关,系统默认只对运行级3,4,5有效,但是reset可以对所有运行级有效。
    --level选项可以指定要查看的运行级而不一定是当前运行级。
    需要说明的是,对于每个运行级,只能有一个启动脚本或者停止脚本。当切换运行级时,init不会重新启动已经启动的服务,也不会再次去停止已经停止的服务。
    chkconfig --list :显示所有运行级系统服务的运行状态信息(on或off)。如果指定了name,那么只显示指定的服务在不同运行级的状态。
    chkconfig --add name:增加一项新的服务。chkconfig确保每个运行级有一项启动(S)或者杀死(K)入口。如有缺少,则会从缺省的init脚本自动建立。
    chkconfig --del name:删除服务,并把相关符号连接从/etc/rc[0-6].d删除。
    chkconfig [--level levels] name <on|off|reset>:设置某一服务在指定的运行级是被启动,停止还是重置。例如,要在3,4,5运行级停止nfs服务,则命令如下:
    chkconfig --level 345 nfs off
运行级文件:
    每个被chkconfig管理的服务需要在对应的init.d下的脚本加上两行或者更多行的注释。第一行告诉chkconfig缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。第二行对服务进行描述,可以用\ 跨行注释。
例如,random.init包含三行:
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for \

# higher quality random number generation.
此例子表明random服务的缺省启动运行级在2、3、4、5级,启动的优先级(顺序号)是20,停止的优先级(顺序号)是80。

附加介绍一下Linux系统的运行级的概念:

    Linux中有多种运行级,常见的就是多用户的2,3,4,5 ,很多人知道5是运行X-Windows的级别,而0就是关机了。运行级的改变可以通过init命令来切换。例如,假设你要维护系统进入单用户状态,那么,可以使用init1来切换。在Linux的运行级的切换过程中,系统会自动寻找对应运行级的目录/etc/rc[0-6].d下的K和S开头的文件, 按后面的数字顺序,执行这些脚本。对这些脚本的维护,是很繁琐的一件事情,Linux提供了chkconfig命令用来更新和查询不同运行级上的系统服务 

免责声明:文章转载自《[转]Linux中如何自动启动服务》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇偏态分布(Skewed distribution)LUA 利用#遍历表的问题下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

shell命令--sudo

shell命令--sudo 0、sudo命令的专属图床 点此快速打开文章【图床_shell命令sudo】 1、sudo命令的功能说明 ​ sudo 命令以系统管理者的身份执行指令,也就是说,经由 sudo 所执行的指令就好像是 root 亲自执行。使用权限:在 /etc/sudoers 中有出现的使用者。 2、sudo命令的语法格式 SYNOPSIS...

mysql8 安装,并且配置远程登录

1.下载mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz 安装包 下载地址:https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz 2.解压mysql-8.0.18-linux-glibc2.12-x86_...

Linux文件目录权限浅谈

1、基本权限三种(1)r (read) 读 针对目录,有读(r)权限就代表能对此目录有列表功能,就是可以执行ls命令进行查看,另外还有cp的功能。针对文件,有读(r)权限就代表能对此文件有阅读功能,可以通过cat等命令查看文件内容。 (2)w (write) 写 针对目录,有写(w)权限就代表着在此目录下创建文件和目录,可以通过touch,mkdir等命令...

redis(4)

事务  开启事务 multi  作用 设定事务的开启位置,此指令执行后,后续的所有指令均加入到事务中  执行事务 exec  作用 设定事务的结束位置,同时执行事务。与multi成对出现,成对使用   注意:加入事务的命令暂时进入到任务队列中,并没有立即执行,只有执行exec命令才开始执行   取消事务  discard  作用 终止当前事务...

(转)高性能JavaScript:加载和运行(动态加载JS代码)

浏览器是如何加载JS的 当浏览器遇到一个<script>标签时,浏览器首先根据标签src属性下载JavaScript代码,然后运行JavaScript代码,继而继续解析和翻译页面。如果需要加载的js文件很多很大,则会让人感觉页面加载很慢,影响页面的交互。浏览器在遇到<body>之前,不会渲染页面的任何部分,如果此时<head...

Win2012R2(英文版)新增用户设置流程

场景:新建用户,和其他用户进行VPS隔离, 处理步骤: 1.登录管理员Administrator,按 Win+R调出命令框,输入命令: lusrmgr.msc ;  2.选择New User  3.输入要创建的用户名及密码,密码尽量复杂一些,不然无法创建; 取消 User must change password at next logon 勾选 Us...