免费注册 查看新帖 |

Chinaunix

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

急:linux下/etc下有数个rc目录,这些目录是做什么用的? [复制链接]

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
1 [报告]
发表于 2007-01-31 10:53 |显示全部楼层
  系统启动文件和脚本
  主启动控制文件 /etc/inittab
  SysV启动脚本的位置 /etc/init.d、/etc/rc.d/init.d或/etc/rc.d
  SysV启动脚本链接的位置 /etc/init.d/rc?.d、/etc/rc.d/rc?.d或/etc/rc?.d
  本地启动脚本 /etc/rc.d/rc.local、/etc/init.d/boot.local或/etc/rc.boot里的文件

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
2 [报告]
发表于 2007-01-31 10:54 |显示全部楼层
另转载:
Linux的基本文件说明
作者:noangel 日期:2006-10-08
字体大小: 小 中 大  
启动引导程序配置文件
  LILO /etc/lilo.conf
  GRUB /boot/grub/menu.lst
  
  系统启动文件核脚本
  主启动控制文件 /etc/inittab
  SysV启动脚本的位置 /etc/init.d、/etc/rc.d/init.d或/etc/rc.d
  SysV启动脚本链接的位置 /etc/init.d/rc?.d、/etc/rc.d/rc?.d或/etc/rc?.d
  本地启动脚本 /etc/rc.d/rc.local、/etc/init.d/boot.local或/etc/rc.boot里的文件
  
  网络配置文件
  建立网络接口的脚本 /sbin/ifup
  保存网络配置数据文件的目录 /etc/network、/etc/sysconfig/network和/etc/sysconfig/network-scripts
  保存解析DNS服务的文件 /etc/resolv.conf
  DHCP客户端的配置文件 /etc/dhclient.conf
  
  超级服务程序配置文件和目录
  inetd配置文件 /etc/inetd.conf
  TCP Wrappers配置文件 /etc/hosts.allow和/etc/hosts.deny
  xinetd配置文件 /etc/xinetd.conf和/etc/xinetd.d目录里的文件
  
  硬件配置
  内核模块配置文件 /etc/modules.conf
  
  硬件访问文件
  Linux设备文件 /dev目录里
  保存硬件和驱动程序数据的文件 /proc目录里
  
  扫描仪配置文件
  SANE主配置 /etc/sane.d/dll.conf
  特定扫描仪的配置文件 /etc/sane.d目录里以扫描仪型号命名的文件
  
  打印机配置文件
  BSD LPD核LPRng的本地打印机主配置文件 /etc/printcap
  CUPS本地打印机主配置和远程访问受权文件 /etc/cups/cupsd.conf
  BSD LPD远程访问受权文件 /etc/hosts.lpd
  LPRng远程访问受权文件 /etc/lpd.perms
  
  文件系统
  文件系统表 /etc/fstab
  软驱装配点 /floppy、/mnt/floppy或/media/floppy
  光驱装配点 /cdrom、/mnt/cdrom或/media/cdrom
  
  shell配置文件
  bash系统非登录配置文件 /etc/bashrc、/etc/bash.bashrc或/etc/bash.bashrc.local
  bash系统登录文件 /etc/profile和/etc/profile.d里的文件
  bash用户非登录配置文件 ~/.bashrc
  bash用户登录配置文件 ~/.profile
  
  XFree86配置文件核目录
  XFree86主配置文件 /etc/XF86config、/etc/X11/XF86Config或/etc/X11/XF86Config-4
  字体服务程序配置文件 /etc/X11/fs/config
  Xft 1.x配置文件 /etcX11/XftConfig
  Xft 2.0配置文件 /etc/fonts/fonts.conf
  字体目录 /usr/X11R6/lib/X11/fonts和/usr/share/fonts
  
  Web服务程序配置文件
  Apache主配置文件 /etc/apache、/etc/httpd或/httpd/conf里的httpd.conf或httpd2.conf文件
  MIME类型文件 与Apache主配置文件在同一目录里的mime.types或apache-mime.types
  
  文件服务程序配置文件
  ProFTPd配置文件 /etc/proftpd.conf
  vsftpd配置文件 /etc/vsftpd.conf
  NFS服务程序的输出定义文件 /etc/exports
  NFS客户端装配的NFS输出 /etc/fstab
  Samba配置文件 /etc/samba/smb.conf
  Samba用户配置文件 /etc/samba/smbpasswd
  
  邮件服务程序配置文件
  sendmail主配置文件 /etc/mail/sendmail.cf
  sendmail源配置文件 /etc/mail/sendmail.mc或/usr/share/sendmail/cf/cf/linux.smtp.mc或其他文件
  Postfix主配置文件 /etc/postfix/main.cf
  Exim主配置文件 /etc/exim/exim.cf
  Procmail配置文件 /etc/procmailrc或~/.procmailrc
  Fetchmail配置文件 ~/.fetchmailrc
  
  远程登录配置文件
  SSH服务程序配置文件 /etc/ssh/sshd_config
  SSH客户端配置文件 /etc/ssh/ssh_config
  XDM配置文件 /etc/X11/xdm目录下
  GDM配置文件 /etc/X11/gdm目录下
  VNC服务程序配置文件 /usr/X11R6/bin/vncserver启动脚本和~/.vnc目录里的文件
  
  其他服务程序配置文件
  DHCP服务程序配置文件 /etc/dhcpd.conf
  BIND服务程序配置文件 /etc/named.conf和/var/named/
  NTP服务程序配置文件 /etc/ntp.conf

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
3 [报告]
发表于 2007-01-31 11:36 |显示全部楼层
原帖由 los 于 2007-1-31 11:27 发表于 6楼  
谢谢楼上诸位,我真实的目的是想将一个用户程序在系统启动时自动运行,比如运行一个名称为progm的程序,该怎么写脚本呢?脚本放在哪个rc下啊


1. 在/etc/rc.d/init.d/下新建 test_server,添加如下内容:

  1. #!/bin/sh
  2. # description: 启动测试服务
  3. # chkconfig: 345 99 88

  4. case "$1" in
  5. 'start')
  6.                 #启动指令
  7.            #你的程序的启动指令
  8.         touch /var/lock/subsys/你的服务名称
  9.         ;;
  10. 'stop')
  11.                 #关闭指令
  12.            #你的程序的关闭指令
  13.         rm -f /var/lock/subsys/你的服务名称
  14.         ;;
  15. *)
  16.         echo "Usage: $0 { start | stop }"
  17.         ;;
  18. esac
  19. exit 0
复制代码


2. 然后:
chmod 755 /etc/rc.d/init.d/test_server #设置执行权限
chkconfig --add test_server #添加服务
chkconfig test_server on #设置服务可用
service test_server start #启动服务
service test_server stop #关闭服务

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
4 [报告]
发表于 2007-01-31 11:54 |显示全部楼层
原帖由 los 于 2007-1-31 11:27 发表于 6楼  
谢谢楼上诸位,我真实的目的是想将一个用户程序在系统启动时自动运行,比如运行一个名称为progm的程序,该怎么写脚本呢?脚本放在哪个rc下啊


另:

简介:本文通过对chkconfig 的介绍,为Linux 系统管理员轻松管理 /etc/rc[0-6].d 目录下众多的符号连接提供了详细的说明。那些Linux “菜鸟” 也可以通过本文了解和认知Linux 系统的运行级的概念。



不像DOS 或者 Windows,Linux 可以有多种运行级。常见的就是多用户的2,3,4,5 ,很多人知道 5 是运行 X-Windows 的级别,而 0 就是关机了。运行级的改变可以通过 init 命令来切换。例如,假设你要维护系统进入单用户状态,那么,可以使用 init 1 来切换。在Linux 的运行级的切换过程中,系统

会自动寻找对应运行级的目录/etc/rc[0-6].d下的K 和 S 开头的文件,按后面的数字顺序,执行这些脚本。对这些脚本的维护,是很繁琐的一件事情,Linux 提供了chkconfig 命令用来更新和查询不同运行级上的系统服务。


语法为:


chkconfig --list [name]

chkconfig --add name

chkconfig --del name

chkconfig [--level levels] name

chkconfig [--level levels] name



chkconfig 有五项功能:添加服务,删除服务,列表服务,改变启动信息以及检查特定服务的启动状态。


chkconfig 没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务

是否在当前运行级启动。如果是,返回 true,否则返回 false。 --level 选项可以指定要查看的运行级而不一定是当前运行级。


如果在服务名后面指定了on,off 或者 reset,那么 chkconfig 会改变指定服务的启动信息。on 和 off 分别指服务在改变运行级时的启动和停止。reset 指初始化服务信息,无论有问题的初始化脚本指定了什么。


对于 on 和 off 开关,系统默认只对运行级 3,4, 5有效,但是 reset 可以对所有运行级有效。指定 --level 选项时,可以选择特定的运行级。


需要说明的是,对于每个运行级,只能有一个启动脚本或者停止脚本。当切换运行级时,init 不会重新启动已经启动的服务,也不会再次去停止已经停止的服务。



选项介绍:


--level levels


指定运行级,由数字 0 到 7 构成的字符串,如:


--level 35 表示指定运行级3 和5。


--add name


这个选项增加一项新的服务,chkconfig 确保每个运行级有一项

启动(S) 或者 杀死(K) 入口。如有缺少,则会从缺省的init

脚本自动建立。


--del name


用来删除服务,并把相关符号连接从 /etc/rc[0-6].d 删除。


--list name


列表,如果指定了name 那么只是显示指定的服务名,否则,列出

全部服务在不同运行级的状态。



运行级文件


每个被chkconfig 管理的服务需要在对应的init.d 下的脚本加上两行或者更多行的注释。

第一行告诉 chkconfig 缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。

第二行对服务进行描述,可以用\ 跨行注释。


例如,random.init 包含三行:

# chkconfig: 2345 20 80

# description: Saves and restores system entropy pool for \

# higher quality random number generation.


表明 random 脚本应该在运行级 2, 3, 4, 5 启动,启动优先权为20,停止优先权为 80。

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
5 [报告]
发表于 2007-01-31 14:21 |显示全部楼层
按照7楼的做法:
chmod 755 /etc/rc.d/init.d/test_server #设置执行权限,这个是通用的
chkconfig --add test_server #添加服务,这个是通用的
chkconfig test_server on #设置服务可用,这个是通用的
service test_server start #启动服务,这个是通用的
service test_server stop #关闭服务,这个是通用的
你无须考虑其他的事情。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP