(转)Linux下/etc/rc.local与/etc/init.d的区别与联系
Linux 区别 联系 init local etc RC
2023-09-27 14:28:38 时间
1./etc/rc.local
这是使用者自定义开机启动程序,把需要开机自动运行的程序写在这个脚本里再完成 run level 3 的服务启动后,
如果我还有其他的动作想要完成时,举例来说, 我还想要寄一封 mail 给某个系统管理帐号,通知他,系统刚刚
重新开机完毕,那么, 是否应该要制作一个 shell script 放置在 /etc/rc.d/init.d/ 里面,然后再以连结方式
连结到 /etc/rc.d/rc3.d/ 里面呢?呵呵!当然不需要!还记得上一小节提到的 /etc/rc.d/rc.local 吧?
这个档案就可以执行您自己想要执行的系统指令了。像不像早期 DOS 年代的 autoexec.bat 与 config.sys 呢?
也就是说,我有任何想要在开机时就进行的工作时,直接将他写入 /etc/rc.local , 那么该工作就会在开机的
时候自动被载入喔!而不必等我们登入系统去启动呢!是否很方便啊!一般来说,鸟哥就很喜欢把自己制作的
shell script 完整档名写入 /etc/rc.d/rc.local ,如此一来,开机就会将我的 shell script 执行过,真是好棒
那!也就是说,在linux启动的最后阶段,系统会执行存于rc.local中的命令。和windows里面的“启动”菜单有点
像,但是设置麻烦些,功能更强大。
使用情况:
1)oracle等服务器的启动:如果你需要你的oracle可以随着系统一起启动,你可以去看看/etc/oratab这个文件,然后去了解它,你就会发现这里才是它正确的位置所在
2)静态路由: 对于需要增加大量的不是本网段的路由时,很多人喜欢在/etc/rc.d/rc.local里添加类似
route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.224.0.251
route add -host 192.168.100.1 gw 10.224.0.251
2. /etc/init.d
这个目录存放的是一些脚本,一般是linux以rpm包安装时设定的一些服务的启动脚本。系 统在安装时装了好多rpm包,这里面就有很多对应的脚本。执行这些脚本可以用来启动,停止,重启这些服务。举个例子来说,如果你要重新启动 sendmail 的话,而且你的 sendmail 是以 rpm 来安装的,那么下达 /etc/rc.d/init.d/sendmail restart 就可以直接启动 sendmail 啰!
前面说到,/etc/rc.d/init.d这个目录下的脚本就类似与windows中的注册表,在系统启动的时候执行。程序运行到这里(init进程读取了运行级别), 是该运行init.d里的脚本了,但是并不是直接运行,而是有选择的因为系统并不需要启动所有的服务。
那么,系统是如何选择哪些需要启动哪些不要呢?这时刚才说的运行级别就起作用了。在决定了系统启动的run level之后,/etc/rc.d/rc这个脚本先执行。在RH9和FC7的源码中它都是一上来就check_runlevel()(虽然实现的代码不一样,也大同小异),知道了运行级别之后,对于每一个运行级别,在rc.d下都有一个子目录分别是rc0.d,rc1.d ….. rc6.d。每个目录下都是到init.d目录的一部分脚本一些链接。每个级别要执行哪些服务就在相对应的目录下,比如级别5要启动的服务就都放在rc5.d下,但是放在这个rc5.d下的都是一些链接文件,链接到init.d中相对应的文件,真正干活到init.d里的脚本。
相关文章
- linux VIM使用指南
- linux定时任务(crontab)
- Linux yum upgrade和yum update区别
- linux -- su和sudo命令的区别
- 【转】Linux中profile、bashrc、bash_profile之间的区别和联系
- Easyconnect for Linux
- Linux MemFree与MemAvailable的区别
- 如何通过网络在Windows、MAC和Linux之间共享文件
- RHEL (Red Hat Enterprise Linux,红帽企业级 Linux) 7.3 安装指南
- linux下如何制作initramfs镜像?
- 【Linux】ubuntu中的软件包管理器apt和dpkg、apt和apt-get的区别
- linux各级目录介绍,linux和windows文件系统区别
- linux系统调用和库函数调用的区别
- 《嵌入式 Linux C 语言应用程序设计(修订版)》——1.4 嵌入式系统硬件平台选型
- linux scull 中的缺陷
- Ping- Ip- Linux必学的60个命令
- 深入理解Linux网络内幕(七)——组件初始化的内核基础架构
- Linux中“软链接(符号链接)”和“硬链接”的区别
- 【系统运维】Linux系统下新增用户命令useradd与adduser的区别
- linux basic ------ dd 和 cp 的区别
- 线程池 ------ linux C实现
- Linux如何将bind服务做chroot的目录限制操作
- Linux:df / du 命令的常见使用场景以及其区别
- 在linux下面解压用的zxpf是什么意思,它跟zxvf有啥区别
- 初学者应该如何学习乃至玩好Linux系统呢?
- linux编译ruby1.8.7 出现OPENSSL错误
- Linux CentOS 各个版本的区别
- Kali Linux 弱点分析工具全集