linux服务开机启动

1、chkconfig 配置开机启动

在  /etc/init.d  创建执行服务的可执行脚本,赋予脚本可执行权限。如果是通过yum 或者rpm安装的,并且已经在该目录下存在对应的启动脚本,就不用自己创建了。

需要开机通过chkconfig设置开机启动的服务,必须在 /etc/init.d 目录创建一个可执行脚本,服务名称就是脚本名称。
每个被chkconfig管理的服务需要在对应的init.d下的脚本加上两行或者更多行的注释。

# chkconfig:  chkconfig缺省启动的运行级以及启动和停止的优先级。

# description:   对服务进行描述,可以用\ 跨行注释。

这两行注释必须要有

/etc/init.d/my-service  只是模拟一下,服务执行只是输出数字123

#!/bin/bash
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for # higher quality random number generation.
echo 123;

chkconfig: 2345 20 80  表示这个服务在运行级别2345下运行  20表示开机启动优先权重  80表示关闭优先权重。实际上chkconfig --add 命令是将/etc/init.d中的启动脚本软连接到

/etc/rc.d/rc3.d (rc0.d ... rc6.d)  0-6个运行级别对应相应的目录。都是/etc/init.d 中启动脚本的软连接。

给 脚本 my-service 设置可执行权限,并通过chkconfig添加开机启动服务

chmod +x /etc/init.d/my-service
chkconfig --add my-service

/etc/init.d/中的脚本,可以通过命令:

service service-name [start/stop]  启动或者关闭。如果是自己编写的启动脚本,你需要学习一下shell的编写,其实就是用了  case  in 命令进行编写的

例如

service nginx start

2、/etc/rc.local 文件中添加开机启动命令。

开机的时候,执行完 /etc/rcx.d  (x表示0到6中的一个数字,对应7个运行级别的启动目录),最后会执行/etc/rc.local脚本,我们将要启动的服务脚本写到这个文件即可。    如果不生效,检查文件是否有可执行权限

#!/bin/bash
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don‘t
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
#需要执行的脚本写绝对路径
/usr/local/rabbitmq_server-3.6.3/sbin/rabbitmq-server detached &

原文地址:https://www.cnblogs.com/guohong-hu/p/8410925.html

时间: 2024-07-30 14:37:51

linux服务开机启动的相关文章

Linux系统开机启动时的工作原理

Linux系统开机启动时的工作原理也是深入了解Linux系统核心工作原理的一个很好的途径. 启动第一步--加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它.这是因为BIOS中包含了CPU的相关信息.设备启动顺序信息.硬盘信息.内存信息.时钟信息.PnP特性等等.在此之后,计算机心里就有谱了,知道应该去读取哪个硬件设备了.在BIOS将系统的控制权交给硬盘第一个扇区之后,就开始由Linux来控制系统了. 启动第二步--读取MB

centos设置服务开机启动

Linux CentOS设置服务开机启动的方法 by 天涯 · 2013/07/26 CentOS设置服务开机启动的两种方法 1.利用 chkconfig 来配置启动级别 在CentOS或者RedHat其他系统下,如果是后面安装的服务,如httpd.mysqld.postfix等,安装后系统默认不会自动启动的.就算 手动执行 /etc/init.d/mysqld start 启动了服务,只要服务器重启后,系统仍然不会自动启动服务. 在这个时候,我们就需要在安装后做个设置,让系统自动启动这些服务,

linux memcached开机启动

1.首先是写 service脚本 service脚本需要进入到目录/etc/init.d中,然后touch memcached,最后vim memcached后进行脚本编写,脚本如下: #!/bin/bash #chkconfig:345 60 60 #description:auto_run export PATH=/sbin:$PATH start() {         echo -n $"Starting memcached:"         /usr/local/memca

Linux系统开机启动原理

我理解的linux系统开机顺序如下,如有分歧,可一起探讨. Linux系统开机启动的顺序是: BIOS自检,检查硬件,选择引导介质如光盘or硬盘orU盘等等. 进入bootloader,它是写在硬盘最前面的部分,大小是512字节.由446字节的mbr和64字节的DPT和2字节的返回码组成. bootloader会去读取/boot/grub/grub.conf,然后根据配置文件寻找/boot分区下面的内核文件vmlinuz.....及内核辅助文件initrd......以及加载根分区 读取/etc

(转)CentOS 7 sytemctl 自定义服务开机启动

CentOS 7 sytemctl 自定义服务开机启动 原文:http://blog.csdn.net/ithomer/article/details/51766319 CentOS 7继承了RHEL 7的新的特性,例如强大的systemctl,而systemctl的使用也使得系统服务的/etc/init.d的启动脚本的方式发生重大改变,也大幅提高了系统服务的运行效率.但服务的配置和以往也发生了极大的不同,变的简单而易用了许多(仁者见仁,米扑博客). systemd提供更优秀的框架以表示系统服务

linux服务延时启动

zabbix-server在系统启动时,需要先启动xampp中的mysql,如果mysql没启动就会导致zabbix-server启动失败 怎么设置linux服务延时启动呢,很简单,用sleep就可以 修改/etc/rc.local文件 /opt/lampp/lampp startmysql /bin/sleep 60 /etc/init.d/zabbix-server start 就这么简单.

CentOS设置服务开机启动的方法

CentOS设置服务开机启动的两种方法 1.利用 chkconfig 来配置启动级别 在CentOS或者RedHat其他系统下,如果是后面安装的服务,如httpd.mysqld.postfix等,安装后系统默认不会自动启动的.就算手动执行 /etc/init.d/mysqld start 启动了服务,只要服务器重启后,系统仍然不会自动启动服务. 在这个时候,我们就需要在安装后做个设置,让系统自动启动这些服务,避免不必要的损失和麻烦. 其实命令很简单的,使用chkconfig即可. [天涯PHP博

(004)Linux的开机启动

十年运维系列之基础篇 - Linux 作者:曾林 联系:[email protected] 网站:www.jplatformx.com 版权:文章未经同意请勿转载 一.引言 这里虽然介绍的是Linux的开机启动,但是有些操作或者流程是不局限于linux操作系统的,而是针对几乎所有的操作系统. 二. BIOS 当我们按下开机键的时候,电流会经过电源线流经整个主板.此时,一个加电的特殊电路会“敲打”一下CPU的被称作reset的引脚.此时cpu内的某些寄存器,比如cs.eip就会出现一些固定的内容.

Linux 添加开机启动项的三种方法

linux 添加开机启动项的三种方法. (1)编辑文件 /etc/rc.local 输入命令:vim /etc/rc.local 将出现类似如下的文本片段: #!/bin/sh## This script will be executed *after* all the other init scripts.# You can put your own initialization stuff in here if you don't# want to do the full Sys V sty