Ubuntu 开机自启动工具 update-rd.d 使用详解
常用命令:
$ sudo update-rc.d nginx defaults #增加服务
$ sudo update-rc.d -f nginx remove #移除服务
Linux服务的启动、停止和重载都是使用/etc/init.d/内的脚本。
在启动过程中或者改变运行级别( runlevel )时,/etc/rcX.d/内的相应的服务脚本被调用(这里的X是 runlevel number)
在Debian中安装新服务时,默认是开机启动的。例如,如果你安装了Nginx,Nginx服务会在下次开机时自启动。如果你不想Nginx开机自启动,你就要自己移除 /etc/rcX.d/SYYnginx 或使用 update-rc.d。而使用update-rc.d的优势很明显,它会自己移除、增加对/etc/init.d/内的链接。
下面以nginx为例,/etc/rcX.d文件如下:
$ ls -l /etc/rc?.d/*nginx
lrwxrwxrwx 1 root root 15 1月 6 00:56 /etc/rc0.d/K20nginx -> ../init.d/nginx
lrwxrwxrwx 1 root root 15 1月 6 00:56 /etc/rc1.d/K20nginx -> ../init.d/nginx
lrwxrwxrwx 1 root root 15 1月 6 00:56 /etc/rc2.d/S20nginx -> ../init.d/nginx
lrwxrwxrwx 1 root root 15 1月 6 00:56 /etc/rc3.d/S20nginx -> ../init.d/nginx
lrwxrwxrwx 1 root root 15 1月 6 00:56 /etc/rc4.d/S20nginx -> ../init.d/nginx
lrwxrwxrwx 1 root root 15 1月 6 00:56 /etc/rc5.d/S20nginx -> ../init.d/nginx
lrwxrwxrwx 1 root root 15 1月 6 00:56 /etc/rc6.d/K20nginx -> ../init.d/nginx
对于runlevel 0,1和6链接以K开头,runlevel 2,3,4和5链接以S开头。这两个字母代表 Kill 和 Start 。
- Debian和Ubuntu中runlevel 2,3,4和5是多用户运行级别。
- 运行级别 0 是 停止
- 运行级别 1 是 单用户模式
- 运行级别 6 是 重启
移除服务(停止服务)
如果你想完全禁用Nginx,你需要删除所有 /etc/rcX.d/ 中的相关链接。但是如果使用 update-rc.d,如下:
$ sudo update-rc.d -f nginx remove
-f 参数:表示即使 /etc/init.d/nginx 文件还存在,也要强力移除链接
注意:如果下次Nginx升级了,那么本命令会失效。下面一条命令可以保证下次升级时,服务依旧不会重启
$ sudo update-rc.d nginx stop 70 0 1 2 3 3 4 5 6
增加服务
如果现在你又想Nginx开机自启动了,只要输入如a下命令即可:
$ sudo update-rc.d nginx defaults
Adding system startup for /etc/init.d/nginx ...
/etc/rc0.d/K20nginx -> ../init.d/nginx
/etc/rc1.d/K20nginx -> ../init.d/nginx
/etc/rc6.d/K20nginx -> ../init.d/nginx
/etc/rc2.d/S20nginx -> ../init.d/nginx
/etc/rc3.d/S20nginx -> ../init.d/nginx
/etc/rc4.d/S20nginx -> ../init.d/nginx
/etc/rc5.d/S20nginx -> ../init.d/nginx
自定义优先级
默认值是20,S20链接在S91链接前运行,K91在K20之前停止。
数字越小优先级越高,先运行、后停止。
为了设定启动和停止优先级为91,运行如下命令:
$ sudo update-rc.d nginx defaults 91
Adding system startup for /etc/init.d/nginx ...
/etc/rc0.d/K91nginx -> ../init.d/nginx
/etc/rc1.d/K91nginx -> ../init.d/nginx
/etc/rc6.d/K91nginx -> ../init.d/nginx
/etc/rc2.d/S91nginx -> ../init.d/nginx
/etc/rc3.d/S91nginx -> ../init.d/nginx
/etc/rc4.d/S91nginx -> ../init.d/nginx
/etc/rc5.d/S91nginx -> ../init.d/nginx
对启动和停止设定不同的优先级
下面我们设定启动优先级为20,停止优先级为80
$ sudo update-rc.d nginx defaults 20 80
Adding system startup for /etc/init.d/nginx ...
/etc/rc0.d/K80nginx -> ../init.d/nginx
/etc/rc1.d/K80nginx -> ../init.d/nginx
/etc/rc6.d/K80nginx -> ../init.d/nginx
/etc/rc2.d/S20nginx -> ../init.d/nginx
/etc/rc3.d/S20nginx -> ../init.d/nginx
/etc/rc4.d/S20nginx -> ../init.d/nginx
/etc/rc5.d/S20nginx -> ../init.d/nginx
完全自定义运行级别和优先级
设定启动运行级别2,3,4和5的优先级为20,停止运行级别为0,1和6的优先级为80
$ sudo update-rc.d nginx start 20 2 3 4 5 . stop 80 0 1 6 .
Adding system startup for /etc/init.d/nginx ...
/etc/rc0.d/K80nginx -> ../init.d/nginx
/etc/rc1.d/K80nginx -> ../init.d/nginx
/etc/rc6.d/K80nginx -> ../init.d/nginx
/etc/rc2.d/S20nginx -> ../init.d/nginx
/etc/rc3.d/S20nginx -> ../init.d/nginx
/etc/rc4.d/S20nginx -> ../init.d/nginx
/etc/rc5.d/S20nginx -> ../init.d/nginx
设定启动运行级别2,3和4的优先级为20,运行级别5的优先级为30。停止运行级别0,1和6的优先级为80
$ sudo update-rc.d nginx start 20 2 3 4 . start 30 5 . stop 80 0 1 6 .
Adding system startup for /etc/init.d/nginx ...
/etc/rc0.d/K80nginx -> ../init.d/nginx
/etc/rc1.d/K80nginx -> ../init.d/nginx
/etc/rc6.d/K80nginx -> ../init.d/nginx
/etc/rc2.d/S20nginx -> ../init.d/nginx
/etc/rc3.d/S20nginx -> ../init.d/nginx
/etc/rc4.d/S20nginx -> ../init.d/nginx
/etc/rc5.d/S30nginx -> ../init.d/nginx
注意:命令行中得点好“.”不能少。
参考:
Linux/CentOS 服务安装/卸载,开机启动chkconfig命令详解|如何让MySQL、Apache开机启动?
http://www.debuntu.org/how-to-managing-services-with-update-rc-d
Ubuntu 开机自启动工具 update-rd.d 使用详解的更多相关文章
- Ubuntu 开机自启动SSH+远程关机
Ubuntu 开机自启动SSH+远程关机 安装SSH 如何通过ssh远程登录linux系统 开机自启动ssh sudo gedit /etc/rc.locl # 输入密码 # 添加下面命令于 ex ...
- linux系统开机自动挂载光驱 和 fstab文件详解
Linux 通过 UUID 在 fstab 中自动挂载分区 summerm6关注 2019.10.17 16:29:00字数 1,542阅读 607 https://xiexianbin.cn/lin ...
- Java基础-DButils工具类(QueryRunner)详解
Java基础-DButils工具类(QueryRunner)详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如果只使用JDBC进行开发,我们会发现冗余代码过多,为了简化JDBC ...
- 最锋利的Visual Studio Web开发工具扩展:Web Essentials详解
原文:最锋利的Visual Studio Web开发工具扩展:Web Essentials详解 Web Essentials是目前为止见过的最好用的VS扩展工具了,具体功能请待我一一道来. 首先,从E ...
- ubuntu 下命令行播放器mplayer 使用详解
ubuntu 下命令行播放器mplayer 使用详解 2011-01-02 21:00:42| 分类: Linux/Unix | 标签: |字号大中小 订阅 使用 MPlayer 播放媒体文件最简 ...
- 给Clouderamanager集群里安装可视化分析利器工具Hue步骤(图文详解)
扩展博客 以下,是我在手动的CDH版本,安装Hue. CDH版本大数据集群下搭建Hue(hadoop-2.6.0-cdh5.5.4.gz + hue-3.9.0-cdh5.5.4.tar.gz)(博主 ...
- 给Clouderamanager集群里安装基于Hive的大数据实时分析查询引擎工具Impala步骤(图文详解)
这个很简单,在集群机器里,选择就是了,本来自带就有Impala的. 扩展博客 给Ambari集群里安装基于Hive的大数据实时分析查询引擎工具Impala步骤(图文详解)
- 给Ambari集群里安装可视化分析利器工具Hue步骤(图文详解)
扩展博客 以下,是我在手动的CDH版本平台下,安装Hue. CDH版本大数据集群下搭建Hue(hadoop-2.6.0-cdh5.5.4.gz + hue-3.9.0-cdh5.5.4.tar.gz) ...
- 给Ambari集群里安装基于Hive的大数据实时分析查询引擎工具Impala步骤(图文详解)
不多说,直接上干货! Impala和Hive的关系(详解) 扩展博客 给Clouderamanager集群里安装基于Hive的大数据实时分析查询引擎工具Impala步骤(图文详解) 参考 horton ...
随机推荐
- HoloLens开发手记 - Unity之场景共享 Shared holographic experiences in Unity
佩戴HoloLens的多个用户可以使用场景共享特性来获取集合视野,并可以与固定在空间中某个位置的同一全息对象进行交互操作.这一切是通过空间锚共享(Anchor Sharing)来实现的. 为了使用共享 ...
- Java学习笔记(十八)——Java DTO
[前面的话] 在和技术人员的交流中,各种专业术语会出现,每次都是默默的记录下出现的术语,然后再去网上查看是什么意思.最近做项目,需要使用到DTO,然后学习一下吧. 这篇文章是关于Java DTO的,选 ...
- Boostrap(4)
1.按钮 <!doctype html> <html> <head> <meta charset="utf-8"> <titl ...
- Javascript基础系列之(一)JavaScript语法
javascript的语法 1.区分大小写 javascript中,变量.函数.运算符都区分大小写. 2.弱类型变量 定义变量只用 "var"关键字 var age = 25; v ...
- nginx location的配置
文章转自:http://www.ttlsa.com/nginx/nginx-location-configure/ location的语法配置规则: 语法规则: location [=|~|~*|^~ ...
- emberJS
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- HTML5动画实例
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- shiro 与 web 的结合
本次使用的jar包为 shiro-core-.jar shiro-web-.jar 从Shiro 1.2开始引入了Environment/WebEnvironment的概念,即由它们的实现提供相应的S ...
- druid(德鲁伊)数据源的使用和配置 阿里出品
pom.xml <dependency> <groupId>com.alibaba</groupId> <artifactId>drui ...
- yield实例
如下 # __author__ = liukun # coding:utf-8 def it(): print ('hello') yield 1 yield 1 a= it() print(&quo ...