免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: hui1983106
打印 上一主题 下一主题

service和chkconfig启动服务有什么区别吗? [复制链接]

论坛徽章:
0
11 [报告]
发表于 2006-11-02 16:48 |只看该作者
原帖由 beyondfly 于 2006-11-2 16:43 发表
那些shell脚本不是全部都注释了吗,还有什么作用啊????


那些 # 都是给你阅读外,也是给 chkconfig 阅读使用的叙述。

--

论坛徽章:
0
12 [报告]
发表于 2006-11-02 17:08 |只看该作者
对啊。我还是没有搞明白

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
13 [报告]
发表于 2006-11-03 02:43 |只看该作者
這是個好問題!

據我所知 service 只有在 RH/FC 系列才有,說穿了也沒啥,就是將 /etc/init.d 底下的 script 跑一下而已。
如果你要 service xxx start,但在別的系統找不到,那就 /etc/init.d/xxx start ,效果是一樣的。
所以, service 命令只是讓 daemon script 馬上執行。

而 chkconfig,則是將 /etc/init.d 裡的 script 做 link 到不同的 runlevel 去。
如果你找不到 chkconfig, 那自己手工跑 ln -s 也行。(SuSE 也可用 chkconfig 或 insserv)
反正呢, link 過去要用 S 或 K,還有用甚麼數字,可以自己決定。
但用 chkconfig 的話, level, S/K, number 這些數據都在 script 裡定義好了,也就是 kenduest 前面貼的部份內容。
如果你要手工寫一個 chkconfig 可用的 script,只要有如下兩行就夠了:
# chkconfig: 2345 90 60
# description:
其中的 # description: 後面可以空著。
而 2345 90 60 是說:
1) 在 2345 這些 runlevel 作 start(S),其餘用 stop(K)。
2) S 的號碼是 90,而 K 的號碼是 60
不過, 以上僅適用 RH/FC 系列的 linux,其他版本(如 SuSE)還需要更多的 infomation。
倘若是 SuSE , 可以參考 ls /etc/init.d/skeleton 以了解其格式要求。

有空的話,看一下 /etc/init.d/rc 這個 script,那麼更有幫助理解各 runlevel 如何處理那些 S 跟 K 的 script。
假如再行有餘力, 那就將 /etc/inittab 裡面所提到的 script 都挖來看看,則更是值得鼓勵的行為。

论坛徽章:
0
14 [报告]
发表于 2006-11-03 12:32 |只看该作者
原帖由 网中人 于 2006-11-3 02:43 发表
这是个好问题!
据我所知 service 只有在 RH/FC 系列才有,说穿了也没啥,就是将 /etc/init.d 底下的 script 跑一下而已。
如果你要 service xxx start,但在别的系统找不到,那就 /etc/init.d/xxx start ,效 ...


我补充一下,其实 chkconfig 目前读取的 /etc/init.d/ 内的文档写法已经有详细规定的....

以前写法一般是:


  1. # chkconfig: 2345 90 60
  2. # description: cron is a standard UNIX program that runs user-specified \
  3. #              programs at periodic scheduled times. vixie cron adds a \
  4. #              number of features to the basic UNIX cron, including better \
  5. #              security and more powerful configuration options.
复制代码


但是新式的 chkconfig 不看这些栏位了,而是看:


  1. ### BEGIN INIT INFO
  2. # Provides: crond
  3. # Required-Start: $syslog
  4. # Required-Stop: $syslog
  5. # Default-Start: 2 3 4 5
  6. # Short-Description: The cron clock daemon
  7. # Description: cron is a standard UNIX program that runs user-specified
  8. #              programs at periodic scheduled times. vixie cron adds a
  9. #              number of features to the basic UNIX cron, including better
  10. #              security and more powerful configuration options.
  11. ### END INIT INFO
复制代码


其中最少得有 Default-Start 与 Description 这两个项目。

后者会有这些调整,都是因为 LSB 的标准所制定。详细部份请阅读:

http://refspecs.freestandards.org/LSB_2.0.1/LSB-Core/LSB-Core/initscrcomconv.html

所以一般 linux distro 有机会会看到各自这两种写法,或者是两种写法都会同时使用。

suse linux 是比较早就先纳入这些标准使用,而 rh/fedora 等其实目前的版本也已经纳入这些标准。

--

论坛徽章:
0
15 [报告]
发表于 2006-11-03 13:05 |只看该作者
好贴!顶一个!

论坛徽章:
0
16 [报告]
发表于 2006-11-03 13:26 |只看该作者
原帖由 kenduest 于 2006-11-3 12:32 发表


我补充一下,其实 chkconfig 目前读取的 /etc/init.d/ 内的文档写法已经有详细规定的....

以前写法一般是:

[code]
# chkconfig: 2345 90 60
# description: cron is a standard UNIX program that ru ...



感谢,原来是遵循LSB了,怪不得RH上看到这些东西,当初还感觉奇怪呢。

论坛徽章:
0
17 [报告]
发表于 2010-08-07 21:31 |只看该作者
[img]service xfs start
chkconfig xfs on
为什么写了第一句后,还要写第二句呀????急求
[/img]

论坛徽章:
0
18 [报告]
发表于 2010-08-18 10:37 |只看该作者
chkconfig --list看看就知道了

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
19 [报告]
发表于 2010-08-18 12:40 |只看该作者
chkconfig是配置服务启动的,而service 是用来启停服务的。这两个是不同的概念。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP