/etc/rc.d/rc.local linux启动自动开启某些服务(转)
/etc/rc.d/rc.local似乎是很多Linux系统管理员的偏爱,因为凡是需要随系统自动启动的服务、程序等,只要系统没有提供Sys V风格的启动脚本,就把这些需求都塞到/etc/rc.d/rc.local。
当然,绝大部分情况下,你会发现这一切都工作得很正常,看上去也很美好。不过,当你遇到了一些诡异的问题的时候,也许你应该好好的去看看/etc/rc.d/rc.local里都写了什么了?
虽然/etc/rc.d/rc.local 的描述是你可以把你需要的自动启动的程序放到这里,不过那仅仅只是限于没有别的地方可以放置了,或者说系统也没有提供其他办法了,我们才这么干,然而实际上,我碰到的很多/etc/rc.d/rc.local里放置的内容,其实系统提供了更好的处理方式:
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
这样的语句,实际上,系统也提供了它正确放置的位置,只不过这个文件默认不会存在,你之需要看看/etc/init.d/network这个脚本就知道了,它除了会把网卡带起来以外,还会去检查是否存在/etc/sysconfig/static-routes文件,如果有,则添加这些文件里记录的静态路由,其格式很简单,比如上面的两条语句换成static-routes要求的格式就是:
any -net 192.168.1.0 netmask 255.255.255.0 gw 10.224.0.254
any -host 192.168.100.1 gw 10.244.0.254
3)修改设备权限信息:对于有udev功能的核心来说,修改设备的属性,权限等,应该去找对应rules文件,在那些文件里去做对应的修改。
4 ) 其他需要运行的程序:还是自己写一个简单的符合LSB标准的启动脚本吧,这样系统能够帮你正确的启动并且正确的停止改服务,特别是正确的停止服务,而不是由系统简单发出kill -9 的方式。
上述这样的做法,其主要的目的就是要能够让服务按照正确的顺序依照正确的方式启动和停止,这样能够给你消除一些隐藏的问题。
当然,如果你系统一直都是正常工作的,而且/etc/rc.d/rc.local也又大量的脚本行,那也许你还不能体会我为什么要说上面这些话了。
/etc/rc.d/rc.local linux启动自动开启某些服务(转)的更多相关文章
- 通过/etc/rc.local实现开机自动拉起服务
添加服务到/etc/rc.local 如自动拉起apache服务: /etc/rc.local: #!/bin/sh # # This script will be executed *after* ...
- linux 启动自动运行
开机启动时自动运行程序 Linux 1.加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init.init根据配置文件继续引导过程,启动其它进程.通常情况下,修改放置在 /etc/rc ...
- Linux启动流程和脚本服务-6
授课笔记:----------------------------------- linux系统启动流程:一.初始化阶段:1.grub引导界面2.识别硬件3.初始化驱动 二.加载/etc/rc.d/r ...
- linux启动自动挂载分区和/etc/fstab简单修复
让后加的分区能够启动时自动挂载,需要把配置写入文件 /etc/fstab vi /etc/fstab UUID=3f5859e0-592f-42cd-b533-570422fb85be / ext ...
- linux启动时开启screen
编辑/etc/rc.local 添加 su - ubuntu -c 'screen -dmS ss zserver -p /etc/config'
- CentOS6.5 开机启动自动运行redis服务
[一].查找和设置自己的redis路径参数 环境变量 PATH=/usr/local/bin:/sbin/:/usr/bin:/bin 端口 REDISPORT=6379 文件位置 EXEC=/usr ...
- Linux启动与关闭WIndows服务记录
启动: mono-service -l:/var/run/Myservice-lock.pid MyService.exe (这个-l参数一定要加上) 控制服务: 暂停: kill -USR1 `ca ...
- linux 启动weblogic的某服务报错
问题如标题所示, 错误信息主要包括: weblogic.store.PersistentStoreException: [Store:280073]The file store"WLS_DI ...
- linux查看与开启sshd服务
1.首先通过物理终端进入到linux上,手工检查ssh发现没运行/etc/init.d/sshd statussshd is stopped 手工启动服务,发现报告权限错误./etc/init.d/s ...
随机推荐
- 加L“”
error C2665: “AfxMessageBox”: 2 个重载中没有一个可以转换所有参数类型 初学.net,编写如下代码运行,竟然提示错误(error C2665: “AfxMessageBo ...
- Phpcms v9专题分类增加模板设置的方法
Phpcms v9专题设置里面,默认专题子分类是无模板设置的,本文教你通过官方论坛给出的教程实现专题分类增加模板设置.先来看看默认专题子分类设置界面: 修改后的的专题子分类设置界面多了模板设置: 修改 ...
- Navicat for Mysql 如何备份数据库
Navicat for Mysql 如何备份数据库 打开界面如下 打开自己的的数据库 点击需要备份的数据库名 未完!!! 文章来自:http://jingyan.baidu.com/article/f ...
- 电脑开机提示 NTLDR is missing
电脑开机,黑屏并提示NTLDR is missing Press Ctrl+Alt+Del to restart,并且反复重启都不行,这是怎么回事呢?首先我们来分析下这段英语的含义:NTLDR是指NT ...
- windows cmd中查看某个命令所在的路径
需求描述: 之前用linux环境下的which命令就能看到某个命令的绝对路径, 然后想在windows下的cmd中是否也能够查看到命令的绝对路径呢 操作过程: 1.windows环境下,通过where ...
- linux环境中查看主机型号(机器型号)
需求说明: 今天一同事让统计测试环境主机型号,在此记录下. 操作过程: 1.通过dmidecode工具查询,产品型号(机器型号) [root@redhat6 ~]# dmidecode | grep ...
- 如何根据select选择的值反查option的属性
有时候select已经被选中了,想知道这个选中option的属性又该如何处理呢? 我这里提供一种粗暴的方式 <!DOCTYPE HTML> <html lang="en-U ...
- nodejs搭建简单web服务器!!
var http = require("http"), url = require("url"), path = require("path" ...
- jquery 添加可操作,编辑不可操作
--jsp <td class="queryTitle" width="100">优惠券批次号</td> <td class=&q ...
- SecureCRT 详细使用图文教程(按步骤)
一.安装和激活 安装 1.在http://www./softs/55471.html下载相关包激活工具,运行scrt622-x86.exe. 2.进入安装向导程序,默认下一步,直到安装完成既可以. 破 ...