å°ãæŽç·Žãããå€èŠ³ã§ãã€ãã³ãã®å¹Žè¡šãæäŸããŸããã·ã¹ãã 管çè ãã©ã®ããã«æ©èœãããã誰ããèå³ãæã£ãŠãããããšãé¡ã£ãŠããŸãã
èæ¯
![](https://habrastorage.org/getpro/habr/post_images/7d2/abf/042/7d2abf0425fef0fa914b293d9365660e.jpg)
ããŒã«ã¯/ etc / fstabã«ç»é²ãããrc.localã§å¿ èŠãªãã¹ããéå§ãããŸããã ãã¹ãŠãå®äºããããã«æããŸãã
...ãããŠãç§ã¯ãã¹ãã£ãã¯ã«åºäŒããŸããã ã¢ããªã±ãŒã·ã§ã³ã¯5åèµ·åãããæ²ãã£ãã¢ããªã±ãŒã·ã§ã³ãã®ããŒãžã§ã³ã¯ã»ãšãã©ããã«ããŒã¯ãããŸãã-åæ§ã«ãä»ã®å®è¡å¯èœãã¡ã€ã«ã¯æã èµ·åããŸããã§ããã ãŸãã/ optã§ã ä»ã®ãã£ã¬ã¯ããªããæ£åžžã«åäœããŸããã åæã«ãrc.localãæã§èµ·åããŸã-100ïŒ ãã¹ãŠãåé¡ãããŸããã èµ·åæã«ã5åã®ãã¡ãæ£åžžã«èµ·åã§ããŸãã
æåã¯ããã®åé¡ãæ·±å»ãªåé¡ãšã¯æãããç°¡åã«è§£æ±ºããããšããŸããã åé¡ã¯/ optã«ã®ã¿çŸãããããã³ãã³ãls -a1 / opt> / var / log / lsãrc.localã«è¿œå ããŸããã äºæ³ã©ãããrc.localã®å®è¡æã«/ optã«ã¯2ã€ã®ãã¡ã€ã«ïŒãã€ã³ããš2ã€ã®ãã€ã³ãïŒãããããŸããã§ããã ã€ãŸããNFSããŒã«ã¯ããŠã³ããããŠããŸããã æã ã ãããŠæã ããŠã³ããããŸããã
æããã«ãããã°ã€ã³ããåŸãæã ããŒã«ãããŠã³ããããŠããã®ãèŠããšããäºå®ã«ããããããããããŠã³ãããããæã«ã¯ããŠã³ããããŠããªãããšããç¶æ³ã¯ãããŒã«ãããŠã³ãããŠããrc.localãéå§ããéã®ç«¶åç¶æ ãæå³ããŸãã
決ãå§ãã
仮説ïŒDebian SqueezeïŒããã³ããã¯ãã¹ãŠã¹ã¯ã€ãŒãºïŒãinitã¹ã¯ãªããã®æ°ããäŸåã·ã¹ãã ã«åãæ¿ãããŸããã /etc/init.d/rc.localïŒ/etc/rc.localãåŒã³åºãinitã¹ã¯ãªããïŒã«$ mountnfsã«çŽæ¥äŸåããããšãæžããŸããïŒã€ãŸããmountnfsã®åŸã«ã¹ã¯ãªãããå®è¡ããå¿ èŠããããŸããïŒã
å©ããã ã°ãããå¶ç¶ã«ããã2åé£ç¶ããŠåèµ·åããããšãããããŸãã ãã®åŸããã¹ãŠããã®ãŸãŸç¶ããããŸãã-æã«ã¯æåããããé »ç¹ã«ã¯ããã§ã¯ãããŸããã§ããã
nfs-ballsãSã©ã³ã¬ãã«ã«ããŠã³ããããrc.localã2çªç®ã®runlelvelïŒã€ãŸããåŸã®SïŒã§èµ·åããããããé©ããŸããã
ç§è·¡è¡ls -a1 / opt >> / var / log / lsã/etc/init.d/rcã¹ã¯ãªããã«è¿œå ããŸãã-ãã®ã¹ã¯ãªããã¯/etc/init.dã®ä»ã®ãã¹ãŠã®ã¹ã¯ãªãããå®è¡ããŸãã æ£ç¢ºã«ã¯ããã£ã¬ã¯ããª/etc/rcS.dã/etc/rc2.dãªã©ãèªã¿åããæåã®æåïŒKãŸãã¯SïŒã«å¿ããŠãstopãŸãã¯startãã©ã¡ãŒã¿ãŒã䜿çšããŠããããã¹ã¯ãªãããéå§ããŸãã ãããã®ãã£ã¬ã¯ããªèªäœã«ã¯ãS10serviceãšåŒã°ãã/etc/init.då ã®ã¹ã¯ãªãããžã®ã·ã³ããªãã¯ãªã³ã¯ãå«ãŸããŠããŸãã SïŒãŸãã¯KïŒã¯éå§ïŒåŒ·å¶çµäºïŒã瀺ããæ°åã䜿çšãããšãã¹ã¯ãªããã®èµ·åé åºãåçåã§ããŸãã
ãã®ããã/ etc / init.d / rcã®æåŸã«ã次ã®lsãç»é²ããŸããã åèµ·åããŸããã ãã°ã«3ã»ããã®lsåºåãèŠã€ãããŸããïŒ1ã€ã¯ã·ã£ããããŠã³æã«å®è¡ããã2ã€ã¯éå§æã«å®è¡ãããŸãã-ãããã¯ã¬ãã«ãSãããã³ã2ãã§ãïŒã é©ããããšã«ãæåŸã®2ã€ã¯ç©ºã§ããã ã€ãŸããã©ã³ã¬ãã«2ã«åãæ¿ããããã®ã¹ã¯ãªãããçµäºããæç¹ã§ã¯ãããŒã«ã¯ãŸã ããŠã³ããããŠããŸããïŒ ã€ãŸããã¹ã¯ãªããã®äŸåé¢ä¿ã·ã¹ãã ãèµ·åé åºãªã©ã ã¯äœã®åœ¹å²ãæãããŸãã-ããŒãã®çµäºæã«ããŒã«ã¯ãããŸããã
/etc/init.d/rcã®ããŒãªã¬ã³ãåé€ããstop-bootlogdãšåŒã°ããæåŸã®ããŒãã¹ã¯ãªããã«åæ§ã®è¡ãè¿œå ããŸããïŒ/etc/init.d/rc2.dã«S99stop-bootlogdãšããååã§è¡šç€ºãããŸããã€ãŸããæåŸã«èµ·åããŸãã ïŒ
ãã¡ãããããŠã³ããŒãããåŸãç§ã¯ããããªãã£ã¬ã¯ããªãåŸãã ã«ã¿ãã°ãããŠã³ããããããšãããããšã念é ã«çœ®ããŠãããã¯ãããã競åç¶æ ã§ãããããlsã®åã«ã¯ã¬ã€ãžãŒã¹ãªãŒã360ãè¿œå ããŸããã
6åã®ãè¶ã飲ãã åŸããéåžžã«é ããããŠã³ããŒãã®æåŸã«ã«ã¿ãã°ããŸã ããŠã³ããããŠããããšãããããŸããã ãã®åŸãæéãççž®ãå§ããŸããïŒ60ã45ã30ã20ã10ã5ç§-ãã¡ã€ã«ã¯å®å®ããŠããŸããã ããã«ããã¡ã€ã«ã¯ã¹ãªãŒã1ã§ããããããŸããããåé€ããããšãã¯ã»ãšãã©ãããŸããã§ããã ïŒãã®æç¹ã§20ååèµ·åããŸããããä¿¡é Œã§ããçµæãåŸãããŸãã-10åã®10ã®ã¹ãªãŒã1ãããŠã³ãããããã£ã¬ã¯ããªãäžãã10åã®8ã®ã¹ãªãŒããªãã®ãªããŒãã空ã®ãã£ã¬ã¯ããªãäžããŸãããã€ãŸãã競åç¶æ ã¯éåžžã«èãã£ãã§ãã
ããã€ãã®ãã©ãŒã©ã ãubuntsïŒã¯ããäž»ã«nfsãrc.localãbootã®åéã§ããŸããŸãªããŒã¯ãŒããæ€çŽ¢ããã®ã«15åè²»ãããŸããïŒã§ããã®åé¡ãè°è«ãããŸããã rc.localãã¡ã€ã«èªäœïŒã
ãŸããŸãæ·±ã
ãã®ãããªäžæçãããã©ã°ã€ã³ããã·ã£ãŒãããã¯ãªæ¹æ³ã«ããå éšäžæºããªããã°ãããã§èœã¡çãããšãã§ããŸãã$ mountnfsäŸåé¢ä¿ãç»é²ãããšãã«ã/ etc / init.d / mountnfs.shãã¡ã€ã«ãéããããšãæãåºããŸããïŒProvidesè¡ã®å 容ãã³ããŒããããïŒã ãããŠèª¬æããããŸããïŒ
ïŒç°¡åãªèª¬æïŒãããã¯ãŒã¯ãã¡ã€ã«ã·ã¹ãã ãããŠã³ããããã®ãåŸ ã¡ãŸã ïŒèª¬æïŒãããã¯ãŒã¯ãã¡ã€ã«ã·ã¹ãã 㯠ïŒããã¯ã°ã©ãŠã³ãã§/etc/network/if-up.d/mountnfs ïŒã€ã³ã¿ãŒãã§ã€ã¹ãèµ·åããããšãã ãã®ã¹ã¯ãªããã¯åŸ 〠ïŒç¶è¡ããåã«ããããããŠã³ãããŸãã
ãã®çã説æã§ç§ã«ãšã£ãŠå€ãã®éèŠãªçºèŠããããŸããïŒ
1ïŒNFSã¯ããã¯ã°ã©ãŠã³ãã§ãéåæã«ãã€ãŸãã¡ã€ã³ããŒããšäžŠè¡ããŠããŠã³ããããŸãã ã€ãŸããNFSããŠã³ãããã»ã¹ãšããŒãããã»ã¹ã®éã§ç«¶åç¶æ ãçºçããŸãã
2ïŒãã®ã¹ã¯ãªããã¯ãå®è¡æã«ãã¹ãŠã®NFSããŒã«ãããŠã³ãããå¿ èŠããããŸãïŒãSãã©ã³ã¬ãã«ã®çµããè¿ãã«åŒã³åºãããŸããïŒã ãããŠåœŒã¯ããŸããã
次ã«ãmount.nfsããã¥ã¢ã«ã«ç®ãåãããšã次ã®ããã«æžãããŠããŸã-bgãªãã·ã§ã³ã¯ããã¯ã°ã©ãŠã³ãã§ããŠã³ãããŸãïŒç§ãç¥ãéãããã®æ©èœã¯squeezeã«ç»å ŽããŸãããlennyããã¥ã¢ã«ã«ã¯äœãèšèŒãããŠããªãããïŒãåæã¢ãŒãã
æãããªè§£æ±ºçã¯ãfgã/ etc / fstabã®NFSããŠã³ããªãã·ã§ã³ã®ãªã¹ãã«è¿œå ããããšã§ãã ãã³ãŽïŒ åèµ·å...ãããã ããŸããããŸããã§ããã
ãã®ç¬éãç§ã¯ãã¹ãŠãéããç¡ç 5ãå®ããå ¥æµŽããªãããã«ããŸãããæéãçå€äžã«ãªããããããªåé¡ãçªç¶ãã»ãŒç§åŠçãªç 究ã«ãªããŸããã ããããã¹ããŒããžã®é¢å¿ã¯äŸç¶ãšããŠæ ¹åŒ·ãæ®ã£ãŠããŸãã
ãã€ã³ãããããèŠãŠïŒãã®æç¹ã§ãã§ã«åé¡ããåé¡ããšããŠèªèããæ··oticãšããã¡ã¢ãããã€ã³ããããã«åãæ¿ããŠããŸããïŒãmountnfs.shã®èª¬æã«ç®ãåãããmount by /etc/network/if-up.d/mountnfsããšãããã¬ãŒãºã«æ³šç®ããŸãããã
ãã®ã¹ã¯ãªããã«å ¥ããŸããã
ããããªã³ã¡ã³ãããããŸããïŒ
ïŒãyes =ãã®ä»£ããã«ãnoïŒ=ãã䜿çšããŠãéåænfsã®ããŠã³ãã確å®ã«è¡ãããããã«ãã ïŒ/ etc / default / rcSã«å€ããªããŠãããã©ã«ã
ãã¡ã€ã«/ etc / default / rcSããããŸããïŒ ïŒdebianã§ã¯ãinit.dã®ã¹ã¯ãªããèšå®ã¯/ etc / defaultã«ä¿åãããŸãããã©ã³ã¬ãã«ã®èšå®ãããã«ä¿åãããªãããšã¯ããã¶ãäºæ³å€ã§ããïŒã
ãã®ãã¡ã€ã«ã«ã¯ããã€ãã®è¡ããããŸãããã1è¡ãé€ããŠèå³æ·±ããã®ã¯ãããŸããã
ãããã®å€æ°ã«ã€ããŠã¯ãrcSïŒ5ïŒã®ããã¥ã¢ã«ããŒãžãåç §ããŠãã ããã
ããã¥ã¢ã«ããããŸãïŒ
ãããŠããã«ãªãã·ã§ã³ã®èª¬æããããŸãïŒ
éåæ ãããã¯ãŒã¯ã®éåæããŠã³ããç¡å¹ã«ããã«ã¯ãããããnoãã«èšå®ããŸã ãããã¯ãŒã¯ã€ã³ã¿ãŒãã§ã€ã¹ãããŠã³ããããŠãããšãã«ãã©ã€ããã代ããã« ãã·ã³ã®èµ·åæã«äžåºŠã ãã ããã©ã«ãã¯ãyesãã§ãã ãã ã«ãŒããã¡ã€ã«ã·ã¹ãã ãæã€ãã·ã³ã§ãããç¡å¹ã«ããã®ã«äŸ¿å©ã§ã ãã®ãããªã»ããã¢ããã§ifupdownããã®ifupãé©åã«æ©èœãããŸã§NFSã§ã
ãã³ãŽ ãã³ãŽïŒ ãã³ãŽïŒ ãã³ã¶ã€ / etc / default / rcSãã¡ã€ã«ã«ãASYNCMOUNTNFS = noããšããè¡ãåãã§æžã蟌ã¿ãåèµ·åããŸã...
...ãŸã£ããåãåé¡ãç¹°ãè¿ããŸãã
/etc/network/if-up.d/mountnfsãã¡ã€ã«ã«æ»ããASYNCMOUNTNFSãªãã·ã§ã³ããnoãã®å Žåã«å®è¡ãããé¢æ°ãããã«èŠã€ããŸããã
exit_unless_last_interfaceïŒïŒ{ grep "^ [ïŒspaceïŒ] * auto" / etc / network / interfaces | \ sed -e 's / [\ t] * auto [\ t] * //; s / [\ t] * $ //; s / [\ t] / \ n / g' | \ èªã¿ãªãã ãã if [`grep -c $ i / etc / network / run / ifstate` -eq" 0 "]; ãããã msg = "if-up.d / mountnfs [$ IFACE]ïŒNFSããŠã³ããè¡ãåã«ã€ã³ã¿ãŒãã§ã€ã¹$ iãåŸ æ©ããŠããŸã" log_warning_msg "$ msg" ïŒwhileãµãã·ã§ã«ã®ããããããå€æ°ãšããŠæž¡ãããšã¯ã§ããŸãã mkdir / var / run / network / mountnfs_earlyexit 2> / dev / null fi ãã£ã if [-d / var / run / network / mountnfs_earlyexit]; ãããã rmdir / var / run / network / mountnfs_earlyexit 2> / dev / null åºå£0 fi }
2è¡ç®ã«æ³šæããŠãã ããã ã°ã¬ããã ãããŠãç§ãã¡ã¯äœãé£ã¹ãŸããïŒ å³ããautoãã®è¡ã
åæ¢ããŸãããdebianã€ã³ã¹ããŒã©ãŒ...ã¯ããããã§ããèªåãªãã·ã§ã³ïŒ/ etc / network / interfacesãã¡ã€ã«å ïŒã®ä»£ããã«ãããããã©ã°ãªãã·ã§ã³ã䜿çšããŠãå€åºå ã§ã€ã³ã¿ãŒãã§ãŒã¹ãæå¹/ç¡å¹ã«ããããšãã§ããŸã...
解決ç
èšãæãããšãeth0ã€ã³ã¿ãŒãã§ãŒã¹ã¯ããã©ã«ãã®ã€ã³ã¹ããŒã«ã§ã¯autoã«æžã蟌ãŸãããããããã©ã°ã«æžã蟌ãŸãããããã¹ã¯ãªããã¯ãã®ã€ã³ã¿ãŒãã§ãŒã¹ãããŠã³ãã®æºåãã§ããã®ãåŸ ãããnfsãšrc.localããŠã³ãããã»ã¹ã®éã§ã¯ãªãããããã¯ãŒã¯ã®æºåç¶æ ã®éã§ç«¶åç¶æ ãååŸããŸãã€ã³ã¿ãŒãã§ãŒã¹ãšåãä»ãããã»ã¹ã æ°žç¶çãªNFSãæåã«å€±æããå Žåããã±ãããåéä¿¡ããããšã¯æããã§ãã ãããã圌ã¯ããã«ã¯ãããè¡ããŸãã...ããã¯å åŠã«é¢ãããã®ã§ãããšèããŠ-ã¢ãžã¥ãŒã«ãSFP +ãæ€åºããåæåãããããã«ç©çãªã³ã¯ã衚瀺ããããŸã§...å®éã«ã¯ãç®ã§èŠãããšãã§ããŸã-ããã»ã¹ã¯éåžžã«éããªããç¶æ³ã«ãã£ãŠã¯ã¹ãªãŒã1ãããŠååã§ã¯ãããŸãã...
ãã®ãããã€ã³ã¿ãŒãã§ã€ã¹ã/ etc / network / interfaceã«autoã«ç»é²ãããšãéè² è·ã«ãªããæ声ãäžãããããŒã«ã¯æééãã«è¡šç€ºãããŸãã ããäžåãããäžåãããäžåã 12ã®ãã¡12ãåé¡ã¯è§£æ±ºãããŸããã
rc.localã修埩ããŸããããã¹ãŠãæ©èœããŸãã åå1æåãèŠåå¡ãéãéããç§ãè»ã«ä¹ããããã«çŽ10åéããã¯ããªããã°ãªããŸããã§ããã
ããããããã¯äŸ¡å€ããããŸããã
é埳
é埳1ïŒéæ³ãšç¥ã¯ååšããŸããã å¥åŠãªæ¯ãèãã«åºäŒã£ãå Žåã圌ã¯åžžã«åççãªèª¬æãæã¡ãããããäžåçãªåæ©ïŒãã°ïŒããããŸãã
é埳2ïŒåé¡ã®çã®åå ãçºèŠããåŸãç§åŠçãªçªåºãã®ã¢ãã«ã«åºã¥ããŠæ§ç¯ãããããä¿¡é Œæ§ã®é«ãåé¿çãèãåºãããšãã§ããŸãïŒããŸãããããã§ãïŒã
é埳3ïŒåé¡ã®èª¿æ»äžã«ãã·ã¹ãã ã®æ¬¡ã®ã³ã³ããŒãã³ããã©ã®ããã«æ©èœãããããã©ãããããã詳现ã«ç 究ããŸãã ãã®ãããªç¥èãããè·æ¥ã«ãããçã«æ·±ãç¥èã圢æãããŸãã ç§èªèº«ã¯ãNFSããŒã«ã/ etc / fstabããæ£ç¢ºã«ããŠã³ããããæ¹æ³ã調ã¹ã/ etc / default / rcSãã¡ã€ã«ãååšããããšãç¥ããdebianã§äœ¿çšãããŠããã©ã³ã¬ãã«ã®æ£ç¢ºãªãªã¹ããæ確ã«ããŸããïŒããããäœã§ããããã©ã®ããã«äœ¿çšããŸãããã©ã®ã¬ãã«ã¬ãã«ãç¶ãããæ£ç¢ºã«æ±ããããªæ¹æ³ã§-ããã-ä»-ã¯ãïŒã
æèš4ïŒ ãã°ã¬ããŒããéä¿¡ããæãæ£ããæ¹æ³ã§ãã®åé¡ã解決ããŠãåé¡ã解決ããããšãã§ããŸã ã ããã«ãåé¡ãããé©åã«ïŒãããŠå®éã«ïŒèšè¿°ããã°ããã»ã©ã解決ãããå¯èœæ§ãé«ããªããŸãã ç¹å®ã®é¢æ°ã®ãšã©ãŒã¹ããŒãã¡ã³ãã¯ããrc.localã®å®è¡æã«NFSãããŠã³ããããŠããªãããšãããã¬ãŒãºãããããªããã©ã®ãããªç¶æ³ã§ã®èª¬æãã¯ããã«åªããŠãããã«åæããŸãã