18.7. “world” ¤ÎºÆ¹½ÃÛ

FreeBSD ¤Î¤É¤ì¤«ÆÃÄê¤Î¥Ð¡¼¥¸¥ç¥ó (FreeBSD-STABLE¡¢FreeBSD-CURRENT ¤Ê¤É) ¤Ë¤Ä¤¤¤Æ¡¢¥í¡¼¥«¥ë¤Î¥½¡¼¥¹¥Ä¥ê¡¼¤òƱ´ü¤µ¤»¤¿¤é¡¢ ¤½¤Î¥½¡¼¥¹¥Ä¥ê¡¼¤ò»È¤Ã¤Æ¥·¥¹¥Æ¥à¤òºÆ¹½ÃۤǤ­¤Þ¤¹¡£

¥Ð¥Ã¥¯¥¢¥Ã¥×¤ÎºîÀ®¥·¥¹¥Æ¥à¤òºÆ¹½ÃÛ¤¹¤ëÁ°¤Ë¥Ð¥Ã¥¯¥¢¥Ã¥×¤ò ºîÀ®¤¹¤ë¤³¤È¤Î½ÅÍ×À­¤Ï¡¢¤¤¤¯¤é¶¯Ä´¤·¤Æ¤â¤·²á¤®¤ë¤È¸À¤¦¤³¤È¤Ï¤¢¤ê¤Þ¤»¤ó¡£ ¥·¥¹¥Æ¥àÁ´ÂΤκƹ½ÃÛ¤È¤Ï (°Ê¹ß¤Ë½ñ¤«¤ì¤¿¼ê½ç¤Ë½¾¤Ã¤Æ¤¤¤ë¸Â¤ê) Æñ¤·¤¤ºî¶È¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢ ¤É¤ó¤Ê¤ËÃí°Õ¤·¤Æ¤¤¤¿¤È¤·¤Æ¤â¡¢ ¤¢¤Ê¤¿¼«¿È¡¢¤¢¤ë¤¤¤Ï¥½¡¼¥¹¥Ä¥ê¡¼¤Çºî¶È¤·¤Æ¤¤¤ë¾¤Î¿Íã¤Ë¼ê°ã¤¤¤¬¤¢¤Ã¤¿»þ¤Ë¤Ï¡¢ ¥·¥¹¥Æ¥à¤¬µ¯Æ°¤·¤Ê¤¯¤Ê¤Ã¤Æ¤·¤Þ¤¦¾õÂ֤ˤʤ뤳¤È¤¬¤¢¤ë¤Î¤Ç¤¹¡£

¤Þ¤º¡¢¥Ð¥Ã¥¯¥¢¥Ã¥×¤¬¤­¤Á¤ó¤ÈºîÀ®¤µ¤ì¤Æ¤¤¤ë¤³¤È¤ò³Îǧ¤·¤Æ¡¢ fixit ¥Õ¥í¥Ã¥Ô¡¼¤«µ¯Æ°²Äǽ¤Ê CD ¤òÍÑ°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£ ¿ʬ¡¢¤½¤ì¤ò»È¤¦¤³¤È¤Ï¤Ê¤¤¤È»×¤¤¤Þ¤¹¤¬¡¢ ¤¢¤È¤Ç¸å²ù¤¹¤ë¤³¤È¤Î¤Ê¤¤¤è¤¦¡¢Ç°¤Î¤¿¤áÍÑ°Õ¤·¤Æ¤ª¤­¤Þ¤·¤ç¤¦¡£

¥á¡¼¥ê¥ó¥°¥ê¥¹¥È¤Ë»²²Ã¤¹¤ë¤â¤È¤â¤È¡¢FreeBSD-STABLE ¤È FreeBSD-CURRENT ¤Î¥³¡¼¥É¥Ö¥é¥ó¥Á¤Ï¡¢ ³«È¯Ãæ¤Î¤â¤Î¤Ç¤¹¡£ FreeBSD ¤Îºî¶È¤Ë¹×¸¥¤·¤Æ¤¯¤À¤µ¤Ã¤Æ¤¤¤ë¿Íã¤â¿Í´Ö¤Ç¤¹¤«¤é¡¢ »þ¤Ë¤Ï¥ß¥¹¤ò¤¹¤ë¤³¤È¤À¤Ã¤Æ¤¢¤ë¤Ç¤·¤ç¤¦¡£

¤½¤Î¤è¤¦¤Ê´Ö°ã¤¤¤Ï¡¢Ã±¤Ë·Ù¹ð¤ò¼¨¤¹¸«´·¤ì¤Ê¤¤ ¿ÇÃÇ¥á¥Ã¥»¡¼¥¸¤ò¥·¥¹¥Æ¥à¤¬¡¢É½¼¨¤¹¤ë¤è¤¦¤Ê¡¢ Á´¤¯³²¤Î¤Ê¤¤¤â¤Î¤Ç¤¢¤ë¤³¤È¤â¤¢¤ì¤Ð¡¢¥·¥¹¥Æ¥à¤òµ¯Æ°¤Ç¤­¤Ê¤¯¤·¤¿¤ê¡¢ ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤òÇ˲õ¤·¤Æ¤·¤Þ¤¦¤è¤¦¤Ê¡¢ ¶²¤í¤·¤¤·ë²Ì¤ò¾·¤¯¤â¤Î¤«¤âÃΤì¤Þ¤»¤ó¡£

Ëü¤¬°ì¡¢¤³¤Î¤è¤¦¤ÊÌäÂ꤬À¸¤¸¤¿¾ì¹ç¡¢ ÌäÂê¤Î¾ÜºÙ¤È¡¢¤É¤Î¤è¤¦¤Ê¥·¥¹¥Æ¥à¤¬±Æ¶Á¤ò¼õ¤±¤ë¤«¤Ë¤Ä¤¤¤Æ½ñ¤«¤ì¤¿ “Ãí°Õ (heads up)” ¤Îµ­»ö¤¬ ŬÀڤʥ᡼¥ê¥ó¥°¥ê¥¹¥È¤ËÅê¹Æ¤µ¤ì¡¢¤½¤·¤Æ¡¢¤½¤ÎÌäÂ꤬²ò·è¤µ¤ì¤ë¤È¡¢ “ÌäÂê²ò·è (all clear)” ¤Î¥¢¥Ê¥¦¥ó¥¹µ­»ö¤¬Æ±ÍÍ¤Ë Åê¹Æ¤µ¤ì¤Þ¤¹¡£

FreeBSD-STABLE ¤ä FreeBSD-CURRENT ¥Ö¥é¥ó¥Á¤ËÄɿ魯¤ë¤¿¤á¤Ë»î¤½¤¦¤È¤¹¤ë¤Î¤Ë¡¢ FreeBSD-STABLE ¥á¡¼¥ê¥ó¥°¥ê¥¹¥È ¤ä FreeBSD-CURRENT ¥á¡¼¥ê¥ó¥°¥ê¥¹¥È ¤ò²áµî¤Ë¤µ¤«¤Î¤Ü¤Ã¤ÆÆɤޤʤ¤¤È¤¤¤¦¤Î¤Ï¡¢ ¼«¤éºÒÆñ¤ò¾·¤¯¤³¤È¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦¡£

ÌõÃí: ¤³¤ì¤é¤Î¥á¡¼¥ê¥ó¥°¥ê¥¹¥È¤Ï±Ñ¸ì¤Ç¤ä¤ê¤È¤ê¤µ¤ì¤Æ¤¤¤ë¤¿¤á¡¢ ÆüËܸì¤Ç¤ÎÅê¹Æ¤Ï´¿·Þ¤µ¤ì¤Þ¤»¤ó¡£±Ñ¸ì¤Ç¤Î¤ä¤ê¤È¤ê¤¬¤Ç¤­¤Ê¤¤¿Í¤Ï¡¢ FreeBSD ͧ¤Î²ñ ¤Î±¿±Ä¤·¤Æ¤¤¤ë¥á¡¼¥ê¥ó¥°¥ê¥¹¥È¤ò¤¢¤¿¤Ã¤Æ¤ß¤ë¤Î¤¬¤¤¤¤¤Ç¤·¤ç¤¦¡£

make world ¤Ï»È¤ï¤Ê¤¤¤³¤È¸Å¤¤¥É¥­¥å¥á¥ó¥È¤Î¿¤¯¤¬¡¢¤³¤ÎÌÜŪ¤Ë make world ¤ò»È¤¦¤³¤È¤òÁ¦¤á¤Æ¤¤¤Þ¤¹¡£ ¤³¤ì¤Ï¡¢½ÅÍפʼê½ç¤ò¤¤¤¯¤Ä¤«È´¤«¤·¤Æ¤·¤Þ¤¦¤Î¤Ç¡¢ ²¿¤ò¤·¤Æ¤¤¤ë¤«¤è¤¯Ê¬¤«¤Ã¤Æ¤¤¤Ê¤±¤ì¤Ð»È¤¦¤Ù¤­¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£ ¤Û¤Ü¤¢¤é¤æ¤ë¾ì¹ç¤Ë¤ª¤¤¤Æ¡¢make world ¤ò¼Â¹Ô¤¹¤ë¤Î¤Ï´Ö°ã¤Ã¤Æ¤ª¤ê¡¢ ¤³¤³¤ÇÀâÌÀ¤µ¤ì¤Æ¤¤¤ë¼ê½ç¤òÍѤ¤¤ë¤Ù¤­¤Ç¤¹¡£

18.7.1. ¥·¥¹¥Æ¥à¤ò¹¹¿·¤¹¤ëÀµ¼°¤ÊÊýË¡

¥·¥¹¥Æ¥à¤ò¹¹¿·¤¹¤ëÁ°¤Ë¡¢ /usr/src/UPDATING ¤òÆɤó¤Ç¤¯¤À¤µ¤¤¡£ ¤³¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢ÍÑ°Õ¤·¤¿¥½¡¼¥¹¥³¡¼¥É¤Ç buildworld ¤ò¹Ô¤¦Á°¤ËɬÍפʼê½ç¤¬½ñ¤«¤ì¤Æ¤¤¤Þ¤¹¡£ ¤½¤Î¸å¡¢°Ê²¼¤Î¼ê½ç¤òƧ¤ó¤Ç¤¯¤À¤µ¤¤¡£

¤³¤ÎÀá¤ÇÀâÌÀ¤¹¤ë¥¢¥Ã¥×¥Ç¡¼¥È¤Î¥×¥í¥»¥¹¤Ï¡¢¸Å¤¤¥³¥ó¥Ñ¥¤¥é¡¢ ¸Å¤¤¥«¡¼¥Í¥ë¡¢¸Å¤¤ world¡¢¤½¤·¤Æ¸Å¤¤¥³¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó¥Õ¥¡¥¤¥ë¤«¤é¤Ê¤ë¡¢ ¸Å¤¤¥Ð¡¼¥¸¥ç¥ó¤Î FreeBSD ¤ò¥¢¥Ã¥×¥Ç¡¼¥È¤¹¤ë¤³¤È¤òÁÛÄꤷ¤Æ¤¤¤Þ¤¹¡£ ¤³¤³¤Ç “world” ¤Ï¡¢¥³¥¢¥·¥¹¥Æ¥à¤Î¥Ð¥¤¥Ê¥ê¡¢¥é¥¤¥Ö¥é¥ê¡¢ ¥×¥í¥°¥é¥ß¥ó¥°¥Õ¥¡¥¤¥ë¤ò°ÕÌ£¤·¤Þ¤¹¡£ ¥³¥ó¥Ñ¥¤¥é¤Ï “world” ¤Î°ìÉô¤Ç¤¹¤¬¡¢ ¤¤¤¯¤Ä¤«ÆÃÊ̤˵¤¤ò¤Ä¤±¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£

¤Þ¤¿¡¢¿·¤·¤¤¥·¥¹¥Æ¥à¤Î¥½¡¼¥¹¤ò¤¹¤Ç¤ËÆþ¼ê¤·¤Æ¤¤¤ë¤³¤È¤â²¾Äꤷ¤Æ¤¤¤Þ¤¹¡£ ¤â¤·¥·¥¹¥Æ¥à¤Î¥½¡¼¥¹¥³¡¼¥É¤¬¸Å¤¤¤è¤¦¤Ç¤·¤¿¤é¡¢ 項18.6 ¤òÆɤó¤Ç¡¢ ¥½¡¼¥¹¥³¡¼¥É¤ò¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤ØƱ´ü¤¹¤ëÊýË¡¤Î¾ÜºÙ¤òÍý²ò¤·¤Æ¤¯¤À¤µ¤¤¡£

¥½¡¼¥¹¤«¤é¤Î¥·¥¹¥Æ¥à¤Î¥¢¥Ã¥×¥Ç¡¼¥È¤Ï¡¢ Åö½éͽÁÛ¤·¤Æ¤¤¤¿¤â¤Î¤è¤ê¤È¤é¤¨¤¬¤¿¤¤¤â¤Î¤Ç¤¹¡£ Ť¤Ç¯·î¤Ë¤ª¤¤¤ÆÈò¤±¤é¤ì¤Ê¤¤°Í¸ÌäÂ꤬ȽÌÀ¤·¤¿¤¿¤á¡¢ FreeBSD ¤Î³«È¯¼Ôã¤Ï¡¢¿ä¾©¤µ¤ì¤ë¥¢¥×¥í¡¼¥Á¤òÂ礭¤¯Êѹ¹¤·¤Þ¤·¤¿¡£ ¤³¤ÎÀá¤Ç¤Ï¡¢¸½ºß¿ä¾©¤µ¤ì¤Æ¤¤¤ë¥¢¥Ã¥×¥°¥ì¡¼¥É¤Î¼ê½ç¤ÎÇظå¤Ë¤¢¤ë¡¢ ÍýÏÀŪº¬µò¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£

Ϣ³¤·¤¿¥¢¥Ã¥×¥Ç¡¼¥È¤Î¼ê½ç¤Ï¡¢°Ê²¼¤ÎÌäÂê¤ËÂбþ¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£

¤³¤ì¤é 2 ¤Ä¤Î½ÅÍ×»ö¹à¤Ï¡¢ °Ê²¼¤ÎÀâÌÀ¤ÇÃæ¿´¤È¤Ê¤ë buildworld, buildkernel, installkernel, installworld ¤Î´ðËܤǤ¹¡£ ¸½ºß¿ä¾©¤µ¤ì¤Æ¤¤¤ë¥¢¥Ã¥×¥°¥ì¡¼¥É¥×¥í¥»¥¹¤òºÎÍѤ·¤¿¤Û¤¦¤¬Îɤ¤¤È¤¤¤¦Íýͳ¤ò¤¹¤Ù¤Æ´Þ¤ó¤Ç¤¤¤ë¤ï¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£ °Ê²¼¤Ç¤Ï¡¢¤â¤¦¾¯¤·ÌÀ³Î¤Ç¤Ï¤Ê¤¤ÅÀ¤Ë¤Ä¤¤¤Æ¥ê¥¹¥È¥¢¥Ã¥×¤·¤Þ¤¹¡£

¤³¤ì¤é¤òÇÛθ¤·¡¢°Ê²¼¤Î¿ä¾©¼ê½ç¤¬ºî¤é¤ì¤Þ¤·¤¿¡£ ¥¢¥Ã¥×¥Ç¡¼¥È¤ÎºÙ¤«¤¤¼ê½ç¤Ë¤ª¤¤¤Æ¤Ï¡¢Äɲäμê½ç¤¬É¬Íפˤʤ뤫¤â¤·¤ì¤Þ¤»¤ó¤¬¡¢ ¤³¤ÎÃæ¿´¤È¤Ê¤ë¥×¥í¥»¥¹¤Ï¡¢¤·¤Ð¤é¤¯¤Î´ÖÊѤï¤Ã¤Æ¤¤¤Þ¤»¤ó¡£

  1. make buildworld

    ¿·¤·¤¤¥³¥ó¥Ñ¥¤¥é¤È´ØÏ¢¥Ä¡¼¥ë¤òºÇ½é¤Ë¥³¥ó¥Ñ¥¤¥ë¤·¡¢ ¤½¤Î¸å¡¢¿·¤·¤¤¥³¥ó¥Ñ¥¤¥é¤Ç¡¢ ¿·¤·¤¤ world ¤Î»Ä¤ê¤ÎÉôʬ¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£ ¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¤â¤Î¤Ï¡¢ /usr/obj ¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£

  2. make buildkernel

    config(8) ¤È make(1) ¤òÍѤ¤¤¿¸Å¤¤ÊýË¡¤È¤Ï°Û¤Ê¤ê¡¢ /usr/obj ¤Ë¤¢¤ë ¿·¤·¤¤ ¥³¥ó¥Ñ¥¤¥é¤¬ÍѤ¤¤é¤ì¤Þ¤¹¡£ ¤³¤ì¤Ë¤è¤ê¡¢¥³¥ó¥Ñ¥¤¥é¤È¥«¡¼¥Í¥ë¤Î¥ß¥¹¥Þ¥Ã¥Á¤òËɤ°¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

  3. make installkernel

    ¿·¤·¤¯¥¢¥Ã¥×¥Ç¡¼¥È¤µ¤ì¤¿¥«¡¼¥Í¥ë¤Çµ¯Æ°¤Ç¤­¤ë¤è¤¦¤Ë¡¢ ¿·¤·¤¤¥«¡¼¥Í¥ë¤È¥«¡¼¥Í¥ë¥â¥¸¥å¡¼¥ë¤ò¥Ç¥£¥¹¥¯¾å¤ËÇÛÃÖ¤·¤Þ¤¹¡£

  4. ¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤ÇºÆµ¯Æ°

    ¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤Ï¡¢ ¤¹¤Ç¤Ë¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¥½¥Õ¥È¥¦¥§¥¢¤ò¥¢¥Ã¥×¥Ç¡¼¥È¤¹¤ëºÝ¤ÎÌäÂê¤òºÇ¾®¸Â¤Ë¤·¤Þ¤¹¡£ ¤Þ¤¿¡¢¿·¤·¤¤¥«¡¼¥Í¥ë¾å¤Ç¸Å¤¤ world ¤¬¼Â¹Ô¤µ¤ì¤ëºÝ¤ÎÌäÂê¤âºÇ¾®¸Â¤Ë¤·¤Þ¤¹¡£

  5. mergemaster -p

    ¿·¤·¤¤ world ¤Ë¤ª¤±¤ëºÇ½é¤ÎÀßÄê¥Õ¥¡¥¤¥ë¤Î¥¢¥Ã¥×¥Ç¡¼¥È¤ò¹Ô¤¤¤Þ¤¹¡£ ¤¿¤È¤¨¤Ð¡¢¿·¤·¤¤¥æ¡¼¥¶¥°¥ë¡¼¥×¤ò¥·¥¹¥Æ¥à¤ËÄɲä·¤¿¤ê¡¢ ¥Ñ¥¹¥ï¡¼¥É¥Ç¡¼¥¿¥Ù¡¼¥¹¤ËÂФ·¡¢¿·¤·¤¤¥æ¡¼¥¶Ì¾¤òÄɲ乤뤫¤â¤·¤ì¤Þ¤»¤ó¡£ Á°²ó¤Î¥¢¥Ã¥×¥Ç¡¼¥È¸å¤Ë¡¢ ¿·¤·¤¤¥°¥ë¡¼¥×¤äÆÃÊ̤Υ·¥¹¥Æ¥à¤Î¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È¤¬Äɲ䵤줿¾ì¹ç¤Ë¡¢ installworld ¤Î¥¹¥Æ¥Ã¥×¤Ç¡¢ ¿·¤·¤¯¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤¿¥·¥¹¥Æ¥à¤Î¥æ¡¼¥¶¤Þ¤¿¤Ï¥·¥¹¥Æ¥à¤Î¥°¥ë¡¼¥×̾¤òÌäÂê¤Ê¤¯»È¤¦¤³¤È¤¬¤Ç¤­¤ë¤è¤¦¤Ë¡¢ ¤³¤Îºî¶È¤¬¤È¤­¤É¤­É¬ÍפȤʤê¤Þ¤¹¡£

  6. make installworld

    world ¤ò /usr/obj ¤«¤é¥³¥Ô¡¼¤·¤Þ¤¹¡£ ¤³¤ì¤Ç¡¢¥Ç¥£¥¹¥¯¤Ë¤Ï¿·¤·¤¤¥«¡¼¥Í¥ë¤È world ¤¬ÃÖ¤«¤ì¤¿¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£

  7. mergemaster

    ¥Ç¥£¥¹¥¯¤Ë¿·¤·¤¤ world ¤¬ÃÖ¤«¤ì¤¿¤Î¤Ç¡¢ »Ä¤ê¤ÎÀßÄê¥Õ¥¡¥¤¥ë¤ò¥¢¥Ã¥×¥Ç¡¼¥È¤·¤Þ¤¹¡£

  8. ºÆµ¯Æ°

    ¿·¤·¤¤¥«¡¼¥Í¥ë¡¢world ¤½¤·¤ÆÀßÄê¥Õ¥¡¥¤¥ë¤¬¥í¡¼¥É¤µ¤ì¤¿¤Î¤Ç¡¢ ºÆµ¯Æ°¤¬É¬ÍפǤ¹¡£

¤â¤·¡¢FreeBSD ¤Î¤¢¤ë¥Ö¥é¥ó¥Á¤Î¤¢¤ë¥ê¥ê¡¼¥¹¤«¤é¡¢ Ʊ¤¸¥Ö¥é¥ó¥Á¤ÎºÇ¿·¥ê¥ê¡¼¥¹¤Ë¥¢¥Ã¥×¥Ç¡¼¥È¤¹¤ë¤Î¤Ç¤¢¤ì¤Ð (¤¿¤È¤¨¤Ð 7.0 ¤«¤é 7.1)¡¢ ¤³¤Î¼ê½ç¤Ë¤·¤¿¤¬¤ï¤Ê¤¯¤Æ¤âÎɤ¤¤Ç¤·¤ç¤¦¡£ ¤Ê¤¼¤Ê¤é¤Ð¡¢¥³¥ó¥Ñ¥¤¥é¡¢¥«¡¼¥Í¥ë¡¢¥æ¡¼¥¶¥é¥ó¥É¡¢¤½¤·¤ÆÀßÄê¥Õ¥¡¥¤¥ë¤Î´Ö¤Ç¡¢ ½ÅÅ٤Υߥ¹¥Þ¥Ã¥Á¤¬µ¯¤­¤ë¤³¤È¤Ï¤¢¤Þ¤ê¹Í¤¨¤é¤ì¤Ê¤¤¤¿¤á¤Ç¤¹¡£ ¥Þ¥¤¥Ê¡¼¤Ê¥¢¥Ã¥×¥Ç¡¼¥È¤Ç¤Ï¡¢¿·¤·¤¤¥«¡¼¥Í¥ë¤Î¹½Ãۤȥ¤¥ó¥¹¥È¡¼¥ë¸å¤Ë¡¢ ¸Å¤¤¥¢¥×¥í¡¼¥Á¤Ç¤¢¤ë make world ¤òÍѤ¤¤Æ¤â¤¦¤Þ¤¯¤¤¤¯¤Ç¤·¤ç¤¦¡£

¤·¤«¤·¤Ê¤¬¤é¡¢¥á¥¸¥ã¡¼¥ê¥ê¡¼¥¹¤ò¤Þ¤¿¤¤¤À¥¢¥Ã¥×¥Ç¡¼¥È¤Ç¤Ï¡¢ ¤³¤ÎÊýË¡¤òÍѤ¤¤Ê¤¤¤È¡¢²¿¤é¤«¤ÎÌäÂê¤Ë¤Ö¤Ä¤«¤ë¤Ç¤·¤ç¤¦¡£

Â礭¤Ê¥¢¥Ã¥×¥°¥ì¡¼¥É (¤¿¤È¤¨¤Ð  4.X ¤«¤é 5.0 ¤Ø¤Î¥¢¥Ã¥×¥Ç¡¼¥È) ¤Ë¤ª¤¤¤Æ¤Ï¡¢(¤¿¤È¤¨¤Ð installworld ¤ÎÁ°¤ËÆÃÄê¤Î¥Õ¥¡¥¤¥ë¤Î̾Á°¤ÎÊѹ¹¤äºï½ü¤Ê¤É¤Î) ÆÃÊ̤ÊÄɲäΥ¹¥Æ¥Ã¥×¤âɬÍפȤʤë¤Ç¤·¤ç¤¦¡£ /usr/src/UPDATING ¥Õ¥¡¥¤¥ë¤òÃí°Õ¿¼¤¯Æɤó¤Ç¤¯¤À¤µ¤¤¡£ Æä˥ե¡¥¤¥ë¤ÎºÇ¸å¤Ë¤Ï¡¢ ¸½ºß¿ä¾©¤µ¤ì¤Æ¤¤¤ë¥¢¥Ã¥×¥°¥ì¡¼¥É¤Î¼ê½ç¤¬¾Ü¤·¤¯Àµ³Î¤ËÀâÌÀ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

¤³¤Î¼ê³¤­¤Ï¡¢ ³«È¯¼Ô¤¿¤Á¤¬¤¢¤ë¼ï¤Î¥ß¥¹¥Þ¥Ã¥Á¤ò´°Á´¤ËÈò¤±¤ë¤¿¤á¤Ë¡¢Ä¹¤¤Ç¯·î¤ò¤«¤±¤Æ¿Ê²½¤·¤Æ¤­¤Þ¤·¤¿¡£ ´ê¤ï¤¯¤Ð¡¢¤³¤Î¸½ºß¤Î¼ê½ç¤¬Ä¹¤¤´Ö°ÂÄꤷ¤Æ¤Û¤·¤¤¤â¤Î¤Ç¤¹¡£

¤Þ¤È¤á¤ë¤È¡¢¸½ºß¡¢¥½¡¼¥¹¤«¤é¤Î FreeBSD ¤Î¥¢¥Ã¥×¥°¥ì¡¼¥É¤Ë¤ª¤¤¤Æ¿ä¾©¤µ¤ì¤Æ¤¤¤ëÊýË¡¤Ï°Ê²¼¤È¤Ê¤ê¤Þ¤¹¡£

# cd /usr/src
# make buildworld
# make buildkernel
# make installkernel
# shutdown -r now

注意: ¤Þ¤ì¤Ë buildworld ¤ÎÁ°¤Ë mergemaster -p ¤ò;ʬ¤Ë¼Â¹Ô¤¹¤ë¤³¤È¤¬É¬Íפʾì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤½¤Î¾ì¹ç¤Ï UPDATING ¤Ë¤½¤¦½ñ¤«¤ì¤Æ¤¤¤Þ¤¹¡£ FreeBSD ¤Î¥á¥¸¥ã¡¼¥Ð¡¼¥¸¥ç¥ó¤ò¤Þ¤¿¤¤¤Ç¹¹¿·¤¹¤ë¤Î¤Ç¤Ê¤±¤ì¤Ð¡¢ Ä̾ï¤Ï¤³¤Î¼ê½ç¤ò¾Êά¤·¤Æ¤â¤Ê¤ó¤éÌäÂê¤Ê¤¤¤Ç¤·¤ç¤¦¡£

installkernel ¤¬Ìµ»ö¤Ë½ªÎ»¤·¤¿¤é¡¢(¤¿¤È¤¨¤Ð¡¢¥í¡¼¥À¤Î¥×¥í¥ó¥×¥È¤«¤é boot -s ¤ò»È¤Ã¤Æ) ¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤ÇΩ¤Á¾å¤²¤Þ¤·¤ç¤¦¡£ ¤½¤ì¤«¤é¡¢°Ê²¼¤ò¼Â¹Ô¤·¤Æ¤¯¤À¤µ¤¤¡£

# mount -u /
# mount -a -t ufs
# adjkerntz -i
# mergemaster -p
# cd /usr/src
# make installworld
# mergemaster
# reboot

¤³¤Î¸å¤ÎÀâÌÀ¤òÆɤó¤Ç¤¯¤À¤µ¤¤¾å½Ò¤Î¼ê½ç¤Ï¡¢ ¤È¤ê¤¢¤¨¤ºÃå¼ê¤¹¤ë¤¿¤á¤Î´Êñ¤Ê¤Þ¤È¤á¤Ë¤¹¤®¤Þ¤»¤ó¡£ ¤½¤ì¤¾¤ì¤Î¼ê½ç¤ò¤­¤Á¤ó¤ÈÍý²ò¤¹¤ë¤¿¤á¤Ë¡¢ ¤³¤Î¸å¤ÎÀá¤òÆɤó¤Ç¤¯¤À¤µ¤¤¡£ ¥«¥¹¥¿¥à¥«¡¼¥Í¥ë¤òÍøÍѤ·¤¿¤¤¤È¹Í¤¨¤Æ¤¤¤ë¤Ê¤é¤Ê¤ª¤µ¤é¤Ç¤¹¡£

18.7.2. /usr/src/UPDATING ¤òÆɤà

²¿¤ò»Ï¤á¤ë¤Ë¤·¤í¡¢¤Þ¤ººÇ½é¤Ë /usr/src/UPDATING (¤â¤·¤¯¤Ï¤¢¤Ê¤¿¤¬¥½¡¼¥¹¥³¡¼¥É¤ò ¤É¤³¤Ë¥³¥Ô¡¼¤·¤¿¤Ë¤»¤è¤½¤ì¤ËÁêÅö¤¹¤ë¥Õ¥¡¥¤¥ë) ¤òÆɤߤޤ·¤ç¤¦¡£ ¤³¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ï¤¢¤Ê¤¿¤¬Áø¶ø¤¹¤ë¤«¤âÃΤì¤Ê¤¤ÌäÂê¤ËÂФ¹¤ë½ÅÍפʾðÊó¤ò ´Þ¤ó¤Ç¤¤¤¿¤ê¡¢¤¢¤Ê¤¿¤¬ÆÃÄê¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¯¤Ê¤Ã¤¿»þ ¤½¤Î½ç½ø¤ò»Ø¼¨¤·¤¿¤ê¤¹¤ë¤Ï¤º¤Ç¤¹¡£ UPDATING ¤¬¤¢¤Ê¤¿¤¬Æɤó¤À»öÊÁ¤ÈÌ·½â¤·¤Æ¤¤¤ë»þ¤Ï UPDATING ¤¬Í¥À褷¤Þ¤¹¡£

重要項目: UPDATING ¤òÆɤà¤È¤¤¤¦¤³¤È¤Ï¡¢Á°½Ò¤Î ŬÀڤʥ᡼¥ê¥ó¥°¥ê¥¹¥È¤ò¹ØÆɤ¹¤ëÂå¤ï¤ê¤Ë¤Ï¤Ê¤ê¤Þ¤»¤ó¡£ Æó¤Ä¤ÎÍ×µá¤ÏÁêÊäŪ¤Ê¤â¤Î¤ÇÇÓ¾Ū¤Ê¤â¤Î¤Ç¤Ï¤Ê¤¤¤Î¤Ç¤¹¡£

18.7.3. /etc/make.conf ¤Î³Îǧ

make(1) ¤Î¥ª¥×¥·¥ç¥ó¤ÎÀâÌÀ¤Ï¡¢make.conf(5) ¤ä /usr/share/examples/etc/make.conf ¤Ë¤¢¤ê¤Þ¤¹¡£ ¤³¤ì¤é¤ÎÀßÄê¤ò /etc/make.conf ¤ËÄɲ䷤ơ¢ make(1) ¤Î¼Â¹Ô¤ä¥×¥í¥°¥é¥à¤Î¹½ÃÛÊýË¡¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£ ¤¢¤ëÀßÄê¤òÊѹ¹¤·¤¿¤³¤È¤Ë¤è¤ê¡¢±Æ¶Á¤¬¹­¤¤ÈϰϤˤª¤è¤Ó¡¢ ¶Ã¤¯¤Ù¤­·ë²Ì¤ò¤â¤¿¤é¤¹²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£ ξÊý¤Î¥Õ¥¡¥¤¥ë¤Ë½ñ¤«¤ì¤Æ¤¤¤ë¥³¥á¥ó¥È¤òÆɤळ¤È¤È¡¢ ¥Ç¥Õ¥©¥ë¥È¤ÎÀßÄê¤Ï¡¢¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤È°ÂÁ´À­¤Î´ÑÅÀ¤«¤éÁª¤Ð¤ì¤Æ¤¤¤ë¤³¤È¤ò³Ð¤¨¤Æ¤ª¤¤¤Æ¤¯¤À¤µ¤¤¡£

/etc/make.conf ¤ÇÀßÄꤵ¤ì¤¿¥ª¥×¥·¥ç¥ó¤Ï¡¢ make(1) ¤¬»È¤ï¤ì¤ëºÝ¤Ë¤Ï¾ï¤ËÍ­¸ú¤È¤Ê¤ê¤Þ¤¹¡£ Ports Collection ¤«¤é¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë»þ¡¢ ¥æ¡¼¥¶¤¬½ñ¤¤¤¿ C ¥×¥í¥°¥é¥à¤ä FreeBSD ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤½¤Î¤â¤Î¤ò¹½ÃÛ¤¹¤ëºÝ¤Ë±Æ¶Á¤òµÚ¤Ü¤·¤Þ¤¹¡£

18.7.4. /etc/src.conf ¤ò³Îǧ¤¹¤ë

/etc/src.conf ¤Ï¡¢ ¥½¡¼¥¹¥³¡¼¥É¤òÍѤ¤¤¿¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤Î¹½ÃۤˤĤ¤¤Æ¥³¥ó¥È¥í¡¼¥ë¤·¤Þ¤¹¡£ /etc/make.conf ¤È¤Ï°Û¤Ê¤ê¡¢ /etc/src.conf ¤Ë½ñ¤«¤ì¤¿ÀßÄê¤Ï¡¢ FreeBSD ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤½¤Î¤â¤Î¤ò¹½ÃÛ¤¹¤ë¤È¤­¤Ë¤Î¤ß±Æ¶Á¤·¤Þ¤¹¡£ ¤³¤Î¥Õ¥¡¥¤¥ë¤ÇÀßÄê²Äǽ¤Ê¿¤¯¤Î¥ª¥×¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¤Ï¡¢ src.conf(5) ¤Ëµ­½Ò¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ °ì¸«¤·¤¿¤È¤³¤í̵¸ú¤Ë¤µ¤ì¤Æ¤¤¤ë¡¢ »È¤ï¤ì¤Æ¤¤¤Ê¤¤¥«¡¼¥Í¥ë¥â¥¸¥å¡¼¥ë¤ä¥Ó¥ë¥É¥ª¥×¥·¥ç¥ó¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤È¤­¤É¤­Í½´ü¤·¤Ê¤«¤Ã¤¿¤ê¡¢¤ï¤º¤«¤Ê±Æ¶Á¤òÍ¿¤¨¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£

18.7.5. /etc ¤Ë¤¢¤ë¥Õ¥¡¥¤¥ë¤Î¹¹¿·

/etc ¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤Ï¡¢ ¥·¥¹¥Æ¥àµ¯Æ°»þ¤Ë¼Â¹Ô¤µ¤ì¤ë¥¹¥¯¥ê¥×¥È¤À¤±¤Ç¤Ê¤¯¡¢ ¤¢¤Ê¤¿¤Î¥·¥¹¥Æ¥à¤ÎÀßÄê¤Ë´ØÏ¢¤¹¤ë¾ðÊó¤ÎÂçÉôʬ¤¬ ´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë´Þ¤Þ¤ì¤ë ¥¹¥¯¥ê¥×¥È¤Ï¡¢FreeBSD ¤Î¥Ð¡¼¥¸¥ç¥ó¤Ë¤è¤Ã¤Æ¿¾¯°Û¤Ê¤ê¤Þ¤¹¡£

¤Þ¤¿¡¢ÀßÄê¥Õ¥¡¥¤¥ë¤Î¤Ê¤«¤Ë¤Ï¡¢²ÔƯÃæ¤Î¥·¥¹¥Æ¥à¤¬Æü¡¹ÍøÍѤ·¤Æ¤¤¤ë ¤â¤Î¤â¤¢¤ê¤Þ¤¹¡£¼ÂºÝ¤Ë¤Ï¡¢/etc/group ¤Ê¤É¤¬¤½¤ì¤Ë³ºÅö¤·¤Þ¤¹¡£

make installworld ¤Ë¤è¤ë¥¤¥ó¥¹¥È¡¼¥ë¤ÎÃʳ¬¤Ç¤Ï¡¢ ÆÃÄê¤Î¥æ¡¼¥¶Ì¾¡¢¤¢¤ë¤¤¤Ï¥°¥ë¡¼¥×¤¬Â¸ºß¤·¤Æ¤¤¤ë¤³¤È¤ò Í׵᤹¤ë¾ìÌ̤¬¤¢¤ê¤Þ¤¹¡£¥·¥¹¥Æ¥à¤Î¥¢¥Ã¥×¥°¥ì¡¼¥É¤ò¹Ô¤Ê¤¦ºÝ¤Ë¤Ï¡¢ ¤½¤ì¤é¤Î¥æ¡¼¥¶Ì¾¤ä¥°¥ë¡¼¥×¤¬ºï½ü¡¢¤¢¤ë¤¤¤ÏÊѹ¹¤µ¤ì¤Æ¸ºß¤·¤Æ¤¤¤Ê¤¤²ÄǽÀ­¤¬ ¹Í¤¨¤é¤ì¤Þ¤¹¤¬¡¢¤½¤¦¤¤¤Ã¤¿¾ì¹ç¡¢¥·¥¹¥Æ¥à¤Î¥¢¥Ã¥×¥°¥ì¡¼¥É¤ò ¹Ô¤Ê¤Ã¤Æ¤¤¤ë´Ö¤Ë¡¢ÌäÂ꤬ȯÀ¸¤¹¤ë¸¶°ø¤Ë¤Ê¤ê¤Þ¤¹¡£ make buildworld ¤Ë¤ª¤¤¤Æ¡¢ ¤½¤ì¤é¤Î¥æ¡¼¥¶Ì¾¤ä¥°¥ë¡¼¥×¤¬Â¸ºß¤¹¤ë¤«³Îǧ¤¬¹Ô¤ï¤ì¤ë¾ì¹ç¤â¤¢¤ê¤Þ¤¹¡£

¤³¤ÎÎã¤Î°ì¤Ä¤Ï¡¢ smmsp ¥æ¡¼¥¶¤¬Äɲ䵤줿»þ¤Ç¤¹¡£ mtree(8) ¤¬ /var/spool/clientmqueue ¤òºîÀ®¤·¤è¤¦¤È¤¹¤ë»þ¡¢ ¤½¤Î¥æ¡¼¥¶Ì¾ (¤ª¤è¤Ó¥°¥ë¡¼¥×) ¤¬Â¸ºß¤·¤Ê¤¤¤¿¤á¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤Ë¼ºÇÔ¤·¤Æ¤·¤Þ¤Ã¤¿¤Î¤Ç¤¹¡£

²ò·èÊýË¡¤Ï¡¢buildworld ¤ÎÁ°¤Ë -p ¥ª¥×¥·¥ç¥ó¤ò¤Ä¤±¤Æ mergemaster(8) ¤ò¼Â¹Ô¤¹¤ë¤³¤È¤Ç¤¹¡£ ¤³¤ì¤ò¼Â¹Ô¤¹¤ë¤È¡¢buildworld ¤ä installworld ¤¬À®¸ù¤¹¤ë¤¿¤á¤ËɬÍפʥե¡¥¤¥ë¤À¤±¤òÈæ³Ó¤·¤Þ¤¹¡£

ティップ: ¤â¤·¡¢¤¢¤Ê¤¿¤¬¤â¤Ã¤È¿À·Ð¼Á¤Ê¿Í¤Ê¤é¡¢¤¢¤Ê¤¿¤¬Ì¾Á°¤òÊѹ¹¤·¤¿¤ê¡¢ ºï½ü¤·¤Æ¤·¤Þ¤Ã¤¿¥°¥ë¡¼¥×¤¬½êÍ­¤·¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤ò¡¢ ¼¡¤Î¤è¤¦¤Ë¤·¤ÆÄ´¤Ù¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£

# find / -group GID -print

¤³¤ì¤Ï GID (¥°¥ë¡¼¥×̾¤â¤·¤¯¤Ï¿ô»ú¤Ç¼¨¤µ¤ì¤¿¥°¥ë¡¼¥× ID) ¤Ç »ØÄꤵ¤ì¤¿¥°¥ë¡¼¥×¤¬½êÍ­¤¹¤ë¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤òɽ¼¨¤·¤Þ¤¹¡£

18.7.6. ¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤Ø¤Î°Ü¹Ô

¥³¥ó¥Ñ¥¤¥ë¤Ï¡¢¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤Ç¹Ô¤Ê¤Ã¤¿Êý¤¬Îɤ¤¤Ç¤·¤ç¤¦¡£ ¤½¤¦¤¹¤ë¤³¤È¤Ç¿¾¯Â®ÅÙ¤¬¸þ¾å¤¹¤ë¡¢¤È¤¤¤¦¤Á¤ç¤Ã¤È¤·¤¿ÍøÅÀ¤¬ ¤¢¤ë¤À¤±¤Ç¤Ê¤¯¡¢¥·¥¹¥Æ¥à¤ÎºÆ¥¤¥ó¥¹¥È¡¼¥ë¤Ï½ÅÍפʥ·¥¹¥Æ¥à¥Õ¥¡¥¤¥ë¡¢ ɸ½à¥³¥Þ¥ó¥É¡¢¥é¥¤¥Ö¥é¥ê¡¢¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Ê¤É¤òÁàºî¤·¤Þ¤¹¡£ ²ÔƯÃæ¤Î¥·¥¹¥Æ¥à¤Ë (Æä˾¤Î¥æ¡¼¥¶¤¬¤½¤Î¥·¥¹¥Æ¥à¤Ë¥í¥°¥¤¥ó¤·¤Æ¤¤¤ë»þ¤Ë) ¤½¤Î¤è¤¦¤ÊÊѹ¹¤ò²Ã¤¨¤ë¤³¤È¤Ï¡¢¥È¥é¥Ö¥ë¤ò°ú¤­µ¯¤³¤¹¸¶°ø¤È¤Ê¤ê¤Þ¤¹¡£

¤â¤¦°ì¤Ä¤ÎÊýË¡¤È¤·¤Æ¡¢¥Þ¥ë¥Á¥æ¡¼¥¶¥â¡¼¥É¤Ç¥·¥¹¥Æ¥à¤òºÆ¹½ÃÛ¤·¤Æ¡¢ ¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤Ë°Ü¹Ô¤·¤Æ¤«¤é¤½¤ì¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¡¢ ¤È¤¤¤¦¤Î¤¬¤¢¤ê¤Þ¤¹¡£¤â¤·¤³¤Î¤è¤¦¤ÊÊýË¡¤Ç¹Ô¤Ê¤¤¤¿¤¤¾ì¹ç¤Ï¡¢ °Ê²¼¤Î¼ê½ç¤ò¹½ÃÛ¤¬´°Î»¤¹¤ë¤È¤³¤í¤Þ¤ÇÈô¤Ð¤·¤Æ¤¯¤À¤µ¤¤¡£ ¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤Ë°Ü¹Ô¤¹¤ë¤Î¤ò¡¢ installkernel ¤â¤·¤¯¤Ï installworld ¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¯¤Ê¤ë¤Þ ¤Ç¸å²ó¤·¤Ë¤Ç¤­¤Þ¤¹¡£

²ÔƯÃæ¤Î¥·¥¹¥Æ¥à¤Ç¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤Ë°Ü¹Ô¤¹¤ë¤Ë¤Ï¡¢ ¥¹¡¼¥Ñ¥æ¡¼¥¶ (root) ¸¢¸Â¤Ç¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£

# shutdown now

¤¢¤ë¤¤¤Ï¥·¥¹¥Æ¥à¤òºÆµ¯Æ°¤·¡¢¥Ö¡¼¥È¥×¥í¥ó¥×¥È¤«¤é “single user” ¤òÁªÂò¤¹¤ë¤È¡¢ ¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤Ç¥·¥¹¥Æ¥à¤òµ¯Æ°¤Ç¤­¤Þ¤¹¡£ µ¯Æ°¸å¡¢¥·¥§¥ë¥×¥í¥ó¥×¥È¤«¤é¼¡¤Î¤è¤¦¤Ë¼Â¹Ô¤·¤Æ¤¯¤À¤µ¤¤¡£

# fsck -p
# mount -u /
# mount -a -t ufs
# swapon -a

¤³¤ì¤Ï¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤ò¥Á¥§¥Ã¥¯¤·¤¿¸å¡¢ / ¤òÆɤ߽ñ¤­²Äǽ¤Ë¤·¤ÆºÆ¥Þ¥¦¥ó¥È¡¢ /etc/fstab ¤Ë»ØÄꤵ¤ì¤Æ¤¤¤ë¡¢ ¤½¤ì°Ê³°¤Î UFS ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤ò¤¹¤Ù¤Æ¥Þ¥¦¥ó¥È¤·¤Æ¤«¤é ¥¹¥ï¥Ã¥×¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£

注意: CMOS ¥¯¥í¥Ã¥¯¤¬ÃÏ°è»þ´Ö¤ËÀßÄꤵ¤ì¤Æ¤¤¤Æ GMT ¤Ç¤Ï¤Ê¤¤¾ì¹ç (date(1) ¥³¥Þ¥ó¥É¤¬Àµ¤·¤¤»þ´Ö¤ÈÃÏ°è ¤òɽ¼¨¤·¤Ê¤¤¤Ê¤éÅö¤Æ¤Ï¤Þ¤ê¤Þ¤¹)¡¢ ¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ëɬÍפ¬¤¢¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£

# adjkerntz -i

¤³¤¦¤¹¤ì¤Ð¡¢ ³Î¼Â¤ËÃÏ°è»þ¹ï¤¬Àµ¤·¤¯ÀßÄꤵ¤ì¤Þ¤¹ — ¤³¤ì¤òÂÕ¤ë¤È¡¢ ¤¢¤È¤¢¤ÈÌäÂê¤Ë¤Ê¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£

18.7.7. /usr/obj ¤Îºï½ü

¥·¥¹¥Æ¥à¤¬ºÆ¹½ÃÛ¤µ¤ì¤ë»þ¡¢¹½ÃÛ¤µ¤ì¤¿¤â¤Î¤Ï (¥Ç¥Õ¥©¥ë¥È¤Ç) /usr/obj °Ê²¼¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤µ¤ì¡¢ ¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Î²¼¤Ï /usr/src ¤ÈƱ¤¸¹½Â¤¤È¤Ê¤ê¤Þ¤¹¡£

¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ò¤¢¤é¤«¤¸¤áºï½ü¤·¤Æ¤ª¤¯¤³¤È¤Ë¤è¤ê¡¢ make buildworld ¤Î¹ÔÄø¤Ë¤«¤«¤ë»þ´Ö¤òû½Ì¤µ¤»¡¢ °Í¸ÌäÂê¤ËǺ¤Þ¤µ¤ì¤ë¤è¤¦¤Ê¥È¥é¥Ö¥ë¤ò²óÈò¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

/usr/obj °Ê²¼¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢ Êѹ¹ÉÔ²Ä (immutable) ¥Õ¥é¥° (¾ÜºÙ¤Ï chflags(1) »²¾È) ¤¬¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤ë¤â¤Î¤¬¤¢¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£ ¤½¤Î¤¿¤á¡¢¤Þ¤ººÇ½é¤Ë¤½¤Î¥Õ¥é¥°¤òÊѹ¹¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£

# cd /usr/obj
# chflags -R noschg *
# rm -rf *

18.7.8. ¥Ù¡¼¥¹¥·¥¹¥Æ¥à¤ÎºÆ¹½ÃÛ

18.7.8.1. ½ÐÎÏ¥á¥Ã¥»¡¼¥¸¤ÎÊݸ

¼Â¹Ô¤µ¤ì¤ë make(1) ¤«¤é¤Î½ÐÎϤϡ¢¥Õ¥¡¥¤¥ë¤ËÊݸ¤¹¤ë¤ÈÎɤ¤¤Ç¤·¤ç¤¦¡£ ¤â¤·¡¢²¿¤«¾ã³²¤¬È¯À¸¤·¤¿¾ì¹ç¡¢¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤Î¥³¥Ô¡¼¤ò¼ê¸µ¤Ë»Ä¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ²¿¤¬°­¤«¤Ã¤¿¤Î¤«¡¢¤¢¤Ê¤¿¼«¿È¤¬¤½¤ì¤«¤éÍý²ò¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Ê¤¤¤«¤â ÃΤì¤Þ¤»¤ó¤¬¡¢FreeBSD ¥á¡¼¥ê¥ó¥°¥ê¥¹¥È¤ËÅê¹Æ¤·¤Æ¡¢ 狼¾¤Î¿Í¤«¤é¤Î½õ¸À¤òÆÀ¤ë¤¿¤á¤ËÍøÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

¥Õ¥¡¥¤¥ë¤ËÊݸ¤¹¤ëºÇ¤â´Êñ¤ÊÊýË¡¤Ï¡¢script(1) ¥³¥Þ¥ó¥É¤ò »È¤¤¡¢°ú¿ô¤Ë½ÐÎϤòÊݸ¤·¤¿¤¤¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤹ¤ë¤³¤È¤Ç¤¹¡£ ¤³¤ì¤ò make world ¤ÎľÁ°¤Ë¹Ô¤Ê¤¤¡¢ºÆ¹½ÃÛ¤¬½ªÎ»¤·¤Æ¤«¤é exit ¤ÈÆþÎϤ¹¤ë¤È¡¢½ÐÎϤòÊݸ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

# script /var/tmp/mw.out
Script started, output file is /var/tmp/mw.out
# make TARGET
… compile, compile, compile …
# exit
Script done, …

½ÐÎϤòÊݸ¤¹¤ë¾ì¹ç¡¢/tmp ¥Ç¥£¥ì¥¯¥È¥ê¤ÎÃæ¤Ë Êݸ¤·¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£ ¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¼¡¤ÎºÆµ¯Æ°¤Çºï½ü¤µ¤ì¤Æ¤·¤Þ¤¦²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£ ½ÐÎϤÎÊݸ¤Ë¤Ï¡¢(¾å¤ÎÎã¤Î¤è¤¦¤Ë) /var/tmp¤ä root ¤Î¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê¤¬Å¬¤·¤Æ¤¤¤Þ¤¹¡£

18.7.8.2. ¥Ù¡¼¥¹¥·¥¹¥Æ¥à¤Î¹½ÃÛ

¤Þ¤º¡¢¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È¥ê¤ò /usr/src ¤Ë Êѹ¹¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£¼¡¤Î¤è¤¦¤Ë¼Â¹Ô¤·¤Æ¤¯¤À¤µ¤¤¡£

# cd /usr/src

(¤â¤Á¤í¤ó¡¢¥½¡¼¥¹¥³¡¼¥É¤¬Â¾¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢ /usr/src ¤Ç¤Ï¤Ê¤¯¡¢ ¥½¡¼¥¹¥³¡¼¥É¤Î¤¢¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ë°ÜÆ°¤·¤Æ¤¯¤À¤µ¤¤)¡£

make world ¤ò¹Ô¤Ê¤¦¤Ë¤Ï¡¢make(1) ¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£ ¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢Makefile ¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤«¤é¡¢ FreeBSD ¤ò¹½À®¤¹¤ë¥×¥í¥°¥é¥à¤ÎºÆ¹½ÃÛÊýË¡¤ä¡¢ ¤É¤¦¤¤¤¦½çÈ֤Ǥ½¤ì¤é¤ò¹½ÃÛ¤¹¤Ù¤­¤«¤È¤¤¤Ã¤¿¤è¤¦¤Ê »Ø¼¨¤òÆɤ߹þ¤ß¤Þ¤¹¡£

¥³¥Þ¥ó¥É¥é¥¤¥ó¤Î°ìÈÌŪ¤Ê½ñ¼°¤Ï¡¢¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£

# make -x -DVARIABLE target

¤³¤ÎÎã¤Ç¤Ï¡¢-x ¤¬ make(1) ¤ËÅϤµ¤ì¤ë¥ª¥×¥·¥ç¥ó¤Ë¤Ê¤ê¤Þ¤¹¡£ ¤É¤Î¤è¤¦¤Ê¥ª¥×¥·¥ç¥ó¤¬ÍøÍѤǤ­¤ë¤«¤Ë¤Ä¤¤¤Æ¤Ï¡¢¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò »²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£

-DVARIABLE ¤Ï¡¢ Makefile ¤ËÅϤµ¤ì¤ëÊÑ¿ô¤Ç¤¢¤ê¡¢ ¤³¤ÎÊÑ¿ô¤Ï Makefile ¤ÎÆ°ºî¤ò¥³¥ó¥È¥í¡¼¥ë¤·¤Þ¤¹¡£ ¤Þ¤¿¡¢/etc/make.conf ¤ÇÀßÄꤵ¤ì¤ëÊÑ¿ô¤â ƱÍͤǤ¹¡£¤³¤ì¤ÏÊÑ¿ô¤òÀßÄꤹ¤ë¤â¤¦°ì¤Ä¤ÎÊýË¡¤È¤·¤ÆÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

# make -DNO_PROFILE target

¤Ï¡¢¥×¥í¥Õ¥¡¥¤¥ëÈǤΥ饤¥Ö¥é¥ê¤ò¹½ÃÛ¤·¤Ê¤¤¤³¤È¤ò»ØÄꤹ¤ë ¤â¤¦°ì¤Ä¤Îµ­Ë¡¤Ç¡¢/etc/make.conf Ãæ¤Î

NO_PROFILE=    true 	#    Avoid compiling profiled libraries

¤Î¹Ô¤ËÂбþ¤·¤Þ¤¹¡£

target ¤Ï¡¢make(1) ¤Ë ¤É¤Î¤è¤¦¤ËÆ°ºî¤¹¤ë¤Î¤«¤ò»Ø¼¨¤¹¤ë¤¿¤á¤Î¤â¤Î¤Ç¤¹¡£ ³Æ¡¹¤Î Makefile ¤Ë¤Ï¡¢¿ô¿¤¯¤Î°Û¤Ê¤ë “¥¿¡¼¥²¥Ã¥È (target)” ¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Æ¡¢ »ØÄꤵ¤ì¤¿¥¿¡¼¥²¥Ã¥È¤Ë¤è¤Ã¤ÆÆ°ºî¤¬·è¤Þ¤ê¤Þ¤¹¡£

Makefile ¤Ë½ñ¤«¤ì¤Æ¤¤¤ë¥¿¡¼¥²¥Ã¥È¤Ë¤Ï¡¢ ¤¢¤Ê¤¿¤¬»ØÄꤷ¤Æ¤â°ÕÌ£¤ò»ý¤¿¤Ê¤¤¤â¤Î¤â´Þ¤Þ¤ì¤Þ¤¹¡£ ¤³¤ì¤é¤Ï¡¢¥·¥¹¥Æ¥à¤ÎºÆ¹½ÃÛ¤ËɬÍפÊÃʳ¬¤ò¡¢Â¿¤¯¤Î ¤µ¤é¤ËºÙ¤«¤¤Ãʳ¬¤Ëʬ³ä¤¹¤ë¤¿¤á¡¢¹½ÃۤβáÄø¤ÇÍøÍѤµ¤ì¤ë¤â¤Î¤Ç¤¹¡£

ÂçÄñ¤Î¾ì¹ç¡¢make(1) ¤Ë¥Ñ¥é¥á¡¼¥¿¤ò»ØÄꤹ¤ëɬÍפϤʤ¤¤Ç¤·¤ç¤¦¤«¤é¡¢ ¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ï¼¡¤Î¤è¤¦¤Ê¤â¤Î¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦¡£

# make target

¤³¤³¤Ç¡¢target ¤Ï¡¢Â¿¤¯¤Î¥Ó¥ë¥É¥ª¥×¥·¥ç¥ó¤Î¤É¤ì¤«¤Ë¤Ê¤ê¤Þ¤¹¡£ ºÇ½é¤Î¥¿¡¼¥²¥Ã¥È¤Ï¤¤¤Ä¤â buildworld ¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦¡£

¤½¤Î̾Á°¤¬¼¨¤¹¤è¤¦¤Ë¡¢buildworld ¤Ï /usr/obj °Ê²¼¤Ë¿·¤·¤¤´°Á´¤Ê ¥Ç¥£¥ì¥¯¥È¥ê¥Ä¥ê¡¼¤ò¹½ÃÛ¤·¡¢¤â¤¦°ì¤Ä¤Î¥¿¡¼¥²¥Ã¥È installworld ¤Ï¡¢¤½¤Î¥Ä¥ê¡¼¤ò ¸½ºß¤Î¥Þ¥·¥ó¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤·¤Þ¤¹¡£

ÁªÂò»è¤¬Ê¬¤±¤é¤ì¤Æ¤¤¤ë¤³¤È¤Ï¡¢Æó¤Ä¤ÎÍýͳ¤«¤éÈó¾ï¤ËÍ­ÍѤǤ¹¡£ ¤Þ¤ºÂè°ì¤Ë¡¢²ÔƯÃæ¤Î¥·¥¹¥Æ¥à¤ËÁ´¤¯±Æ¶Á¤òÍ¿¤¨¤ë¤³¤È¤Ê¤¯¡¢ °ÂÁ´¤Ë¥·¥¹¥Æ¥à¤Î¹½ÃÛºî¶È¤ò¹Ô¤¨¤ë¤³¤È¤Ç¤¹¡£ ¹½ÃÛºî¶È¤Ï “²¿¤Ë¤â°Í¸¤»¤ºÆÈΩ¤·¤Æ¹Ô¤Ê¤ï¤ì¤ë” ¤¿¤á¡¢ ¥Þ¥ë¥Á¥æ¡¼¥¶¥â¡¼¥É¤Ç²ÔƯÃæ¤Î¥·¥¹¥Æ¥à¤Ç¤â¡¢²¿°ì¤Ä °­±Æ¶Á¤òÍ¿¤¨¤º¤Ë buildworld ¤ò ¼Â¹Ô¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¤¿¤À¤·¡¢installworld ¤Ï ¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤Ç¹Ô¤Ê¤¦¤³¤È¤ò¤ª¤¹¤¹¤á¤·¤Þ¤¹¡£

ÂèÆó¤Ë¡¢NFS ¥Þ¥¦¥ó¥È¤òÍøÍѤ¹¤ë¤³¤È¤Ç¡¢ ¥Í¥Ã¥È¥ï¡¼¥¯¾å¤ÎÊ£¿ô¤Î¥Þ¥·¥ó¤ò¥¢¥Ã¥×¥°¥ì¡¼¥É¤¹¤ë¤³¤È¤¬ ²Äǽ¤ÊÅÀ¤¬¤¢¤²¤é¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð»°Âæ¤Î¥Þ¥·¥ó¡¢ A, B, C ¤ò¥¢¥Ã¥×¥°¥ì¡¼¥É¤·¤¿¤¤¾ì¹ç¤Ë¤Ï¡¢¤Þ¤º¥Þ¥·¥ó A ¤Ç make buildworld ¤È make installworld ¤ò¼Â¹Ô¤·¤Þ¤¹¡£ ¤½¤ì¤«¤é¡¢¥Þ¥·¥ó B ¤È¥Þ¥·¥ó C ¤Ç¥Þ¥·¥ó A ¤Î /usr/src ¤È /usr/obj ¤ò NFS ¥Þ¥¦¥ó¥È¤·¡¢make installworld ¤È¤¹¤ë¤³¤È¤Ç ¹½ÃۺѤߤΥ·¥¹¥Æ¥à¤ò³Æ¥Þ¥·¥ó¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¤Î¤Ç¤¹¡£

world ¥¿¡¼¥²¥Ã¥È¤âÍøÍѲÄǽ¤Ç¤¹¤¬¡¢ ¤³¤Î¥¿¡¼¥²¥Ã¥È¤ÎÍøÍѤϿ侩¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£

¼¡¤Î¥³¥Þ¥ó¥É

# make buildworld

¤ò¼Â¹Ô¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤³¤Ç make ¤Ë -j ¥ª¥×¥·¥ç¥ó¤ò¤Ä¤±¤ë¤È¡¢ Ʊ»þ¤Ë¤¤¤¯¤Ä¤«¤Î¥×¥í¥»¥¹¤òÀ¸À®¤µ¤»¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¤³¤Îµ¡Ç½¤Ï¥Þ¥ë¥Á CPU ¥Þ¥·¥ó¤ÇÆä˸ú²Ì¤òȯ´ø¤·¤Þ¤¹¡£ ¹½ÃÛ²áÄø¤ÎÂçÉôʬ¤Ç¤Ï CPU À­Ç½¤Î¸Â³¦¤è¤ê I/O À­Ç½¤Î¸Â³¦¤ÎÊý¤¬ÌäÂê¤È¤Ê¤ë¤¿¤á¡¢¥·¥ó¥°¥ë CPU ¥Þ¥·¥ó¤Ë¤â¸ú²Ì¤¬¤¢¤ê¤Þ¤¹¡£

ÉáÄ̤Υ·¥ó¥°¥ë CPU ¥Þ¥·¥ó¤Ç°Ê²¼¤Î¥³¥Þ¥ó¥É

# make -j4 buildworld

¤ò¼Â¹Ô¤¹¤ë¤È¡¢make(1) ¤ÏºÇÂç 4 ¸Ä¤Þ¤Ç¤Î¥×¥í¥»¥¹¤òƱ»þ¤Ë¼Â¹Ô¤·¤Þ¤¹¡£ ¥á¡¼¥ê¥ó¥°¥ê¥¹¥È¤ËÅê¹Æ¤µ¤ì¤¿·Ð¸³Åª¤ÊÊó¹ð¤Ë¤è¤ë¤È¡¢ 4 ¸Ä¤È¤¤¤¦»ØÄ꤬ºÇ¤âÎɤ¤¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ò¼¨¤¹¤è¤¦¤Ç¤¹¡£

¤â¤·¡¢Ê£¿ô¤Î CPU ¤òÈ÷¤¨¤¿¥Þ¥·¥ó¤Ç SMP ÀßÄ꤬¹Ô¤Ê¤ï¤ì¤¿¥«¡¼¥Í¥ë¤ò ÍøÍѤ·¤Æ¤¤¤ë¤Ê¤é¡¢6 ¤«¤é 10 ¤Î´Ö¤ÎÃͤòÀßÄꤷ¡¢Â®ÅÙ¤¬¤É¤ì¤¯¤é¤¤ ¸þ¾å¤¹¤ë¤«³Îǧ¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£

18.7.8.3. ¥·¥¹¥Æ¥à¤Î¹½Ãۤˤ«¤«¤ë»þ´Ö

¹½ÃÛ»þ´Ö¤ò·è¤á¤ëÍ×ÁǤϤµ¤Þ¤¶¤Þ¤¢¤ê¤Þ¤¹¤¬¡¢ ½½Ê¬¿·¤·¤¤¥Þ¥·¥ó¤Ç¤¢¤ì¤Ð¡¢ ¥È¥ê¥Ã¥¯¤ä¶áÆ»¤ò»È¤ï¤º¤ËÉáÄ̤˹½ÃÛ¤·¤¿¾ì¹ç¡¢FreeBSD-STABLE ¤Î¹½ÃÛ¤Ë¤Ï 1, 2 »þ´Ö¤·¤«¤«¤«¤é¤Ê¤¤¤Ç¤·¤ç¤¦¡£ FreeBSD-CURRENT ¤Î¹½Ãۤϡ¢¤â¤¦¾¯¤·»þ´Ö¤¬¤«¤«¤ê¤Þ¤¹¡£

18.7.9. ¿·¤·¤¤¥«¡¼¥Í¥ë¤Î¹½Ãۤȥ¤¥ó¥¹¥È¡¼¥ë

¿·¤·¤¤¥·¥¹¥Æ¥à¤ÎÁ´µ¡Ç½¤ò´°Á´¤ËÍøÍѤǤ­¤ë¤è¤¦¤Ë¤¹¤ë¤Ë¤Ï¡¢ ¥«¡¼¥Í¥ë¤ÎºÆ¹½ÃÛ¤ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ ºÆ¹½Ãۤϡ¢¤¢¤ë¼ï¤Î¥á¥â¥ê¹½Â¤ÂΤ¬Êѹ¹¤µ¤ì¤¿»þ¤Ë¤ÏÆäËɬ¿Ü¤Ç¤¢¤ê¡¢ ps(1) ¤ä top(1) ¤Î¤è¤¦¤Ê¥×¥í¥°¥é¥à¤Ï¡¢ ¥«¡¼¥Í¥ë¤È¥½¡¼¥¹¥³¡¼¥É¤Î¥Ð¡¼¥¸¥ç¥ó¤¬°ìÃפ·¤Ê¤¤¤ÈÀµ¾ï¤ËÆ°ºî¤·¤Ê¤¤¤Ç¤·¤ç¤¦¡£

ºÇ¤â´Êñ¤Ç°ÂÁ´¤Ë¥«¡¼¥Í¥ë¤ÎºÆ¹½ÃÛ¤ò¹Ô¤Ê¤¦ÊýË¡¤Ï¡¢ GENERIC ¤ò»È¤Ã¤¿¥«¡¼¥Í¥ë¤ò¹½ÃÛ¡¦¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤³¤È¤Ç¤¹¡£ GENERIC ¤Ë¤Ï¤¢¤Ê¤¿¤¬É¬ÍפȤ¹¤ë¥Ç¥Ð¥¤¥¹¤¬¤¹¤Ù¤Æ´Þ¤Þ¤ì¤Æ¤¤¤Ê¤¤ ¤«¤âÃΤì¤Þ¤»¤ó¤¬¡¢¤¢¤Ê¤¿¤Î¥·¥¹¥Æ¥à¤ò¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤Ç µ¯Æ°¤µ¤»¤ë¤Î¤ËɬÍפʤâ¤Î¤Ï¤¹¤Ù¤ÆÆþ¤Ã¤Æ¤¤¤Þ¤¹¡£ ¤³¤ì¤Ï¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤Î¥·¥¹¥Æ¥à¤¬¤­¤Á¤ó¤ÈÆ°ºî¤¹¤ë¤«¤É¤¦¤« Ä´¤Ù¤ëÎɤ¤ÊýË¡¤Î°ì¤Ä¤Ç¤¹¡£ GENERIC ¤Çµ¯Æ°¤·¤Æ¤«¤é¡¢ ¤¢¤Ê¤¿¤¬¤¤¤Ä¤â»È¤Ã¤Æ¤¤¤ë¥«¡¼¥Í¥ë¥³¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó¥Õ¥¡¥¤¥ë¤ò »È¤Ã¤Æ¿·¤·¤¤¥«¡¼¥Í¥ë¤ò¹½ÃÛ¤¹¤ë¤³¤È¤Ç¡¢ ¥·¥¹¥Æ¥à¤¬Àµ¾ï¤ËÆ°ºî¤·¤Æ¤¤¤ë¤«¤É¤¦¤«³Î¤«¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

FreeBSD ¤Ç¤Ï¡¢¿·¤·¤¤¥«¡¼¥Í¥ë¤ò¹½ÃÛ¤¹¤ëÁ°¤Ë build world ¤ò¹Ô¤¦¤³¤È¤¬½ÅÍפǤ¹¡£

注意: ¥«¥¹¥¿¥à¥«¡¼¥Í¥ë¤ò¹½ÃÛ¤·¤¿¤¤¾ì¹ç¡¢´û¤Ë¥³¥ó¥Õ¥£¥°¥ì¡¼ ¥·¥ç¥ó¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¤Ê¤é¤Ð¡¢Ã±¤Ë KERNCONF=MYKERNEL ¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤¡£

# cd /usr/src
# make buildkernel KERNCONF=MYKERNEL
# make installkernel KERNCONF=MYKERNEL

¤Ê¤ª¡¢kern.securelevel ¤ò 1 ¤è¤êÂ礭¤¯ ¤·¤Æ¤¤¤Æ¡¢¤«¤Ä¥«¡¼¥Í¥ë¤Î¥Ð¥¤¥Ê¥ê¥Õ¥¡¥¤¥ë ¤Ë noschg ¤Î¤è¤¦¤Ê¥Õ¥é¥°¤òÀßÄꤷ¤Æ¤¤¤ë¾ì¹ç ¤Ï¡¢installkernel ¤ò¹Ô¤¦¤Î¤Ë¥·¥ó¥°¥ë ¥æ¡¼¥¶¥â¡¼¥É¤Ë°Ü¹Ô¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£¤½¤ì°Ê³°¤Î¾ì¹ç¤Ï¡¢¥Þ¥ë ¥Á¥æ¡¼¥¶¥â¡¼¥É¤Ç¤³¤ì¤é¤Î¥³¥Þ¥ó¥É¤òÌäÂê¤Ê¤¯Æ°¤«¤»¤ë¤Ï¤º¤Ç¤¹¡£ kern.securelevel ¤Ë¤Ä¤¤¤Æ¾Ü¤·¤¯¤Ï init(8) ¤ò¡¢¥Õ¥¡¥¤¥ë¤ÎÍÍ¡¹¤Ê¥Õ¥é¥°¤Ë¤Ä¤¤¤Æ¾Ü¤·¤¯¤Ï chflags(1) ¤ò¤´Í÷¤¯¤À¤µ¤¤¡£

18.7.10. ¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤ÇºÆµ¯Æ°¤¹¤ë

¿·¤·¤¤¥«¡¼¥Í¥ë¤¬Æ°ºî¤¹¤ë¤«¤É¤¦¤«¥Æ¥¹¥È¤¹¤ë¤¿¤á¤Ë¡¢ ¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤ÇºÆµ¯Æ°¤¹¤ë¤Ù¤­¤Ç¤¹¡£ ¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤Ç¤Îµ¯Æ°¤Ï¡¢ 項18.7.6 ¤Ë½ñ¤«¤ì¤Æ¤¤¤ë¼ê½ç¤Ë½¾¤Ã¤Æ¤¯¤À¤µ¤¤¡£

18.7.11. ¿·¤·¤¤¥·¥¹¥Æ¥à¥Ð¥¤¥Ê¥ê¤Î¥¤¥ó¥¹¥È¡¼¥ë

¼¡¤Ë¡¢¤³¤³¤Ç installworld ¤ò»È¤¦¤³¤È¤Ç¿·¤·¤¤¥·¥¹¥Æ¥à¥Ð¥¤¥Ê¥ê¤Î¥¤¥ó¥¹¥È¡¼¥ë¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£

¤½¤ì¤Ë¤Ï¡¢°Ê²¼¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¤¯¤À¤µ¤¤¡£

# cd /usr/src
# make installworld

注意: make buildworld ¤Ç¥³¥Þ¥ó¥É¥é¥¤¥ó¤«¤é ÊÑ¿ô¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢Æ±¤¸»ØÄê¤ò make installworld ¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¤â »ØÄꤷ¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ ¤¿¤À¤·¡¢¥ª¥×¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¤Ï¤½¤Î¸Â¤ê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£ ¤¿¤È¤¨¤Ð -j ¤Ï installworld ¤ÇÀäÂФ˻ȤäƤϤ¤¤±¤Þ¤»¤ó¡£

¤¿¤È¤¨¤Ð°Ê²¼¤Î¤è¤¦¤Ë¼Â¹Ô¤·¤¿¤Ê¤é¡¢

# make -DNO_PROFILE buildworld

°Ê²¼¤Î¤è¤¦¤Ë¤·¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£

# make -DNO_PROFILE installworld

¤â¤·¤½¤¦¤·¤Ê¤«¤Ã¤¿¾ì¹ç¡¢ make buildworld ¤ÎÃʳ¬¤Ç¹½ÃÛ¤µ¤ì¤Æ¤¤¤Ê¤¤ ¥×¥í¥Õ¥¡¥¤¥ëÈǥ饤¥Ö¥é¥ê¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤è¤¦¤È¤·¤Æ¤·¤Þ¤¦¤Ç¤·¤ç¤¦¡£

18.7.12. make installworld ¤Ç¹¹¿·¤µ¤ì¤Ê¤¤¥Õ¥¡¥¤¥ë¤Î¹¹¿·

¥·¥¹¥Æ¥à¤ÎºÆ¹½Ãۤϡ¢¤¤¤¯¤Ä¤«¤Î¥Ç¥£¥ì¥¯¥È¥ê ( Æäˡ¢/etc ¤ä /var ¤ä /usr) ¤Ë¤ª¤¤¤Æ¡¢ ¿·µ¬¤ËƳÆþ¤µ¤ì¤¿¤ê¡¢Êѹ¹¤µ¤ì¤¿ÀßÄê¥Õ¥¡¥¤¥ë¤Ë¤è¤ë ¥Õ¥¡¥¤¥ë¤Î¹¹¿·¤Ï¹Ô¤Ê¤ï¤ì¤Þ¤»¤ó¡£

¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤ò¹¹¿·¤¹¤ë¤â¤Ã¤È¤â´Êñ¤ÊÊýË¡¤Ï¡¢mergemaster(8) ¤ò»È¤¦¤³¤È¤Ç¤¹¡£¤³¤ì¤Ï¼«Ê¬¤Ç¤ä¤ë¤³¤È¤â²Äǽ¤Ê¤Î¤Ç¡¢¤½¤¦¤·¤Æ¤â ¤«¤Þ¤¤¤Þ¤»¤ó¡£ ¤¤¤º¤ì¤ÎÊýË¡¤Ë½¾¤¦¤Ë¤»¤è¡¢ ɬ¤º /etc ¤Î¥Ð¥Ã¥¯¥¢¥Ã¥×¤ò¼è¤Ã¤ÆÉÔ¬¤Î»öÂÖ¤ËÈ÷¤¨¤Æ¤¯¤À¤µ¤¤¡£

18.7.12.1. mergemaster

´ó¹Æ: Tom Rhodes.

mergemaster(8) ¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Ï Bourne ¥·¥§¥ë¥¹¥¯¥ê¥×¥È¤Ç¡¢ /etc ¤Ë¤¢¤ëÀßÄê¥Õ¥¡¥¤¥ë¤È¥½¡¼¥¹¥Ä¥ê¡¼¤Î /usr/src/etc ¤Ë¤¢¤ëÀßÄê¥Õ¥¡¥¤¥ë¤Î°ã¤¤¤ò³Îǧ¤¹¤ë¤Î¤ò¼êÅÁ¤Ã¤Æ¤¯¤ì¤Þ¤¹¡£ ¤³¤ì¤ò»È¤¦¤Î¤¬¡¢¥½¡¼¥¹¥Ä¥ê¡¼¤Ë¤¢¤ëÀßÄê¥Õ¥¡¥¤¥ë¤Ë¥·¥¹¥Æ¥à¤ÎÀßÄê¥Õ¥¡¥¤¥ë¤ò ¹¹¿·¤¹¤ë¤¿¤á¤Ë¿ä¾©¤µ¤ì¤ëÊýË¡¤Ç¤¹¡£

»Ï¤á¤ë¤Ë¤Ï¡¢¥×¥í¥ó¥×¥È¤«¤éñ¤Ë mergemaster ¤ÈÆþÎϤ·¤Æ¡¢ ¥Õ¥¡¥¤¥ë¤ÎÈæ³Ó¤ò³«»Ï¤¹¤ë¤Î¤ò¸«¤Æ¤¯¤À¤µ¤¤¡£ mergemaster ¤Ï / ¤òµ¯ÅÀ¤È¤·¤¿°ì»þŪ¤Ê¥ë¡¼¥È´Ä¶­¤ò¹½ÃÛ¤·¡¢ ¤µ¤Þ¤¶¤Þ¤Ê¥·¥¹¥Æ¥àÀßÄê¥Õ¥¡¥¤¥ë¤ò (ÌõÃí: ¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï /var/tmp/temproot ¤Ë) ÃÖ¤¤¤Æ¤¤¤­¤Þ¤¹¡£ ¼¡¤Ë¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤Ï¸½ºß¥·¥¹¥Æ¥à¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤ÈÈæ³Ó¤µ¤ì¤Þ¤¹¡£ ¤³¤Î»þÅÀ¤Ç¡¢°Û¤Ê¤ë¥Õ¥¡¥¤¥ë¤Ï diff(1) ·Á¼°¤Ç¼¨¤µ¤ì¡¢ + ¤Îµ­¹æ¤ÏÄɲäޤ¿¤ÏÊѹ¹¤µ¤ì¤¿¹Ô¤òɽ¤·¡¢ - ¤Ï´°Á´¤Ëºï½ü¤µ¤ì¤¿¤«¿·¤·¤¯ÃÖ¤­´¹¤¨¤é¤ì¤¿¹Ô¤òɽ¤·¤Þ¤¹¡£ diff(1) ¤Î½ñ¼°¤È¥Õ¥¡¥¤¥ë¤Î°ã¤¤¤Îɽ¼¨ÊýË¡¤Ë¤Ä¤¤¤Æ¤Î¤è¤ê¾Ü¤·¤¤¾ðÊó¤Ï¡¢ diff(1) ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£

mergemaster(8) ¤Ï¿©¤¤°ã¤¤¤¬µ¯¤­¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤ò¤½¤ì¤¾¤ì¼¨¤·¤Þ¤¹¡£ ¤³¤³¤Ç¤Ï¿·¤·¤¤¥Õ¥¡¥¤¥ë (°ì»þ¥Õ¥¡¥¤¥ë¤È¤·¤Æ»²¾È¤µ¤ì¤Æ¤¤¤Þ¤¹) ¤òºï½ü¤¹¤ë¤«¡¢ °ì»þ¥Õ¥¡¥¤¥ë¤ò¤½¤Î¤Þ¤Þ¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤«¡¢ °ì»þ¥Õ¥¡¥¤¥ë¤È¸½ºß¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤òÅý¹ç¤¹¤ë¤«¡¢ ¤â¤·¤¯¤Ï diff(1) ¤Î·ë²Ì¤ò¤â¤¦°ìÅÙ¸«¤ë¤«ÁªÂò¤Ç¤­¤Þ¤¹¡£

°ì»þ¥Õ¥¡¥¤¥ë¤Îºï½ü¤òÁª¤Ö¤È¡¢mergemaster(8) ¤Ë¸½ºß¤Î¥Õ¥¡¥¤¥ë¤òÊѹ¹¤·¤Ê¤¤¤Ç¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤òºï½ü¤»¤è¤ÈÅÁ¤¨¤Þ¤¹¡£ ¤³¤ÎÁªÂò¤Ï¡¢¸½ºß¤Î¥Õ¥¡¥¤¥ë¤òÊѹ¹¤¹¤ëÍýͳ¤¬Ê¬¤«¤é¤Ê¤¤¤Î¤Ç¤¢¤ì¤Ð¡¢ ¤ª´«¤á¤Ç¤­¤Þ¤»¤ó¡£ mergemaster(8) ¤Î¥×¥í¥ó¥×¥È¤Ç ? ¤È¥¿¥¤¥×¤¹¤ì¤Ð¡¢ ¤¤¤Ä¤Ç¤â¥Ø¥ë¥×¤¬¸«¤é¤ì¤Þ¤¹¡£ ¥Õ¥¡¥¤¥ë¤Î¥¹¥­¥Ã¥×¤òÁª¤Ö¤È¡¢Â¾¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤ò½ª¤¨¤¿¤¢¤È¡¢ ¤â¤¦°ìÅÙ¤½¤Î¥Õ¥¡¥¤¥ë¤¬Ä󼨤µ¤ì¤Þ¤¹¡£

°ì»þ¥Õ¥¡¥¤¥ë¤ò¤½¤Î¤Þ¤Þ¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤³¤È¤òÁª¤Ö¤È¡¢ ¸½ºß¤Î¥Õ¥¡¥¤¥ë¤ò¿·¤·¤¤¥Õ¥¡¥¤¥ë¤ÇÃÖ¤­´¹¤¨¤Þ¤¹¡£ ¤Û¤È¤ó¤É¤Î¼ê¤ò²Ã¤¨¤Æ¤¤¤Ê¤¤¥Õ¥¡¥¤¥ë¤Ï¡¢ ¤³¤ì¤¬°ìÈ֤褤ÁªÂò¤Ç¤¹¡£

¥Õ¥¡¥¤¥ë¤ÎÅý¹ç¤òÁª¤ó¤À¾ì¹ç¡¢ ¥Æ¥­¥¹¥È¥¨¥Ç¥£¥¿¤¬µ¯Æ°¤µ¤ì¡¢Î¾Êý¤Î¥Õ¥¡¥¤¥ë¤ÎÃæ¿È¤¬Ä󼨤µ¤ì¤Þ¤¹¡£ ²èÌ̾å¤ËʤÖξÊý¤Î¥Õ¥¡¥¤¥ë¤ò¸«¤Æ¿·¤·¤¤¥Õ¥¡¥¤¥ë¤òºîÀ®¤¹¤ë¤¿¤á¤ËξÊý¤«¤éɬÍפÊÉôʬ¤òÁªÂò¤·¡¢ 2 ¤Ä¤Î¥Õ¥¡¥¤¥ë¤òÅý¹ç¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ʤó¤Ç¤¤¤ë¥Õ¥¡¥¤¥ë¤òÈæ³Ó¤¹¤ë¤È¤­¡¢ l ¥­¡¼¤Çº¸Â¦¤ÎÃæ¿È¤òÁªÂò¤·¡¢ r ¥­¡¼¤Ç±¦Â¦¤ÎÃæ¿È¤òÁªÂò¤·¤Þ¤¹¡£ ºÇ½ª½ÐÎϤϺ¸±¦Î¾Êý¤ÎÉôʬ¤Ç¤Ç¤­¤¿¥Õ¥¡¥¤¥ë¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦¡£ ¤³¤Î¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¤¿¤¤¤Æ¤¤¡¢¤³¤Î¥ª¥×¥·¥å¥ó¤Ï¥æ¡¼¥¶¤¬ÀßÄê¤òÊѹ¹¤·¤¿¥Õ¥¡¥¤¥ë¤Ë»È¤ï¤ì¤Þ¤¹¡£

diff(1) ¤Î·ë²Ì¤ò¤â¤¦°ìÅÙ¸«¤ë¡¢¤òÁªÂò¤¹¤ë¤È¡¢ ¤Á¤ç¤¦¤ÉÀè¤Û¤É mergemaster(8) ¤¬ÁªÂò»è¤òɽ¼¨¤¹¤ëÁ°¤ÈƱ¤¸¤è¤¦¤Ë¡¢ ¥Õ¥¡¥¤¥ë¤ÎÁê°ÛÅÀ¤ò¸«¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

mergemaster(8) ¤¬¥·¥¹¥Æ¥à¥Õ¥¡¥¤¥ë¤ÎÈæ³Ó¤ò½ª¤¨¤¿¤¢¤È¡¢ ¾¤Î¥ª¥×¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¤â¥×¥í¥ó¥×¥È¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£ mergemaster(8) ¤¬¡¢¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤òºÆ¹½ÃÛ¤·¤¿¤¤¤«¤É¤¦¤«¿Ò¤Í¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£ ºÇ¸å¤Ë»Ä¤Ã¤¿°ì»þ¥Õ¥¡¥¤¥ë¤òºï½ü¤¹¤ë¤«¤É¤¦¤«¤ò¿Ò¤Í¤Æ½ªÎ»¤·¤Þ¤¹¡£

18.7.12.2. ¼êÆ°¤Ç¤Î¹¹¿·

¼êÆ°¤Ç¹¹¿·¤¹¤ë¤³¤È¤òÁª¤ó¤À¾ì¹ç¡¢ ñ¤Ë¥Õ¥¡¥¤¥ë¤ò /usr/src/etc ¤«¤é /etc ¤Ë ¥³¥Ô¡¼¤·¤¿¤À¤±¤Ç¤ÏÀµ¾ï¤ËÆ°ºî¤µ¤»¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£ ¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢“¥¤¥ó¥¹¥È¡¼¥ë¤È¤¤¤¦ ¼ê½ç¤òƧ¤Þ¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤â¤Î” ¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£ /usr/src/etc ¥Ç¥£¥ì¥¯¥È¥ê¤Ï /etc ¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤½¤Î¤Þ¤ÞÃÖ¤­´¹¤¨¤é¤ì¤ë¤è¤¦¤Ê ¥³¥Ô¡¼¤Ç¤Ï¤Ê¤¤¤«¤é¤Ç¤¹¡£ ¤Þ¤¿¡¢/etc ¤Ë¤¢¤ë¤Ù¤­¥Õ¥¡¥¤¥ë¤Î¤¦¤Á¤Ç /usr/src/etc ¤Ë¤Ê¤¤¤â¤Î¤â¤¢¤ê¤Þ¤¹¡£

mergemaster(8) ¤ò (´«¤á¤é¤ì¤¿Ä̤ê) »È¤Ã¤Æ¤¤¤ë¤Î¤Ç¤¢¤ì¤Ð¡¢¼¡¤ÎÀá ¤Þ¤ÇÈô¤Ð¤·¤Æ¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£

¼êÆ°¤Ç¹Ô¤¦ºÝ¤Î °ìÈÖ´Êñ¤ÊÊýË¡¤Ï¡¢¥Õ¥¡¥¤¥ë¤ò¿·¤·¤¤¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¤«¤é¡¢ °ÊÁ°¤Î¤â¤Î¤È°Û¤Ê¤Ã¤Æ¤¤¤ëÉôʬ¤òÄ´¤Ù¤Æ¹¹¿·ºî¶È¤ò¹Ô¤Ê¤¦¤³¤È¤Ç¤¹¡£

´û¸¤Î /etc ¤ò¥Ð¥Ã¥¯¥¢¥Ã¥×¤¹¤ë ÍýÏÀŪ¤Ë¹Í¤¨¤Æ¡¢¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê¤¬¼«Æ°Åª¤Ë ½èÍý¤µ¤ì¤ë¤³¤È¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢Ç°¤Ë¤ÏÇ°¤òÆþ¤ì¤Æ¤ª¤¤¤Æ »¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð°Ê²¼¤Î¤è¤¦¤Ë¤·¤Æ¡¢ ´û¸¤Î /etc ¥Ç¥£¥ì¥¯¥È¥ê¤ò ¤É¤³¤«°ÂÁ´¤Ê¾ì½ê¤Ë¥³¥Ô¡¼¤·¤Æ¤ª¤­¤Þ¤·¤ç¤¦¡£

# cp -Rp /etc /etc.old

-R ¤ÏºÆµ¢Åª¤Ê¥³¥Ô¡¼¤ò¹Ô¤Ê¤¤¡¢ -p ¤Ï¥Õ¥¡¥¤¥ë¤Î¹¹¿·»þ´Ö¤ä½êÍ­¼Ô¤Ê¤É¤òÊݸ¤·¤Þ¤¹¡£

¤Þ¤¿¡¢¿·¤·¤¤ /etc ¤ä¤½¤Î¾¤Î¥Õ¥¡¥¤¥ë¤ò ¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤¿¤á¤Î¡¢²¾¤Î¥Ç¥£¥ì¥¯¥È¥ê¤òºî¤Ã¤Æ¤ª¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¡£ ²¾¥Ç¥£¥ì¥¯¥È¥ê¤Ï /var/tmp/root ¤ËÃÖ¤¯¤Î¤¬Îɤ¤¤Ç¤·¤ç¤¦¡£ ƱÍͤˡ¢É¬Íפʥµ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤â¤³¤Î²¼¤ËÃÖ¤­¤Þ¤¹¡£

# mkdir /var/tmp/root
# cd /usr/src/etc
# make DESTDIR=/var/tmp/root distrib-dirs distribution

¾å¤ÎÎã¤Ï¡¢É¬Íפʥǥ£¥ì¥¯¥È¥ê¹½Â¤¤ò¤Ä¤¯¤ê¡¢¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Þ¤¹¡£ /var/tmp/root °Ê²¼¤Ëºî¤é¤ì¤ë¡¢ ¤¿¤¯¤µ¤ó¤Î¶õ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ïºï½ü¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ °ìÈÖ´Êñ¤Ê¤ä¤êÊý¤Ï¡¢¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£

# cd /var/tmp/root
# find -d . -type d | xargs rmdir 2>/dev/null

¤³¤ì¤Ï¶õ¥Ç¥£¥ì¥¯¥È¥ê¤ò¤¹¤Ù¤Æºï½ü¤·¤Þ¤¹¡£ (¶õ¤Ç¤Ê¤¤¥Ç¥£¥ì¥¯¥È¥ê¤Ë´Ø¤¹¤ë·Ù¹ð¤òÈò¤±¤ë¤¿¤á¤Ë¡¢ ɸ½à¥¨¥é¡¼½ÐÎÏ¤Ï /dev/null ¤Ë ¥ê¥À¥¤¥ì¥¯¥È¤µ¤ì¤Þ¤¹)

¤³¤ÎÃʳ¬¤Î /var/tmp/root ¤Ë¤Ï¡¢ ËÜÍè / °Ê²¼¤Ë¤¢¤ë¤Ù¤­¥Õ¥¡¥¤¥ë¤¬ ¤¹¤Ù¤Æ´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£ ³Æ¥Õ¥¡¥¤¥ë¤ò½ç¤Ë¸«¤Æ¡¢´û¸¤Î¥Õ¥¡¥¤¥ë¤È°Û¤Ê¤ëÉôʬ¤ò Ä´¤Ù¤Æ¤¯¤À¤µ¤¤¡£

/var/tmp/root °Ê²¼¤Ë ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤ÎÃæ¤Ë¤Ï¡¢ “.” ¤«¤é»Ï¤Þ¤Ã¤Æ¤¤¤ë¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£ ¤³¤ì¤ò½ñ¤¤¤Æ¤¤¤ë»þÅÀ¤Ç¡¢¤½¤ì¤Ë³ºÅö¤¹¤ë¥Õ¥¡¥¤¥ë¤Ï /var/tmp/root/ ¤È /var/tmp/root/root/ ¤ÎÃæ¤Ë¤¢¤ë ¥·¥§¥ë¥¹¥¿¡¼¥È¥¢¥Ã¥×¥Õ¥¡¥¤¥ë¤À¤±¤Ç¤¹¤¬¡¢ ¾¤Ë¤â¤¢¤ë¤«¤âÃΤì¤Þ¤»¤ó (¤³¤ì¤Ï¡¢¤¢¤Ê¤¿¤¬¤³¤ì¤ò¤É¤Î»þÅÀ¤ÇÆɤó¤Ç¤¤¤ë¤«¤Ë°Í¸¤·¤Þ¤¹)¡£ ls -a ¤ò»È¤Ã¤Æ³Î¤«¤á¤Æ¤¯¤À¤µ¤¤¡£

¤â¤Ã¤È¤â´Êñ¤ÊÊýË¡¤Ï¡¢Æó¤Ä¤Î¥Õ¥¡¥¤¥ë¤òÈæ³Ó¤¹¤ë¥³¥Þ¥ó¥É diff(1) ¤ò»È¤¦¤³¤È¤Ç¤¹¡£

# diff /etc/shells /var/tmp/root/etc/shells

¤³¤ì¤Ï¡¢¤¢¤Ê¤¿¤Î /etc/shells ¥Õ¥¡¥¤¥ë¤È ¿·¤·¤¤ /var/tmp/root/etc/shells ¥Õ¥¡¥¤¥ë¤Î °Û¤Ê¤ëÉôʬ¤òɽ¼¨¤·¤Þ¤¹¡£ ¤³¤ì¤é¤ò¡¢¤¢¤Ê¤¿¤¬½ñ¤­´¹¤¨¤¿¤â¤Î¤ËÊѹ¹ÅÀ¤ò¥Þ¡¼¥¸¤¹¤ë¤«¡¢ ¤½¤ì¤È¤â´û¸¤Î¥Õ¥¡¥¤¥ë¤ò¿·¤·¤¤¤â¤Î¤Ç¾å½ñ¤­¤¹¤ë¤«¤ò ȽÃǤ¹¤ëºàÎÁ¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£

¿·¤·¤¤ root ¥Ç¥£¥ì¥¯¥È¥ê (/var/tmp/root) ¤Î̾Á°¤Ë ¥¿¥¤¥à¥¹¥¿¥ó¥×¤òÉÕ¤±¤Æ¤ª¤¯¤È¡¢ °Û¤Ê¤ë¥Ð¡¼¥¸¥ç¥ó´Ö¤ÎÈæ³Ó¤ò³Ú¤Ë¹Ô¤Ê¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£: ÉÑÈˤ˥·¥¹¥Æ¥à¤ÎºÆ¹½ÃÛ¤ò¹Ô¤Ê¤¦¤È¤¤¤¦¤³¤È¤Ï¡¢ /etc ¤Î¹¹¿·¤â¤Þ¤¿¡¢ÉÑÈˤ˹Ԥ¦É¬Íפ¬¤¢¤ë ¤È¤¤¤¦¤³¤È¤Ç¤¹¡£¤³¤ì¤Ï¤Á¤ç¤Ã¤È¼ê´Ö¤Î¤«¤«¤ëºî¶È¤Ç¤¹¡£

¤³¤Îºî¶È¤Ï¡¢¤¢¤Ê¤¿¤¬ /etc ¤Ë¥Þ¡¼¥¸¤·¤¿¡¢ ¿·¤·¤¯Êѹ¹¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ÎºÇ¿·¤Î¥»¥Ã¥È¤Î¥³¥Ô¡¼¤òÊݸ¤·¤Æ¤ª¤¯¤³¤È¤Ç ÁÇÁ᤯¹Ô¤Ê¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ²¼¤Î¼ê½ç¤Ï¡¢¤½¤ì¤ò¼Â¸½¤¹¤ë¤¿¤á¤Î°ì¤Ä¤ÎÊýË¡¤Ç¤¹¡£

  1. ÉáÄÌ¤Ë make world ¤·¤Þ¤¹¡£/etc ¤ä ¾¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ò¹¹¿·¤·¤¿¤¯¤Ê¤Ã¤¿¤È¤­¤Ï¡¢¥¿¡¼¥²¥Ã¥È ¥Ç¥£¥ì¥¯¥È¥ê¤Ë¡¢¤½¤Î¤È¤­¤ÎÆüÉդ˴ð¤Å¤¯Ì¾Á°¤ò¤Ä¤±¤Æ¤¯¤À¤µ¤¤¡£ ¤¿¤È¤¨¤Ð 1998 ǯ 2 ·î 14 Æü ¤À¤È¤¹¤ì¤Ð¡¢°Ê²¼¤Î¤è¤¦¤Ë¤·¤Þ¤¹¡£

    # mkdir /var/tmp/root-19980214
    # cd /usr/src/etc
    # make DESTDIR=/var/tmp/root-19980214 \
        distrib-dirs distribution
    
  2. ¾å¤ËÀâÌÀ¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢ ¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤éÊѹ¹ÅÀ¤ò¥Þ¡¼¥¸¤·¤Þ¤¹¡£

    ¤½¤Îºî¶È¤¬½ªÎ»¤·¤Æ¤â¡¢ /var/tmp/root-19980214 ¤ò ºï½ü¤·¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£

  3. ºÇ¿·ÈǤΥ½¡¼¥¹¤ò¥À¥¦¥ó¥í¡¼¥É¤·¤ÆºÆ¹½ÃÛ¤·¤¿¤é¡¢ ¥¹¥Æ¥Ã¥× 1 ¤Ë¤·¤¿¤¬¤Ã¤Æ¤¯¤À¤µ¤¤¡£º£Å٤ϡ¢ /var/tmp/root-19980221 (¹¹¿·ºî¶È¤¬°ì½µ´Ö¤ª¤­¤À¤Ã¤¿¾ì¹ç) ¤Î¤è¤¦¤Ê̾Á°¤Î¡¢¿·¤·¤¤¥Ç¥£¥ì¥¯¥È¥ê¤ò¤Ä¤¯¤ë¤³¤È¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦¡£

  4. ¤³¤ÎÃʳ¬¤Ç diff(1) ¤ò»ÈÍѤ·¡¢ Æó¤Ä¤Î¥Ç¥£¥ì¥¯¥È¥ê¤òÈæ³Ó¤¹¤ëºÆµ¢Åª diff ¤òºîÀ®¤¹¤ë¤³¤È¤Ç¡¢ °ì½µ´Ö¤Î´Ö¤Ë¹Ô¤Ê¤ï¤ì¤¿¥½¡¼¥¹¤Ø¤ÎÊѹ¹¤Ë¤è¤ëÁê°ãÅÀ¤òÄ´¤Ù¤Þ¤¹¡£

    # cd /var/tmp
    # diff -r root-19980214 root-19980221
    

    ¤³¤ì¤Ë¤è¤Ã¤ÆÊó¹ð¤µ¤ì¤ëÁê°ãÅÀ¤Ï¡¢ÂçÄñ¤Î¾ì¹ç¡¢ /var/tmp/root-19980221/etc ¤È /etc ¤È¤Î¾ì¹ç¤ËÈæ¤Ù¤Æ Èó¾ï¤Ë¾¯¤Ê¤¤¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£ Áê°ãÅÀ¤¬¾¯¤Ê¤¤¤¿¤á¡¢Êѹ¹ÅÀ¤ò´û¸¤Î /etc ¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥Þ¡¼¥¸¤¹¤ë¤³¤È¤Ï¡¢Èæ³ÓŪÍưפˤʤê¤Þ¤¹¡£

  5. ¤³¤³¤Þ¤Ç½ªÎ»¤·¤¿¤é¡¢/var/tmp/root-* ¤Î Æó¤Ä¤Î¤¦¤Á¡¢¸Å¤¤Êý¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ïºï½ü¤·¤Æ¹½¤¤¤Þ¤»¤ó¡£

    # rm -rf /var/tmp/root-19980214
    
  6. ¤³¤Î¹©Äø¤ò¡¢/etc ¤ØÊѹ¹ÅÀ¤ò¥Þ¡¼¥¸¤¹¤ë ɬÍפ¬¤¢¤ë¤¿¤Ó¡¢Ëè²ó·«¤êÊÖ¤·¤Þ¤¹¡£

¥Ç¥£¥ì¥¯¥È¥ê̾¤ÎÀ¸À®¤ò¼«Æ°²½¤¹¤ë¤Ë¤Ï¡¢date(1) ¤òÍøÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

# mkdir /var/tmp/root-`date "+%Y%m%d"`

18.7.13. ºÆµ¯Æ°

¤³¤ì¤Ç¡¢ºî¶È¤Ï¤ª¤·¤Þ¤¤¤Ç¤¹¡£ ¤¹¤Ù¤Æ¤¬¤¢¤ë¤Ù¤­Àµ¤·¤¤¾ì½ê¤Ë¸ºß¤¹¤ë¤³¤È¤ò¥Á¥§¥Ã¥¯¤·¤¿¤é¡¢ ¥·¥¹¥Æ¥à¤òºÆµ¯Æ°¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢Ã±¤Ë shutdown(8) ¤ò¼Â¹Ô¤¹¤ë¤À¤±¤Ç¤¹¡£

# shutdown -r now

18.7.14. ºî¶È¤Î´°Î»

¤³¤³¤Þ¤ÇÍè¤ì¤Ð¡¢FreeBSD ¥·¥¹¥Æ¥à¤Î¥¢¥Ã¥×¥°¥ì¡¼¥É¤ÏÀ®¸ù¤Ç¤¹¡£ ¤ª¤á¤Ç¤È¤¦¤´¤¶¤¤¤Þ¤¹¡£

¤â¤·¤Á¤ç¤Ã¤È¤·¤¿ÌäÂ꤬¤¢¤Ã¤¿¾ì¹ç¤Ç¤â¡¢ ¥·¥¹¥Æ¥à¤Î°ìÉô¤òºÆ¹½ÃÛ¤¹¤ë¤Î¤Ï´Êñ¤Ç¤¹¡£ ¤¿¤È¤¨¤Ð¡¢¥¢¥Ã¥×¥°¥ì¡¼¥É¤ÎÅÓÃæ¤Ç¸í¤Ã¤Æ /etc/magic ¤òºï½ü¤·¤Æ /etc ¤Ë¥Þ¡¼¥¸¤·¤Æ¤·¤Þ¤¤¡¢ ¤½¤Î·ë²Ì file ¥³¥Þ¥ó¥É¤¬Æ°ºî¤·¤Ê¤¯¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿¤è¤¦¤Ê¾ì¹ç¤ò¹Í¤¨¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ì¤ò½¤Éü¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ì¤Ð½¤Éü¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

# cd /usr/src/usr.bin/file
# make all install

18.7.15. ¼ÁÌä¤Ç¤¹¤«?

18.7.15.1. Êѹ¹¤¬¹Ô¤Ê¤ï¤ì¤¿¤é¡¢¤½¤ÎÅ٤˥·¥¹¥Æ¥à¤ÎºÆ¹½ÃÛ¤¬É¬Íפˤʤë¤Î¤Ç¤·¤ç¤¦¤«?
18.7.15.2. signal 11 (¤â¤·¤¯¤Ï¾¤Î¥·¥°¥Ê¥ëÈÖ¹æ) ¤Î¥¨¥é¡¼¤¬¤¿¤¯¤µ¤ó½Ð¤Æ ¥³¥ó¥Ñ¥¤¥ë¤¬¼ºÇÔ¤·¤Þ¤¹¡£²¿¤¬µ¯¤³¤Ã¤Æ¤¤¤ë¤ó¤Ç¤·¤ç¤¦¤«?
18.7.15.3. ½ªÎ»¤·¤¿¤é /usr/obj ¤òºï½ü¤·¤Æ¤â ¤«¤Þ¤¤¤Þ¤»¤ó¤«?
18.7.15.4. ¹½ÃÛ¤òÃæÃǤ·¤¿¾ì¹ç¡¢¤½¤Î¹½ÃÛ¤òÅÓÃ椫¤éºÆ³«¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤¹¤«?
18.7.15.5. ¤É¤Î¤è¤¦¤Ë¤¹¤ì¤Ð make world ¤ò¹â®²½¤Ç¤­¤Þ¤¹¤«?
18.7.15.6. ¤Ê¤Ë¤«°­¤¤¤³¤È¤¬¤¢¤Ã¤¿¤é¤É¤¦¤¹¤ì¤Ð¤¤¤¤¤Ç¤¹¤«?

18.7.15.1. Êѹ¹¤¬¹Ô¤Ê¤ï¤ì¤¿¤é¡¢¤½¤ÎÅ٤˥·¥¹¥Æ¥à¤ÎºÆ¹½ÃÛ¤¬É¬Íפˤʤë¤Î¤Ç¤·¤ç¤¦¤«?

¤½¤ì¤ÏÊѹ¹¤ÎÀ­¼Á¤Ë¤è¤ë¤Î¤Ç¡¢¤Ê¤ó¤È¤â¸À¤¨¤Þ¤»¤ó¡£ ¤¿¤È¤¨¤Ð¡¢Subversion ¤ò¼Â¹Ô¤·¤¿¤È¤­¡¢ºÇ¸å¤Ë¼Â¹Ô¤·¤¿¤È¤­¤«¤éÈæ¤Ù¤Æ ¼¡¤Ë¤¢¤²¤ë¤è¤¦¤Ê¥Õ¥¡¥¤¥ë¤¬¹¹¿·¤µ¤ì¤Æ¤¤¤¿¤È¤·¤Þ¤¹¡£

src/games/cribbage/instr.c
src/games/sail/pl_main.c
src/release/sysinstall/config.c
src/release/sysinstall/media.c
src/share/mk/bsd.port.mk

¤³¤Î¤È¤­¤Ë¤Ï¡¢²þ¤á¤Æ¥·¥¹¥Æ¥àÁ´ÂΤòºÆ¹½ÃÛ¤¹¤ëɬÍפϤʤ¤¤Ç¤·¤ç¤¦¡£ ŬÀڤʥµ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë°Ü¤Ã¤Æ make all install ¤ò¹Ô¤¦¤À¤±¤Ç¹¹¿·¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¤·¤«¤·¡¢¤â¤·²¿¤é¤«¤ÎÂ礭¤ÊÊѹ¹¤¬¹Ô¤Ê¤ï¤ì¤Æ¤¤¤ë¤È¤­¡¢¤¿¤È¤¨¤Ð src/lib/libc/stdlib ¤¬Êѹ¹¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢ ¥·¥¹¥Æ¥àÁ´ÂΤòºÆ¹½ÃÛ¤¹¤ë¤«¡¢¤â¤·¤¯¤Ï¤½¤Î¤¦¤Á¡¢ ¾¯¤Ê¤¯¤È¤âÀÅŪ¤Ë¥ê¥ó¥¯¤µ¤ì¤Æ¤¤¤ë¤â¤Î (¤È¡¢¤¢¤Ê¤¿¤¬Äɲä·¤¿ ÀÅŪ¤Ë¥ê¥ó¥¯¤µ¤ì¤¿¥×¥í¥°¥é¥à) ¤òºî¤êľ¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡£

·ë¶É¤Î¤È¤³¤í¡¢¤É¤Î»þÅÀ¤Ç¸½ºß¤Î¥·¥¹¥Æ¥à¤ò¥¢¥Ã¥×¥°¥ì¡¼¥É¤¹¤ë¤«¤Ï ¤¢¤Ê¤¿¤¬·è¤á¤ë¤³¤È¤Ç¤¹¡£ 2 ½µ´Ö¤´¤È¤Ë¥·¥¹¥Æ¥à¤òºÆ¹½ÃÛ¤·¡¢¤½¤Î 2 ½µ´Ö¤ÎÊѹ¹¤ò¼è¤ê¹þ¤á¤Ð ¹¬¤»¤«¤â¤·¤ì¤Þ¤»¤ó¤·¡¢ Êѹ¹¤Î¤¢¤Ã¤¿Éôʬ¤À¤±ºÆ¹½ÃÛ¤·¡¢°Í¸´Ø·¸¤ò³Î¤«¤á¤¿¤¤¤È¹Í¤¨¤ë¤«¤âÃΤì¤Þ¤»¤ó¡£

¤â¤Á¤í¤ó¡¢¤½¤ì¤é¤Ï¤É¤Î¤¯¤é¤¤¤ÎÉÑÅ٤ǥ¢¥Ã¥×¥°¥ì¡¼¥É¤·¤¿¤¤¤«¡¢ ¤½¤·¤Æ FreeBSD-STABLE ¤« FreeBSD-CURRENT ¤Î¤É¤Á¤é¤òÄɤ¤¤«¤±¤Æ¤¤¤ë¤Î¤«¤Ë¤è¤ê¤Þ¤¹¡£

18.7.15.2. signal 11 (¤â¤·¤¯¤Ï¾¤Î¥·¥°¥Ê¥ëÈÖ¹æ) ¤Î¥¨¥é¡¼¤¬¤¿¤¯¤µ¤ó½Ð¤Æ ¥³¥ó¥Ñ¥¤¥ë¤¬¼ºÇÔ¤·¤Þ¤¹¡£²¿¤¬µ¯¤³¤Ã¤Æ¤¤¤ë¤ó¤Ç¤·¤ç¤¦¤«?

¤³¤ì¤ÏÄ̾¥Ï¡¼¥É¥¦¥§¥¢¤ËÌäÂ꤬¤¢¤ë¤³¤È¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£ ¥·¥¹¥Æ¥à¤ÎºÆ¹½Ãۤϡ¢¥Ï¡¼¥É¥¦¥§¥¢¤ËÂФ¹¤ëÉé²ÙÂѵ׻¤ò¹Ô¤Ê¤¦¤¿¤á¤Î Í­¸ú¤Ê¼êÃʤΰì¤Ä¤Ç¡¢¥á¥â¥ê¤Ë´Ø·¸¤¹¤ëÌäÂ꤬¤è¤¯Êó¹ð¤µ¤ì¤Þ¤¹¡£ ¤½¤ÎÂçÉôʬ¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤¬´ñ̯¤Ê¥·¥°¥Ê¥ë¤ò¼õ¤±¼è¤ê¡¢ ÉԲIJò¤Ê°Û¾ï½ªÎ»¤È¤Ê¤ë¤³¤È¤Çȯ¸«¤µ¤ì¤Þ¤¹¡£

ËÜÅö¤Ë¤³¤ÎÌäÂê¤Ë¤è¤ë¤â¤Î¤«¤É¤¦¤«¤Ï¡¢ºÆ¹½ÃÛ¤ò¤â¤¦°ìÅټ¹Ԥ·¡¢ °Û¤Ê¤ëÃʳ¬¤Ç°Û¾ï½ªÎ»¤¬È¯À¸¤¹¤ë¤«¡¢¤È¤¤¤¦¤³¤È¤«¤é³Îǧ¤Ç¤­¤Þ¤¹¡£

¤³¤Î¾ì¹ç¤Ë¤Ï¡¢¥Þ¥·¥ó¤ÎÉôÉʤò¸ò´¹¤·¤Æ¡¢¤É¤ÎÉôʬ¤¬°­¤¤¤Î¤«¤ò Ä´¤Ù¤Æ¤ß¤ë¤³¤È¤¯¤é¤¤¤·¤«¤Ç¤­¤ë¤³¤È¤Ï¤¢¤ê¤Þ¤»¤ó¡£

18.7.15.3. ½ªÎ»¤·¤¿¤é /usr/obj ¤òºï½ü¤·¤Æ¤â ¤«¤Þ¤¤¤Þ¤»¤ó¤«?

°ì¸À¤ÇÅú¤¨¤ë¤Ê¤é¡Öºï½ü¤·¤Æ¤â¹½¤ï¤Ê¤¤¡×¤Ç¤¹¡£

/usr/obj ¤Ë¤Ï¡¢ ¥³¥ó¥Ñ¥¤¥ë¤ÎÃʳ¬¤ÇÀ¸À®¤µ¤ì¤¿ ¤¹¤Ù¤Æ¤Î¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£ Ä̾ï make buildworld ¤ÎºÇ½é¤ÎÃʳ¬¤Ç¤Ï¡¢ ¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê¤òºï½ü¤·¤Æ¿·¤·¤¯¤Ä¤¯¤êľ¤¹¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ ¤½¤Î¾ì¹ç¤Ë¤Ï¡¢¹½ÃÛ½ªÎ»¸å¤Î /usr/obj ¤òÊݸ¤·¤Æ¤ª¤¤¤Æ¤â¡¢¤¢¤Þ¤ê°ÕÌ£¤Ï¤¢¤ê¤Þ¤»¤ó¡£ ºï½ü¤¹¤ì¤Ð¡¢Â礭¤Ê¥Ç¥£¥¹¥¯¥¹¥Ú¡¼¥¹¤ò (¸½ºß¤Ï¤À¤¤¤¿¤¤ 2 GB ¤¢¤ê¤Þ¤¹) ²òÊü¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

¤·¤«¤·¡¢¤â¤·¤¢¤Ê¤¿¤¬²¿¤ò¹Ô¤Ê¤ª¤¦¤È¤·¤Æ¤¤¤ë¤Î¤«Íý²ò¤·¤Æ¤¤¤ë¤Ê¤é¡¢ ¤³¤ÎÃʳ¬¤ò¾Êά¤·¤Æ make buildworld ¤ò¹Ô¤Ê¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¤³¤¦¤¹¤ë¤È¡¢¤Û¤È¤ó¤É¤Î¥½¡¼¥¹¤ÏºÆ¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Ê¤¤¤¿¤á¡¢ ¹½ÃۤϤ«¤Ê¤ê¹â®²½¤µ¤ì¤Þ¤¹¡£ ¤³¤ì¤Ï΢¤ò¤«¤¨¤»¤Ð¡¢¥Ç¥ê¥±¡¼¥È¤Ê°Í¸´Ø·¸¤ÎÌäÂê¤Ë¤è¤Ã¤Æ¡¢ ¥·¥¹¥Æ¥à¤Î¹½ÃÛ¤¬´ñ̯¤Ê¼ºÇԤ˽ª¤ï¤ë²ÄǽÀ­¤¬¤¢¤ë¤È¤¤¤¦¤³¤È¤Ç¤¹¡£ FreeBSD ¥á¡¼¥ê¥ó¥°¥ê¥¹¥È¤Ç¤Ï¤·¤Ð¤·¤Ð¡¢¹½ÃۤμºÇÔ¤¬¡¢ ¤³¤ÎÃʳ¬¤Î¾Êά¤Ë¤è¤ë¤â¤Î¤À¤È¤¤¤¦¤³¤È¤òÍý²ò¤»¤º¤Ë ÉÔËþ¤ÎÀ¼¤ò¤¢¤²¤ë¿Í¤¬¤¤¤Þ¤¹¡£

18.7.15.4. ¹½ÃÛ¤òÃæÃǤ·¤¿¾ì¹ç¡¢¤½¤Î¹½ÃÛ¤òÅÓÃ椫¤éºÆ³«¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤¹¤«?

¤½¤ì¤Ï¡¢¤¢¤Ê¤¿¤¬ÌäÂê¤Ëµ¤ÉÕ¤¯Á°¤Ë¡¢ ¤É¤ì¤À¤±¤Îºî¶È¤ò½ª¤¨¤Æ¤¤¤ë¤«¤Ë¤è¤Ã¤ÆÊѤï¤ê¤Þ¤¹¡£

°ìÈÌŪ¤Ë (¤½¤·¤Æ¤³¤ì¤Ï³Î¼Â¤Ç¤·¤Ã¤«¤ê¤·¤¿ µ¬Â§¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤¬)¡¢ make buildworld ¤Î²áÄø¤Ç¤Ï¡¢ ´ðËÜŪ¤Ê¥Ä¡¼¥ë ( gcc(1) ¤ä make(1) ¤Î¤è¤¦¤Ê¤â¤Î) ¤ä¡¢¥·¥¹¥Æ¥à¥é¥¤¥Ö¥é¥ê¤Î¿·¤·¤¤¥³¥Ô¡¼¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£ ¤½¤Î¸å¤Þ¤º¡¢¤³¤ì¤é¤Î¥Ä¡¼¥ë¤ä¥é¥¤¥Ö¥é¥ê¤Ï¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤«¤é ¼«Ê¬¼«¿È¤ÎºÆ¹½Ãۤ˻Ȥï¤ì¡¢¤â¤¦°ìÅÙ¡¢¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Þ¤¹¡£ Á´ÂΤΥ·¥¹¥Æ¥à (¤³¤³¤Ç¤Ï ls(1) ¤ä grep(1) ¤È¤¤¤Ã¤¿ ɸ½àŪ¤Ê¥æ¡¼¥¶¥×¥í¥°¥é¥à¤ò´Þ¤ß¤Þ¤¹) ¤Ï¡¢ ¤½¤Î¿·¤·¤¤¥·¥¹¥Æ¥à¥Õ¥¡¥¤¥ë¤òÍѤ¤¤Æºî¤êľ¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£

¤â¤·¡¢ºÆ¹½ÃÛ¤¬ºÇ½ªÃʳ¬¤ËÆþ¤Ã¤Æ¤¤¤ë¤³¤È ¤¬ (µ­Ï¿¤·¤Æ¤ª¤¤¤¿½ÐÎϤò¸«¤¿¤ê¤¹¤ë¤³¤È¤Ç) ¤ï¤«¤Ã¤Æ¤¤¤¿¤é¡¢ (Á´¤¯°­±Æ¶Á¤òÍ¿¤¨¤ë¤³¤È¤Ê¤¯) ¼¡¤Î¤è¤¦¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

… fix the problem …
# cd /usr/src
# make -DNO_CLEAN all

¤³¤ì¤Ï¡¢Á°²ó¤Î make buildworld ¤Îºî¶È¤ò¤ä¤êľ¤·¤Þ¤»¤ó¡£

¼¡¤Î¥á¥Ã¥»¡¼¥¸

--------------------------------------------------------------
Building everything..
--------------------------------------------------------------

¤¬ make buildworld ¤Î½ÐÎϤˤ¢¤ë¾ì¹ç¤Ë¤Ï¡¢ ¾å¤Î¤è¤¦¤Ë¤·¤Æ¤â¤Û¤È¤ó¤É°­±Æ¶Á¤¬¸½¤ì¤ë¤³¤È¤Ï¤¢¤ê¤Þ¤»¤ó¡£

¤â¤·¤³¤Î¥á¥Ã¥»¡¼¥¸¤¬¤Ê¤¤¤È¤«¡¢¤è¤¯Ê¬¤«¤é¤Ê¤¤¤È¤¤¤¦¾ì¹ç¤Ë¤Ï¡¢ °ÂÁ´¤ò³ÎÊݤ·¡¢¸å²ù¤¹¤ë¤è¤¦¤Ê¤³¤È¤¬¤Ê¤¤¤è¤¦¡¢ ¥·¥¹¥Æ¥à¤ÎºÆ¹½ÃÛ¤òºÇ½é¤«¤é¤ä¤êľ¤·¤Þ¤·¤ç¤¦¡£

18.7.15.5. ¤É¤Î¤è¤¦¤Ë¤¹¤ì¤Ð make world ¤ò¹â®²½¤Ç¤­¤Þ¤¹¤«?

  • ¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤ÇÆ°¤«¤·¤Æ¤¯¤À¤µ¤¤¡£

  • /usr/src ¤È /usr/obj ¥Ç¥£¥ì¥¯¥È¥ê¤ò¡¢ °Û¤Ê¤ë¥Ç¥£¥¹¥¯¾å¤ÎÊ̤Υե¡¥¤¥ë¥·¥¹¥Æ¥à¤ËÃÖ¤¤¤Æ¤¯¤À¤µ¤¤¡£ ¤Þ¤¿²Äǽ¤Ê¤é¤Ð¡¢°Û¤Ê¤ë¥Ç¥£¥¹¥¯¥³¥ó¥È¥í¡¼¥é¤ËÀܳ¤µ¤ì¤¿ ¥Ç¥£¥¹¥¯¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤¡£

  • ¤µ¤é¤Ë¹â®²½¤¹¤ë¤Ë¤Ï¡¢¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤ò ccd(4) (Ï¢·ë¥Ç¥£¥¹¥¯¥É¥é¥¤¥Ð) ¥Ç¥Ð¥¤¥¹¤ò »È¤Ã¤Æ¡¢Ê£¿ô¤Î¥Ç¥£¥¹¥¯¾å¤ËÃÖ¤¤¤Æ¤¯¤À¤µ¤¤¡£

  • ¥×¥í¥Õ¥¡¥¤¥ëÈǤκîÀ®¤ò̵¸ú²½¤·¤Æ¤¯¤À¤µ¤¤¡£ (/etc/make.conf ¤Ç “NO_PROFILE=true” ¤ò¥»¥Ã¥È¤·¤Þ¤¹) ÉáÄÌ¡¢¤½¤ì¤¬É¬Íפˤʤ뤳¤È¤Ï¤¢¤ê¤Þ¤»¤ó¡£

  • make(1) ¤Ë -jn ¥ª¥× ¥·¥ç¥ó¤ò»ØÄꤷ¤Æ¡¢Ê£¿ô¤Î¥×¥í¥»¥¹¤òÊÂÎó¤Ë¼Â¹Ô¤µ¤»¤Æ¤¯ ¤À¤µ¤¤¡£ ¤³¤ì¤Ï¥×¥í¥»¥Ã¥µ¤¬Ã±°ì¤«Ê£¿ô¤«¤Ë¤è¤é¤º¡¢ ¤É¤Á¤é¤âƱÍͤ˲¸·Ã¤òÆÀ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

  • /usr/src ¤Î¤¢¤ë ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤ò¡¢noatime ¥ª¥×¥·¥ç¥ó¤òÉÕ¤±¤Æ¥Þ¥¦¥ó¥È (¤â¤·¤¯¤ÏºÆ¥Þ¥¦¥ó¥È) ¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ì¤Ï¡¢¤½¤Î¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ë¤ª¤¤¤Æ¡¢ ºÇ¸å¤Ë¥¢¥¯¥»¥¹¤µ¤ì¤¿»þ¹ï¤Î½ñ¤­¹þ¤ß¤òÍÞÀ©¤·¤Þ¤¹¡£ ¤ª¤½¤é¤¯¡¢¤³¤Î¾ðÊó¤¬É¬Íפˤʤ뤳¤È¤Ï¤Ê¤¤¤Ç¤·¤ç¤¦¡£

    # mount -u -o noatime /usr/src
    

    警告¾å¤ÎÎã¤Ï¡¢ /usr/src ¼«¿È¤¬ÆÈΩ¤·¤¿¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ç ¤¢¤ë¤³¤È¤òÁÛÄꤷ¤Æ¤¤¤Þ¤¹¡£ ¤â¤·¤½¤¦¤Ç¤Ê¤¤¤È¤­¤Ë¤Ï (¤¿¤È¤¨¤Ð /usr ¤Î °ìÉô¤Ç¤¢¤ë¾ì¹ç¤Ë¤Ï)¡¢ /usr/src ¤Ç¤Ï¤Ê¤¯ ŬÀڤʥޥ¦¥ó¥È¥Ý¥¤¥ó¥È¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£

  • /usr/obj ¤Î¤¢¤ë¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤ò¡¢ async ¥ª¥×¥·¥ç¥ó¤ò¤Ä¤±¤Æ¥Þ¥¦¥ó¥È (¤â¤·¤¯¤Ï ºÆ¥Þ¥¦¥ó¥È) ¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤ì¤Ë¤è¤Ã¤Æ¡¢ ¥Ç¥£¥¹¥¯¤Ø¤Î½ñ¤­¹þ¤ß¤¬ÈóƱ´ü¤Ë¤Ê¤ê¤Þ¤¹¡£ ¤Ä¤Þ¤ê¡¢½ñ¤­¹þ¤ßÌ¿Îá¤Ï¤¹¤°¤Ë´°Î»¤¹¤ë¤Î¤ËÂФ·¡¢ ¼ÂºÝ¤Ë¥Ç¡¼¥¿¤¬¥Ç¥£¥¹¥¯¤Ë½ñ¤­¹þ¤Þ¤ì¤ë¤Î¤Ï¡¢¤½¤Î¿ôÉøå¤Ë¤Ê¤ê¤Þ¤¹¡£ ¤³¤ì¤Ë¤è¤Ã¤Æ¡¢½ñ¤­¹þ¤ß½èÍý¤Î°ì³ç²½¤¬²Äǽ¤Ë¤Ê¤ë¤¿¤á¡¢ ·àŪ¤Ê¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤Î¸þ¾å¤¬´üÂԤǤ­¤Þ¤¹¡£

    警告 ¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ï ²õ¤ì¤ä¤¹¤¯¤Ê¤Ã¤Æ¤·¤Þ¤¦¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤Î¥ª¥×¥·¥ç¥ó¤òÉÕ¤±¤Æ¤¤¤Æ¡¢ÆÍÁ³ÅŸ»¤¬Íî¤Á¤¿¾ì¹ç¤Ë¤Ï¡¢ ºÆµ¯Æ°¸å¤Ë¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤¬ÉüµìÉÔǽ¤Ë¤Ê¤ë²ÄǽÀ­¤¬ Èó¾ï¤Ë¹â¤¯¤Ê¤ê¤Þ¤¹¡£

    ¤â¤·¡¢/usr/obj ¼«¿È¤¬ÆÈΩ¤·¤¿ ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ç¤¢¤ë¤Ê¤é¤Ð¡¢¤³¤ì¤ÏÌäÂê¤Ë¤Ê¤ê¤Þ¤»¤ó¡£ ¤·¤«¤·¡¢Æ±¤¸¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ë¡¢Â¾¤Îµ®½Å¤Ê¥Ç¡¼¥¿¤òÃÖ¤¤¤Æ¤¤¤ë¤È¤­¤Ë¤Ï¡¢ ¤³¤Î¥ª¥×¥·¥ç¥ó¤òÍ­¸ú¤Ë¤¹¤ëÁ°¤Ë¡¢ ¥Ð¥Ã¥¯¥¢¥Ã¥×¤ò¤­¤Á¤ó¤È¼è¤Ã¤Æ¤ª¤­¤Þ¤·¤ç¤¦¡£

    # mount -u -o async /usr/obj
    

    警告¤â¤· /usr/obj ¼«¿È¤¬ ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢Å¬Àڤʥޥ¦¥ó¥È¥Ý¥¤¥ó¥È¤ò»Ø¤¹¤è¤¦¤Ë¡¢ ¾å¤ÎÎã¤Î̾Á°¤òÃÖ¤­´¹¤¨¤Æ¤¯¤À¤µ¤¤¡£

18.7.15.6. ¤Ê¤Ë¤«°­¤¤¤³¤È¤¬¤¢¤Ã¤¿¤é¤É¤¦¤¹¤ì¤Ð¤¤¤¤¤Ç¤¹¤«?

¼«Ê¬¤Î´Ä¶­¤ËÁ°¤Î¥Ó¥ë¥É¤Î;·×¤Ê¥´¥ß¤¬»Ä¤Ã¤Æ¤¤¤Ê¤¤¤³¤È¤ò¤Ï¤Ã¤­¤ê¤È³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤È¤Æ¤â´Êñ¤Ç¤¹¡£

# chflags -R noschg /usr/obj/usr
# rm -rf /usr/obj/usr
# cd /usr/src
# make cleandir
# make cleandir

¤¨¤¨¡¢make cleandir ¤ÏËÜÅö¤Ë 2 ²ó¼Â¹Ô¤¹¤ë¤Î¤Ç¤¹¡£

¤½¤·¤Æ¡¢make buildworld ¤ò¹Ô¤¤¡¢ Á´¥×¥í¥»¥¹¤òºÇ½é¤«¤é¤ä¤êľ¤·¤Æ¤¯¤À¤µ¤¤¡£

¤Þ¤ÀÌäÂ꤬¤¢¤ì¤Ð¡¢¥¨¥é¡¼¤È uname -a ¤Î½ÐÎϤò FreeBSD general questions ¥á¡¼¥ê¥ó¥°¥ê¥¹¥È ¤ËÁ÷¤Ã¤Æ¤¯¤À¤µ¤¤¡£ ¼«Ê¬¤ÎÀßÄê¤Ë¤Ä¤¤¤Æ¤µ¤é¤Ë¼ÁÌ䤵¤ì¤Æ¤âÅú¤¨¤é¤ì¤ë¤è¤¦ÍÑ°Õ¤·¤Æ¤¯¤À¤µ¤¤!

ËÜʸ½ñ¡¢¤ª¤è¤Ó¾¤Îʸ½ñ¤Ï ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ ¤«¤é¥À¥¦¥ó¥í¡¼¥É¤Ç¤­¤Þ¤¹¡£

FreeBSD ¤Ë´Ø¤¹¤ë¼ÁÌ䤬¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢¥É¥­¥å¥á¥ó¥È ¤òÆɤó¤À¾å¤Ç <questions@FreeBSD.org> ¤Þ¤Ç (±Ñ¸ì¤Ç) Ï¢Íí¤·¤Æ¤¯¤À¤µ¤¤¡£
ËÜʸ½ñ¤Ë´Ø¤¹¤ë¼ÁÌä¤Ë¤Ä¤¤¤Æ¤Ï¡¢<doc@FreeBSD.org> ¤Þ¤ÇÅŻҥ᡼¥ë¤ò (±Ñ¸ì¤Ç) Á÷¤Ã¤Æ¤¯¤À¤µ¤¤¡£