一、setup 命令
在 Red Hat Linux 里头有一个相当好用的系统参数设定工具,那就是大家都耳熟能详的『 setup 』??≌夤ぞ咚荡┝艘裁挥惺裁刺厥獾牡胤剑?褪撬??恍 /etc/sysconfig 里的设定参数给他做成图形界面就是了!基本上,如果你对系统熟的话,那么不需要使用 setup 也是可以的啦!直接修改 /etc/sysconfig 底下的东西就可以???br />
setup:
我们先来说一说 setup 的用法吧!以 root 的身份在 command line 输入 setup 就可以进入。
二、、系统启动服务工具: ntsysv, service, chkconfig, init,
系统启动服务工具:ntsysv, service, chkconfig, init,
大 家一定都有:『咦!我某些服务在开机的时候启动,要怎么开始?』的疑问吧!?像我一开始玩 Linux 的时候,就对这个问题很有兴趣!嘿嘿!完到最后才终于晓得,原来开机能不能执行跟你的 /etc/rc.d/init.d 里头的服务设定项目有关,例如我要立刻就启动 apache ,那么 apache 的启动 script 称为 httpd ,所以要启动他就需要:
/etc/rc.d/init.d/httpd start
此外,一开机是否立刻启动则是设定在 /etc/rc.d/rc[0-6].d 这总共七个目录下的数据中!我们当然可以手动来进行连结档案,使他符合我们所需要的特性,但是我们也可以透过 Linux 给我们的设定工具来执行呦!
ntsysv
[root @test /root]# ntsysv [--level run-level]
参数说明:
--level :可以设定每一个 run-level 的开机启动项目
范例:
[root @test /root]# ntsysv <== 目前的 run-level 下的设定
[root @test /root]# ntsysv --level 5 <== 不同 run-level 下的设定修改
说明:
这 支工具蛮有意思的!他可以设定开机时后启动的项目呢!就是在 setup 里头的 System Services 那个设定的地方!比较不一样的地方在于,这个单独的程序还可以执行非目前 run-level 的启动项目。如果您回到前面提到的『开机流程』的地方,那么就会发现在启动的项目方面,需要取得 inittab 之后,才能在各个 /etc/rc.d/rc#.d 里头执行各不同的 scripts ,其中常用的 run-level 是 3 及 5 (文字与图形!)。那么 ntsysv 就可以依据:
/etc/xinetd.d
/etc/rc.d/init.d
这两个数据夹内的 scripts ,然后配合 /etc/rc.d/rc#.d 里头的 scripts 来进行连结档的设定!
service
[root @test /root]# service [service name] [start|stop|restart]
参数说明:
service name :这个服务名称必须要实际存在 /etc/rc.d/init.d 这个目录下才行
start|stop.. :基本上,这个与 /etc/rc.d/init.d/service_name 所允许的启动形式有关!
范例:
[root @test /root]# service xinetd restart <==重新启动 xinetd
[root @test /root]# service sendmail start <==启动 sendmail 这个服务!
说明:
这 个程序就更简单了!基本上他只是一支 script 而已!他会将 /etc/init.d (其实就是 /etc/rc.d/init.d )的东西取出来,然后进行分析啦!例如上面的例子中,[ service xinetd restart ] = [ /etc/rc.d/init.d/xinetd restart ]这两个是完全相同的东西呦!只是 service 把他更简化了而已!除此之外,在 ntsysv 与底下接着要说明的 chkconfig 都是『等到下次开机的时候再启动』的方式,那么有没有办法立刻启动呢?呵呵!那就是 service 的工作啦! service 可以直接将该服务启动呦!
chkconfig
[root @test /root]# chkconfig [--level levels] [--list|add|del] [service name]
参数说明:
--level :同样的说明了可以设定不同的 run-level 的咚咚!
--list :列出 run-level 情况下的该套件名称是否有被开机启动?!
--add :增加一个 service_name 在开机的时候启动;
--del :删除一个开机启动的服务!
service name :这个服务名称必须要实际存在 /etc/rc.d/init.d 这个目录下才行
范例:
[root @test /root]# chkconfig --list sendmail <==列出 sendmail 的启动!
sendmail 0:off 1:off 2:on 3:on 4:on 5:on 6:off
上面说明, sendmail 在 run-level 0, 1, 6 的时候是 off ,而在 2,3,4,5 是 On 的情况!
[root @test /root]# chkconfig <==列出系统所拥有的执行服务,并且列出是否开机启动?
keytable 0:off 1:on 2:on 3:on 4:on 5:on 6:off
atd 0:off 1:off 2:off 3:on 4:on 5:on 6:off
kdcrotate 0:off 1:off 2:off 3:off 4:off 5:off 6:off
syslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off
gpm 0:off 1:off 2:on 3:off 4:on 5:on 6:off
kudzu 0:off 1:off 2:off 3:off 4:on 5:on 6:off
sendmail 0:off 1:off 2:on 3:on 4:on 5:on 6:off
netfs 0:off 1:off 2:off 3:off 4:on 5:on 6:off
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
random 0:off 1:off 2:on 3:on 4:on 5:on 6:off
rawdevices 0:off 1:off 2:off 3:off 4:on 5:on 6:off
apmd 0:off 1:off 2:on 3:off 4:on 5:on 6:off
ipchains 0:off 1:off 2:on 3:off 4:on 5:on 6:off
iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off
crond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
anacron 0:off 1:off 2:on 3:off 4:on 5:on 6:off
xinetd based services:
chargen-udp: off
chargen: off
daytime-udp: off
daytime: off
echo-udp: off
echo: off
time-udp: off
[root @test /root]# chkconfig --add gpm <==增加 gpm 这个咚咚在开机的时候启动!
说明:
chkconfig 这个程序可以将 /etc/rc.d/init.d/ 里面的可执行服务与 /etc/xinetd.d 里面的相关可执行的服务,连结到目前的 run-level 里头去,或者是您可以定义你的 run-level 让你的该项服务在开机的时候就给他启动?不过请注意呦! service 是马上让你的该项服务立刻启动,但是 chkconfig 则仅是设定某个服务在开机得时候可以被启动,并不一样,请注意!
init
[root @test /root]# init [0-6]
参数说明:
范例:
[root @test /root]# init 5 <==转为图形接口登入!
说明:
说完了 /etc/rc.d/rc[0-6].d 与 /etc/rc.d/init.d 的执行序之后,呵呵!如何切换呢?是否一定要修改 inittab 这个档案?!其实不需要,直接使用 init 这支程序就行了!