Linux设定服务开机启动命令方法

作者:简简单单 2013-04-28

方式一:ntsysv

类似于windows里的msconfig工具,用来设置服务是否随机启动。你可以使用ntsysv来启动或关闭由xinetd管理的服务,还可以使用ntsysv来配置运行级别。由xinetd管理的服务会立即受到ntsysv的影响,而其它服务则不会立即生效。你必须使用service xxxxx stop/start/restart命令来停止/运行/重启某项服务。(把xxxxxx换成你想停止的服务名称即可),譬如

 代码如下 复制代码
#ntsysv
#service network retart
“service的使用:service 服务名字 (start/restart/stop/status)”

本人遇到过的问题:
有次想用命令#serverce iptables start启动防火墙,但就是无法启动,最后用了ntsysv命令,选上iptables后,运行service iptables start就可以正常启动了。

方式二:chkconfig

chkconfig用来管理系统初始化的时候启动的服务。Chkconfig命令可以用来激活或者停用服务,也可以用来设置让某个服务随机启动。但chkconfig指令并不是立即自动禁止或激活一个服务。它只是简单的改变了符号连接。
使用说明如下:
功能说明:检查,设置系统的各种服务。
语  法:chkconfig
[--add][--del][--list][系统服务]或chkconfig[--level<等级代号>][系统服务][on/off/reset]
参  数:
–add 增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
–del 删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。
–level<等级代号> 指定读系统服务要在哪一个执行等级中开启或关毕
1:chkconfig命令也可以用来激活和解除服务。chkconfig –list命令显示系统服务列表,以及这些服务在运行级别0到6中已被启动(on)还是停止(off)。

 代码如下 复制代码
chkconfig –add smb #增加smb服务
chkconfig –list | grep smb
chkconfig –list smb
smb 0:off 1:off 2:on 3:on 4:on 5:on 6:off

2:chkconfig还能用来设置某一服务在某一指定的运行级别内被启动还是被停运。譬如,要在运行级别3、5中停运samba服务,使用下面的命令:
chkconfig –level 35 smb off
3:由xinetd管理的服务会立即被chkconfig影响。譬如,如果xinetd在运行,finger被禁用,那么执行了chkconfig finger on命令后,finger就不必手工地重新启动xinetd来立即被启用。对其它服务的改变在使用chkconfig之后不会立即生效。必须使用service servicename start/stop/restart命令来重起服务

方式三:通过服务配置设置SAMBA的自启动,即在图形界面下,此方法略。
小结:用ntsysv和chkconfig都能令由xinetd管理的服务立即生效,而其它服务则需运行
#service xxxx restart来生效。

方法四:

输入#setup指令进入系统服务菜单,选择你想启动的服务比如httpd,然后重起机器或者/etc/rc.d./init.d/httpd
  start

方法五:

第二种)
把启动命令放到/etc/rc.d/rc.local文件里这样就可以每次启动的时候自动启动服务了,例如对于apache,编译好apache后会在安装目录的bin下生成apachectl文件,这是个启动脚本,我们只需要把这个命令加到rc.local里就可以了
(suse没有rc.local。SUSE是可以这么定义自己的脚本的,如果希望在切换运行级之前和之后运行自己的脚本,那么可以分别创建:

 代码如下 复制代码

/etc/init.d/before.local
/etc/init.d/after.local)
echo /usr/local/apache/bin/apachectl>> /etc/rc.d/rc.local,
设置服务自动启动的方式是在rc.local里还可以加入类似以下的一些脚本:
#sshd
/usr/local/sbin/sshd

#proftpd
/usr/local/sbin/proftpd

#apache
/home/apache/bin/apachectl start

#mysql
/home/mysql/bin/safe_mysqld --port=3306 &

#start oracle8i listener first
su - oracle -c 'lsnrctl start'

#start oracle8i
su - oracle -c 'dbstart'

相关文章

精彩推荐