linux中/etc/init.d设置开机启动

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux中/etc/init.d设置开机启动相关的知识,希望对你有一定的参考价值。

参考技术A     笔者最近要把写的脚本程序设置为开机启动,而且要把这个脚本做成服务放置在/etc/init.d目录下,和其他服务一样,比如mysql,可以允许命令service mysql start/stop/restart或者/etc/init.d mysql start/stop/restart来执行。用户在启用相应服务时, 就不用进行太复杂的设置。 当服务终止时, 操作系统也能根据脚本的定义, 自动回收相关资源。 用户还能把重要的服务设置成开机启动, 省去了手动开启的麻烦。/etc/init.d 是 /etc/rc.d/init.d 的软链接(soft link)。

    想到笔者以前做过树莓派来建立adsb接收基站,不妨把他的找出来看看,一个服务到底一个怎么写,有啥格式?

    dump服务,脚本把进程包装成了一个服务, 定义了它在启动、 重启和终止时的具体行为。

    case "$1"就是读取dump命令后的第一个参数的值,分别对应不同的执行函数来操作。本服务脚本有三个函数  start、stop、 reload|restart|force-reload,对应着上面定义的函数。

    服务放在这个脚本下,还需要关联服务,chkconfig --add dump  。在chkconfig工具服务列表中增加此服务,此服务会在/etc/rc.d/rcN.d中赋予K/S入口了。chkconfig --level 2345  dump  on,修改start运行级别设置为2345,。​chkconfig --level 16 dump off,修改stop运行级别为16。需要要注意的是,dump脚本需要设置X执行权限哦。 chkconfig -list可以显示所有运行级系统服务的运行状态信息(on或off)。

linux 下xinetd和/etc/init.d里的服务不一样吗?为啥要设置这两个?

linux下/etc/init.d和/etc/xinetd.d这两个目录下的服务是一样的吗?为什么?

1、/etc/init.d目录中放置了系统中各个daemon服务的脚本,xinetd是其中之一。
2、xinetd是一种特殊的daemon服务(super daemon),它本身管理了一系列的daemon服务,这些服务只有在用户调用时才由xinetd启动,它们启动速度稍慢于独立的daemon服务,这些服务在/etc/xinetd.conf和/etc/xinetd.d目录中进行配置。
参考技术A 仔细比较一下你就知道了 init一般是启动服务器的进程的.
inetd 是用来开启网络端口指定处理程序来对网络进行服务的.在这个通用接口下可以相对容易的写出网络服务程序来.有很多部分都不用自己的程序来进行处理了.

为了不同的应用方向演化出来的. 其实还有其它类型的服务. 可以看看基础知识的部分.

以上是关于linux中/etc/init.d设置开机启动的主要内容,如果未能解决你的问题,请参考以下文章

Linux(fedora)下启动MySQL,结果显示:env: /etc/init.d/mysql:权限不够。 我已经将权限切换到su了

linux 下xinetd和/etc/init.d里的服务不一样吗?为啥要设置这两个?

linux下yum安装的mysql,/etc/init.d/没有mysql怎么办?

linux中/etc/rc.d/rc.local是啥文件

如何指定 /etc/init.d/mysqld 所加载的配置文件

命令行怎么重启ssh,用/etc/init.d/ssh restart不行