BSD rc.d½Å±¾±à³Ìʵս

Yar Tikhiy

$FreeBSD: doc/zh_CN.GB2312/articles/rc-scripting/article.sgml,v 1.5 2012/01/15 08:35:00 dougb Exp $

¡¡¡¡³õѧÕß¿ÉÄܻᷢÏÖ£¬ÄÑÒÔͨ¹ýÕýʽµÄÎĵµ£¬ »ùÓÚ BSD µÄ rc.d ¿ò¼Ü£¬±àдһЩʵ¼ÊÈÎÎñµÄ rc.d ½Å±¾¡£ ±¾ÎÄÖУ¬ÎÒÃDzÉÓÃÁËһЩ¸´ÔÓÐÔ²»¶ÏÔö¼ÓµÄµäÐͰ¸Àý£¬ À´Õ¹Ê¾ÊʺÏÿ¸ö°¸ÀýµÄ rc.d ÌØÐÔ£¬ ²¢Ì½ÌÖÆäÖеŤ×÷Ô­Àí¡£ ÕâÑùµÄʵÑéΪ´ó¼Ò½øÒ»²½Ñо¿Éè¼ÆÓÐЧµÄ rc.d Ó¦ÓóÌÐòÌṩÁËһЩ²Î¿¼µã¡£


Ŀ¼
1 ¼ò½é
2 ÈÎÎñÃèÊö
3 ÐéÄâµÄ½Å±¾
4 ¿ÉÅäÖõÄÐéÄâ½Å±¾
5 Æô¶¯²¢Í£Ö¹¼òµ¥ÊØ»¤½ø³Ì
6 Æô¶¯²¢Í£Ö¹¸ß¼¶ÊØ»¤½ø³Ì
7 Á´½Ó½Å±¾µ½ rc.d ¿ò¼Ü
8 ¸øÓè rc.d ½Å±¾¸ü¶àµÄÁé»îÐÔ
9 ½øÒ»²½ÔĶÁ

1 ¼ò½é

¡¡¡¡ÀúÊ·ÉÏ BSD ÔøÓйýÒ»¸öµ¥Ò»µÄÆô¶¯½Å±¾£¬ /etc/rc¡£ ¸Ã½Å±¾ÔÚϵͳÆô¶¯µÄʱºò±» init(8) ³ÌÐòËùÒýµ¼£¬²¢Ö´ÐÐËùÓжàÓû§²Ù×÷ËùÐèÇóµÄÓû§¼¶ÈÎÎñ£º ¼ì²é²¢¹ÒÔØÎļþϵͳ£¬ÉèÖÃÍøÂ磬Æô¶¯ÊØ»¤½ø³Ì£¬µÈµÈ¡£ ÔÚÿ¸öϵͳÖÐʵ¼ÊµÄÈÎÎñÇåµ¥Ò²²¢²»Ïàͬ£» ¹ÜÀíÔ±ÐèÒª¸ù¾ÝÐèÇó×Ô¶¨ÒåÕâÑùµÄÈÎÎñÇåµ¥¡£ÔÚÒ»Ð©ÌØÊâµÄÇé¿öÖУ¬ »¹²»µÃ²»È¥ÐÞ¸Ä /etc/rc Îļþ£¬ Ò»Ð©ÕæÕýµÄºÚ¿ÍÀִ˲»Æ£¡£

¡¡¡¡µ¥Ò»½Å±¾Æô¶¯·½·¨µÄÕæÕýÎÊÌâÊÇËüûÓÐÌṩ¶Ô´Ó /etc/rc Æô¶¯µÄµ¥¸ö×é¼þµÄ¿ØÖÆ¡£ ÄÃÒ»¸öÀý×ÓÀ´Ëµ°É£¬/etc/rc ²»Äܹ»ÖØÐÂÆô¶¯Ä³¸öµ¥¶ÀµÄÊØ»¤½ø³Ì¡£ ϵͳ¹ÜÀíÔ±²»µÃ²»ÊÖ¶¯ÕÒ³öÊØ»¤½ø³Ì£¬²¢É±µôËü£¬ µÈ´ýËüÕæÕýÍ˳öºó£¬ÔÙͨ¹ýä¯ÀÀ /etc/rc µÃµ½¸ÃÊØ»¤½ø³ÌµÄ±êʶ£¬×îÖÕÊäÈëÈ«²¿ÃüÁîÀ´ÔÙ´ÎÆô¶¯ÊØ»¤½ø³Ì¡£ Èç¹ûÖØÐÂÆô¶¯µÄ·þÎñ°üÀ¨²»Ö¹Ò»¸öÊØ»¤½ø³Ì»òÐèÒª¸ü¶à¶¯×÷µÄ»°£¬ ¸ÃÈÎÎñ½«±äµÃ¸ü¼ÓÀ§ÄÑÒÔ¼°ÈÝÒ׳ö´í¡£¼ò¶øÑÔÖ®£¬ µ¥Ò»½Å±¾ÔÚʵÏÖÎÒÃÇÕâÑùµÄÄ¿µÄÉÏÊDz»³É¹¦µÄ£º ÈÃϵͳ¹ÜÀíÔ±µÄÉú»î¸üÇáËÉ¡£

¡¡¡¡ÔÙºóÀ´£¬ÎªÁ˽«×îÖØÒªµÄһЩ×Óϵͳ¶ÀÁ¢³öÀ´£¬ ±ã³¢ÊÔ½«²¿·ÖµÄÄÚÈÝ´Ó /etc/rc ·ÖÀë³öÀ´ÁË¡£ ×î¹ãΪÈËÖªµÄÀý×Ó¾ÍÊÇÓÃÀ´Æô¶¯ÁªÍøµÄ /etc/netstart Îļþ¡£ËüÈÝÐí´Óµ¥Óû§Ä£Ê½·ÃÎÊÍøÂ磬 µ«ÓÉÓÚËüµÄ²¿·Ö´úÂëÐèÒªºÍһЩÓëÁªÍøÍêÈ«Î޹ص͝×÷½»»¥£¬ ËùÒÔËü²¢Ã»ÓÐÍêÃÀµØ½áºÏµ½×ÔÆô¶¯µÄ½ø³ÌÖС£ÄDZãÊÇΪºÎ /etc/netstart ±»Ñݱä³É /etc/rc.network µÄÔ­ÒòÁË¡£ ºóÕß²»ÔÙÊÇÒ»¸öÆÕͨµÄ½Å±¾£»Ëü°üÀ¨ÁËÅÓ´óµÄ£¬ÓÉ /etc/rc ÔÚ²»Í¬µÄϵͳÆô¶¯¼¶±ðÖе÷ÓõÄÁèÂÒµÄ sh(1) º¯Êý¡£È»¶ø£¬µ±Æô¶¯ÈÎÎñ±äµÃ¶àÑù»¯ÒÔ¼°¾Ã¾­¸ü¸Ä£¬ ¡°ÀàÄ£¿é»¯¡± ·½·¨±äµÃ±ÈÔø¾­µÄÕûÌå /etc/rc ¸ü»ºÂý·ÑÊ¡£

¡¡¡¡ÓÉÓÚûÓÐÒ»¸ö¸É¾»ºÍÒ×ÓÚÉè¼ÆµÄ¿ò¼Ü£¬ Æô¶¯½Å±¾²»µÃ²»È«Á¦¸ü¸ÄÒÔÂú×ã·ÉËÙ¿ª·¢ÖлùÓÚ BSD µÄ²Ù×÷ϵͳµÄÐèÇó¡£ ËüÖð½¥±äµÃÃ÷Àʲ¢¾­¹ýÐí¶à±ØÒªµÄ²½Öè×îÖÕ±ä³ÉÒ»¸ö¾ßÓÐϸÃÜÐÔºÍÀ©Õ¹Ð﵀ rc ϵͳ¡£BSD rc.d ¾ÍÕâÑùµ®ÉúÁË¡£Luke Mewburn ºÍ NetBSD ÉçÇøÊǹ«È쵀 rc.d Ö®¸¸¡£ÔÙÖ®ºóËü±»ÒýÈëµ½ÁË FreeBSD ÖС£ ËüµÄÃû×ÖÒýÓÃΪϵͳµ¥¶ÀµÄ·þÎñ½Å±¾µÄλÖã¬Ò²¾ÍÊÇ /etc/rc.dÏÂÃæµÄÄÇЩ½Å±¾¡£ Ö®ºóÎÒÃǽ«Ñ§Ï°µ½¸ü¶àµÄ rc.d ϵͳµÄ×é¼þ²¢¿´¿´µ¥¸ö½Å±¾ÊÇÈçºÎ±»µ÷Óõġ£

¡¡¡¡BSD rc.d ±³ºóµÄ»ù±¾ÀíÄîÊÇ Á¼ºÃ µÄÄ£¿é»¯ºÍ´úÂëÖØÓÃÐÔ¡£ Á¼ºÃ µÄÄ£¿é»¯Òâζ×Åÿ¸ö»ù±¾ ¡°·þÎñ¡± ¾ÍÏóÏµÍ³ÊØ»¤½ø³Ì»òԭʼÆô¶¯ÈÎÎñÄÇÑù£¬ ͨ¹ýÊôÓÚËüÃÇµÄ¿ÉÆô¶¯¸Ã·þÎñµÄ sh(1) ½Å±¾£¬À´Í£Ö¹·þÎñ£¬ ÖØÔØ·þÎñ£¬¼ì²é·þÎñµÄ״̬¡£¾ßÌ嶯×÷Óɽű¾µÄÃüÁîÐвÎÊýËù¾ö¶¨¡£ /etc/rc ½Å±¾ÈÔÈ»ÕÆ¹Ü×ÅϵͳµÄÆô¶¯£¬ µ«ÏÖÔÚËü½ö½öÊÇʹÓà start ²ÎÊýÀ´Ò»¸ö¸öµ÷ÓÃÄÇЩСµÄ½Å±¾¡£ Õâ±ãÓÚÓà stop À´¶ÔÔËÐÐÖеÄͬÑùµÄ½Å±¾ºÜºÃµØÖ´ÐÐÍ£Ö¹ÈÎÎñ£¬ ÕâÊDZ» /etc/rc.shutdown ½Å±¾ËùÍê³ÉµÄ¡£¿´£¬ÕâÊǶàôºÃµØÌåÏÖÁË Unix µÄÕÜѧ£º ÓµÓÐÒ»×éСµÄרÓõŤ¾ß£¬Ã¿¸ö¹¤¾ß¾¡¿ÉÄܺõØÍê³É×Ô¼ºµÄÈÎÎñ¡£ ´úÂëÖØÓà Òâζ×ÅËùÓеÄͨÓòÙ×÷ÓÉ /etc/rc.subr ÖеÄһЩ sh(1) º¯ÊýËùʵÏÖ¡£ ÏÖÔÚÒ»¸öµäÐ͵Ľű¾Ö»ÐèÒªÁÈÁȼ¸ÐÐµÄ sh(1) ´úÂë¡£×îÖÕ£¬ rcorder(8) ³ÉΪÁË rc.d ¿ò¼ÜÖÐÖØÒªµÄÒ»²¿·Ö£¬ ËüÓÃÀ´°ïÖú /etc/rc ´¦ÀíС½Å±¾Ö®¼äµÄÒÀÀµ¹ØÏµ²¢ÓдÎÐòµØÔËÐÐËüÃÇ¡£ËüͬÑù°ïÖú /etc/rc.shutdown ×öÀàËÆµÄÊÂÇ飬 ÒòΪÕýÈ·µÄ¹Ø±Õ´ÎÐòÊÇÏà¶ÔÓÚÆô¶¯µÄ´ÎÐòµÄ¡£

¡¡¡¡BSD rc.d µÄÉè¼ÆÔÚ Luke Mewburn µÄÔ­ÎÄ ÖÐÓмǼ£¬ ÒÔ¼° rc.d ×é¼þÒ²±»³ä·ÖÏêϸµØ¼Ç¼ÔÚ¸÷×﵀ Áª»úÊÖ²á ÖС£È»¶ø£¬ Ëü¿ÉÄÜûÄÜÇåÎúÕ¹ÏÖ¸øÒ»¸ö rc.d ÐÂÊÖ£¬ÈçºÎ½«ÎÞÊýµÄ¿éºÍƬ½øÐйØÁªÀ´Îª¾ßÌåµÄÈÎÎñ´´½¨Ò»¸öºÃ·ç¸ñµÄ½Å±¾¡£ Òò´Ë±¾ÎĽ«ÊÔ×ÅÒÔ²»Í¬µÄ·½Ê½À´½²Êö rc.d¡£ Ëü½«Õ¹Ê¾ÔÚijЩµäÐÍÇé¿öÖÐÓ¦¸ÃʹÓÃÄÄÐ©ÌØÐÔ£¬²¢²ûÊöÁËΪºÎÈç´Ë¡£ ×¢ÒâÕâ²¢²»ÊÇһƪ how-to Îĵµ£¬ÎÒÃǵÄÄ¿µÄ²»ÊǸø³öÏֳɵÄÅä·½£¬ ¶øÊÇÔÚչʾһЩ¼òµ¥µÄ½øÈë rc.d µÄ·¶Î§µÄÃÅ·¡£ ±¾ÎÄÒ²²»ÊÇÏà¹ØÁª»úÊÖ²áµÄÌæ´úÆ·¡£ ÔĶÁ±¾ÎÄʱ¼ÇµÃͬʱ²Î¿¼Áª»úÊÖ²áÒÔ»ñÈ¡¸üÍêÕûÕý¹æµÄÎĵµ¡£

¡¡¡¡Àí½â±¾ÎÄÐèҪһЩÏȾöÌõ¼þ¡£Ê×ÏÈ£¬ÄãÐèÒªÊìϤ sh(1) ½Å±¾±à³ÌÓïÑÔÒÔÕÆÎÕ rc.d£¬ »¹ÓУ¬ÄãÐèÒªÖªµÀϵͳÊÇÈçºÎÖ´ÐÐÓû§¼¶µÄÆô¶¯ºÍÍ£Ö¹ÈÎÎñ£¬ÕâЩÔÚ rc(8) Öж¼ÓÐ˵Ã÷¡£

¡¡¡¡±¾ÎĹØ×¢µÄÊÇ rc.d µÄ FreeBSD ·ÖÖ§¡£ ²»¹ý£¬Ëü¿ÉÄÜ¶Ô NetBSD µÄ¿ª·¢ÕßҲͬÑùÓÐÓã¬ÒòΪ BSD rc.d µÄÁ½¸ö·ÖÖ§²»Ö»Êǹ²ÏíÁËͬÑùµÄÉè¼Æ£¬ »¹±£ÁôÁ˶Խű¾±àдÕß¶¼¿É¼ûµÄÀàËÆ¹Ûµã¡£

±¾ÎĵµºÍÆäËüÎĵµ¿É´ÓÕâÀïÏÂÔØ£ºftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Èç¹û¶ÔÓÚFreeBSDÓÐÎÊÌ⣬ÇëÏÈÔĶÁÎĵµ£¬Èç²»Äܽâ¾öÔÙÁªÏµ<questions@FreeBSD.org>.
¹ØÓÚ±¾ÎĵµµÄÎÊÌâÇë·¢ÐÅÁªÏµ <doc@FreeBSD.org>.