知识屋:更实用的电脑技术知识网站
所在位置:首页 > 操作系统 > linux

linux系统:init.drc0.drc1.drc2.drc3.drc4.drc5.drc6.d

发布时间:2014-09-05 13:26:35作者:知识屋

未完整,学习更正更新中...

[root@localhost ~]# ls /etc/rc.d/

init.d rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d

0 - 停机
1 - 单用户模式
2 - 多用户,但是没有NFS ,不能使用网络
3 - 完全多用户模式,我最喜欢的模式
4 - “打酱油” 模式,没有用到
5 - X11 桌面模式
6 - 重新启动 (如果将默认启动模式设置为6,Linux将会不断重启)

rc#.d 其中#代表系统运行级别

rc5.d 是图形界面运行级别 S是start执行的意思,K是Kill关闭不执行

[root@localhost rc5.d]# ll
total 0
lrwxrwxrwx. 1 root root 20 Feb 21 20:04 K50netconsole->../init.d/netconsole
lrwxrwxrwx. 1 root root 17 Feb 21 20:04 K90network -> ../init.d/network

其中K50netconsole是../init.d/netconsole的软连接且K打头应该是图形界面不运行的脚本,数值50可以看作是运行的优先级数值越大越靠后执行。

转到../init.d/netconsole目录下看个究竟

[root@localhost init.d]# ll

total 40
-rw-r--r--. 1 root root 13430 Sep 3 23:52 functions
-rwxr-xr-x. 1 root root 7271 Aug 3 2013 netcf-transaction
-rwxr-xr-x. 1 root root 2989 Sep 3 23:52 netconsole
-rwxr-xr-x. 1 root root 6754 Sep 3 23:52 network
-rw-r--r--. 1 root root 1160 Dec 6 06:22 README

创建一个开机自动运行脚本。用chkconfig来创建。

首先写一个脚本:

[root@localhost ~]# vi /etc/init.d/off-vga-ati 创建一个脚本文件
[root@localhost ~]# cat /etc/init.d/off-vga-ati 内容如下
#! /bin/bash 脚本头
# chkconfig: 5 95 90 必须写,给chkconfig用来控制执行优先级的 5是在界面模式下运行,95是S优先级,90是K的优先级别。

# description: stop vga-ati,It is used to server 说明:这个脚本或者服务是干吗用的
echo IGD > /sys/kernel/debug/vgaswitcheroo/switch 功能命令
echo OFF > /sys/kernel/debug/vgaswitcheroo/switch 功能命令

[root@localhost ~]# chmod a+x /etc/init.d/off-vga-ati 给个可执行权限 a+x a是全部用户及用户/组/其他 +x都使其有执行的权限
[root@localhost ~]# chkconfig --add off-vga-ati 把一个文件加到chkconfig列表中去
[root@localhost ~]# chkconfig --level 5 off-vga-ati on 设定运行级别并启动
[root@localhost ~]# chkconfig --list 查看chkconfig列表


Note: This output shows SysV services only and does not include native
systemd services. SysV configuration data might be overridden by native
systemd configuration.


If you want to list systemd services use 'systemctl list-unit-files'.
To see services enabled on particular target use
'systemctl list-dependencies [target]'.


netconsole 0:off1:off 2:off3:off 4:off5:off 6:off
network 0:off1:off 2:off3:off 4:off5:off 6:off
off-vga-ati 0:off1:off 2:off3:off 4:off5:on6:off 红色部分说明它就在5这个级别里启动了
[root@localhost ~]# ll /etc/rc.d/rc5.d/
total 0
lrwxrwxrwx. 1 root root 20 Feb 21 20:04 K50netconsole -> ../init.d/netconsole
lrwxrwxrwx. 1 root root 17 Feb 21 20:04 K90network -> ../init.d/network
lrwxrwxrwx. 1 root root 21 Feb 22 00:35 S95off-vga-ati -> ../init.d/off-vga-ati 自动在rc5.d这个运行级别文件夹中生成了名字为“S95off-vga-ati”软连接。
[root@localhost ~]# shutdown -r now 重起看下效果。是不是开机后关闭了独立显卡

以上部分参考学习文献(链接):

http://www.cnblogs.com/killkill/archive/2010/11/08/1871542.html 使用chkconfig来管理Linux的服务

http://bbs.ywlm.net/thread-877-1-1.html 解决“service XXX does not support chkconfig”的问题

http://bbs.chinaunix.net/thread-2236299-1-1.html rc2.d rc3.d rc5.d

http://blog.csdn.net/hcx25909/article/details/9068497 Ubuntu下添加开机启动脚本

http://blog.csdn.net/simon_dong618/article/details/1591498 Linux中chkconfig命令

http://www.linuxso.com/command/chkconfig.html chkconfig命令参数及用法详解--linux系统服务设置命令

最后感谢万能的谷歌 搜索keyword “chkconfig add”

https://www.google.com.hk/search?newwindow=1&safe=strict&espv=2&es_sm=91&q=chkconfig+add&oq=chkconfig+&gs_l=serp.1.2.0l10.1308036.1314839.0.1319239.14.10.2.2.2.0.256.1258.0j2j4.6.0....0...1c.1j4.35.serp..4.10.1296.RA0hbFVnaMk

(如何创建软连接?)

[root@localhost ~]# ln -s /etc/init.d/off-vga-ati /etc/rc.d/rc5.d/S100off-vga-ati

[root@localhost ~]# ls -l /etc/rc.d/rc5.d/
total 0
lrwxrwxrwx. 1 root root 20 Feb 21 20:04 K50netconsole -> ../init.d/netconsole
lrwxrwxrwx. 1 root root 17 Feb 21 20:04 K90network -> ../init.d/network
lrwxrwxrwx. 1 root root 23 Feb 21 23:28 S100off-vga-ati -> /etc/init.d/off-vga-ati

这就创建好了,注:ln -s 源文件 目标文件 创建软连接,ln 源文件 目标文件 创建硬连接,区别在于前者目标文件不占用空间像快捷方式。后者目标文件与源文件体积相同。它们的共性就是文件保持同步。

(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜