ºÐ»ê ³×Æ®¿öÅ© ÆÄÀÏ ½Ã½ºÅÛÀÎ Andrew File System ÀÇ Implementation Áß OpenAFS ÀÇ ¼³Ä¡, ¿î¿ë¿¡ ´ëÇÑ Àü¹ÝÀûÀÎ ¸Å´º¾ó. ÀÌ ¸Å´º¾ó¿¡¼­´Â GentooLinux ¹èÆ÷ÆÇ ±âÁØÀ¸·Î, OpenAFS ¸¦ ¿î¿ëÇϴµ¥ '''°íÅë¾ø´Â''' °¡À̵带 ¸ñÀûÀ¸·Î ÇÏ°í ÀÖ´Ù. see {us} http://www.openafs.org [[TableOfContents]] = ÀÌ ¹®¼­¿¡ ´ëÇÏ¿© = ¹öÀü 0.23 °»½ÅÀÏ 2006³â 11¿ù 21ÀÏ ÀúÀÛÀÚ 2006 (C) ½ÅÁ¾ÈÆ (LunA_J`etch, email : luna.jetch_at_gmail_dot_com) ÀÌ ¸Å´º¾óÀº [http://creativecommons.org/licenses/by-sa/2.5/ Creative Commons ShareAlike-2.5] ¶óÀ̼¾½º¿¡ ÀÇÇÑ º¸È£¸¦ ¹Þ½À´Ï´Ù. OpenAFS ´Â IBM Public LicenseÀÇ º¸È£¸¦ ¹Þ½À´Ï´Ù. = ¼­¹ö¸¦ ±¸¼ºÇϱâ Àü¿¡ ¾Ë¾Æ¾ß ÇÒ »çÇ×µé = ´ë°­ÀÇ Ãß»óÀûÀÎ ¼­ºñ½º ±¸Á¶´Â ´ÙÀ½°ú °°´Ù: http://etchi.cafe24.com/pngs/afs_networks_image.png ¼­ºñ½º ÇÏ´Â Ãø¸é¿¡¼­´Â, ´Ù¼öÀÇ Replica ¸¦ ±¸¼ºÇÏ¿© ¹é¾÷/ºÐ»êÀÇ ¿ëµµ·Î È®ÀåÇϱâ ÁÁ´Ù. Ŭ¶óÀ̾ðÆ® Ãø¸é¿¡¼­´Â, ´Ù¼öÀÇ º¼·ýÀ» ÀÏÀÏÀÌ ¸¶¿îÆ® ÇØ ÁÙ ÇÊ¿ä ¾øÀÌ, ¼¿(Cell) ¼³Á¤ ¸¸À¸·Î ¼­¹ö»çÀ̵忡¼­ Á¤ÇÑ ´ë·Î ¿¬°áµÈ ´Ù¼öÀÇ ¹°¸®Àû ½ºÅ丮Áö¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. Cell Àº ³×Æ®¿öÅ© ³» ±¸¼ºµÈ AFS ¼­ºñ½º¸¦ Çѹø¿¡ ¹­´Â À̸§ÀÇ Àǹ̷Π»ç¿ëµÇ¸ç, AFS°¡ ÀνÄÇÏ´Â ½ÇÁ¦ ¹°¸®Àû ÆÄÀϽýºÅÛ °ø°£À» ÆÄƼ¼Ç(partition), AFS¿¡¼­ ¼­ºñ½º¸¦ ÇÒ ¶§ »ç¿ëµÇ´Â ³í¸®ÀûÀÎ ÆÄÀϽýºÅÛ °ø°£À» º¼·ý(Volume) À̶ó°í ºÎ¸¥´Ù. == ÀÌ ¸Å´º¾ó¿¡¼­ ¾ð±ÞÇÏ´Â ½Ã½ºÅÛ È¯°æ¿¡ ´ëÇÏ¿© == OpenAFS ¼­¹ö¸¦ ±¸¼ºÇϱâ Àü¿¡, ÀÚ½ÅÀÇ ³×Æ®¿÷ ȯ°æ°ú, ¼³Ä¡ÇÒ ¼­¹öµé, ±×¸®°í »ç¿ëÇÒ Å¬¶óÀ̾ðÆ®ÀÇ ¼ö µîÀ» °í·ÁÇÏ¿© ¼­¹ö¸¦ ±¸¼ºÇØ¾ß ÇÏ´Â °ÍÀº ´ç¿¬ÇÑ ÀÏÀÌ´Ù. ÀÌ ¿¹Á¦¿¡¼­ º¸¿©Áִ ȯ°æÀº ´ÙÀ½°ú °°´Ù: * afsdisk1 ÄÄÇ»ÅÍ : OpenAFS ¸ÞÀÎ DB ¼­¹ö ÀνºÅϽº + ÆÄÀÏ ¼­¹ö ÀνºÅϽº * afsdisk2 ÄÄÇ»ÅÍ : OpenAFS ÆÄÀÏ ¼­¹ö ÀνºÅϽº * 100¸í ÀÌÇÏÀÇ Å¬¶óÀ̾ðÆ® ÀνºÅϽº {i} ´Ù¼öÀÇ »ç¿ëÀÚ¸¦ °ü¸®ÇØ¾ß ÇÏ´Â ÀÔÀåÀ̶ó¸é, ÀÌ ¸Å´º¾ó¿¡¼­ »ç¿ëÇÏ´Â OpenAFS ±âº» ÀÎÁõ ¼­¹ö(kaserver) ´ë½Å Kerberos v5 + openssl + °èÁ¤ Á¤º¸¸¦ ´ãÀº ¹é¿£µå(ldap, radius µî) ·Î ÀÎÁõ ¼­¹ö¸¦ ±¸ÃàÇÒ °ÍÀ» ±ÇÀåÇÑ´Ù. == ±¸ÃàÇÒ ¼ö ÀÖ´Â ¼­¹ö ÀνºÅϽºµé¿¡ ´ëÇÏ¿© == ±¸ÃàÇÒ ¼ö ÀÖ´Â ¼­¹ö ÀνºÅϽºµéÀÇ ¸ñ·ÏÀº ´ÙÀ½°ú °°´Ù: || ÀνºÅϽº || »ç¿ë ¿ëµµ || || kaserver ||ÀÎÁõ µ¥ÀÌÅͺ£À̽º¸¦ °ü¸®Çϱâ À§ÇÑ ÀÎÁõ ¼­¹ö. kerberos v5 ±âÁØ¿¡ ¸¸Á·ÇÏ´Â ÀÎÁõ¼­¹ö¸¦ ÃÑĪÇÏ´Â ÀνºÅϽº ¸í.|| || buserver ||¹é¾÷ µ¥ÀÌÅͺ£À̽º¸¦ °ü¸®Çϱâ À§ÇÑ ¹é¾÷ ¼­¹öÀÇ ÀνºÅϽº ¸í.|| || ptserver ||ÇÁ·ÎÅؼÇ(Protection) µ¥ÀÌÅͺ£À̽º¸¦ À§ÇÑ ÇÁ·ÎÅØ¼Ç ¼­¹ö.|| || vlserver ||VLDB(º¼·ý À§Ä¡ µ¥ÀÌÅͺ£À̽º : Volume Location Database)¸¦ °ü¸® Çϱâ À§ÇÑ º¼·ý À§Ä¡ ¼­¹ö(VLS). °¢ ¼¿À» ±¸¼ºÇÏ´Â º¼·ýÀÇ À§Ä¡¸¦ ±â¾ïÇÏ°í °ü¸®ÇÏ´Â, ´ë´ÜÈ÷ Áß¿äÇÑ ±¸¼ºÇ°ÀÌ´Ù.|| || upserver ||¾÷µ¥ÀÌÆ® ¼­¹ö. ¼­¹öÀÇ ¼³Á¤/¹ÙÀ̳ʸ®µéÀ» ´Ù¸¥ ¾÷µ¥ÀÌÆ® Ŭ¶óÀ̾ðÆ®µé¿¡°Ô ÀüÆÄÇÏ´Â ¿ªÇÒÀ» ÇÑ´Ù.|| || fs ||ÆÄÀÏ ¼­¹ö. ÇϳªÀÇ ÆÄÀϼ­¹ö ÀνºÅϽº´Â Fileserver (ÆÄÀÏ ¼­¹ö), Volserver (º¼·ý¼­¹ö), Salvager ·Î ±¸¼ºµÈ´Ù.|| || upclientetc ||Ŭ¶óÀ̾ðÆ® ºÎºÐÀÇ ¾÷µ¥ÀÌÆ® ¼­¹ö. ¼­¹öÀÇ ¼³Á¤À» ¹Þ¾Æ¿À´Â ÀνºÅϽº¸¦ ÀǹÌÇÑ´Ù.|| || upclientbin ||Ŭ¶óÀ̾ðÆ® ºÎºÐÀÇ ¾÷µ¥ÀÌÆ® ¼­¹ö. ¼­¹öÀÇ AFS °ü·Ã ¹ÙÀ̳ʸ®¸¦ ¹Þ¾Æ¿À´Â ÀνºÅϽº¸¦ ÃÑĪ.|| || runntp ||ntp Ŭ¶óÀ̾ðÆ®¿¡ ÇØ´çÇÏ´Â ¼­¹ö. ntp ¼­¹ö·Î ºÎÅÍ ½Ã°£Á¤º¸¸¦ ¹Þ¾Æ¿Í µ¿±âÈ­ÇÏ´Â ÀνºÅϽº.|| ÀÌ°ÍÀ» º¸°í »ý°¢ÇØ¾ß ÇÒ °ÍÀº, ½Ã½ºÅÛÀÇ ±¸¼º¿¡ µû¶ó ±× ¿ªÇÒÀ» ºÐ»ê½Ãų ¼ö Àֱ⠶§¹®ÀÌ´Ù. ÇϳªÀÇ '''OpenAFS ¸ÞÀÎ ¼­¹ö'''´Â ÃÖ¼ÒÇÑ '''ÀÎÁõ(kaserver) / ¹é¾÷(buserver) / ÇÁ·ÎÅؼÇ(ptserver) / VLDB(vlserver) / (¼­¹ö ºÎºÐÀÇ) ¾÷µ¥ÀÌÆ® ¼­¹ö(upserver)''' ¿¡ ´ëÇÑ ÀνºÅϽº¸¦ °¡Áö°í ÀÖ¾î¾ß Çϸç, ¸ÞÀÎ ¼­¹ö¿Í ¸Â¹°·Á ½ºÅ丮Áö¸¦ Á¦°øÇÏ´Â '''ÆÄÀÏ ¼­¹ö'''ÀÇ °æ¿ì '''Ŭ¶óÀ̾ðÆ® ºÎºÐÀÇ ¾÷µ¥ÀÌÆ® ¼­¹ö(upclientetc) / ¼­¹ö ºÎºÐÀÇ ¾÷µ¥ÀÌÆ® ¼­¹ö(upserver) / ÆÄÀÏ ¼­¹ö(fs)''' ÀνºÅϽº¸¦ °¡Á®¾ß ÃÖ¼ÒÇÑÀÇ µ¿ÀÛ º¸ÁõÀ» ÇÒ ¼ö ÀÖ´Ù. Á» ´õ ³×Æ®¿÷/½Ã½ºÅÛ È¯°æÀÇ ºÐ»êÀ» °í·ÁÇÑ´Ù¸é µ¥ÀÌÅͺ£À̽º ¼­¹ö¸¦ Replication ÇÏ´Â ¹æ½ÄÀ¸·Î ¿©·¯´ë·Î ºÐ»ê ½Ãų ¼öµµ ÀÖ´Ù. ½ºÅ丮Áö ¿ª½Ã ¼­¹ö ·¹º§¿¡¼­ÀÇ ReplicationÀ» Á¦°øÇϱ⠶§¹®¿¡ ºÐ»êÀÇ ÇýÅÃÀ» ¹ÞÀ» ¼ö ÀÖ´Â °Íµé Áß ÇϳªÀÌ´Ù. ÃæºÐÈ÷ °í·ÁÇÑ ÈÄ ¼­ºñ½º¸¦ ±¸¼ºÇÏ¿©µµ ´ÊÁö ¾Ê´Ù. ÃÖ¼ÒÇÑ, °í·ÁÇÏÁö ¾Ê°í º¯°æ¿¡ µû¸¥ ¼Ò¿äºñ¿ëÀ» °í·ÁÇÑ´Ù¸é ´õ¿í ±×·¯ÇÒ °ÍÀÌ´Ù. = OpenAFS Database Server ±¸¼º (ÃÖÃʱ¸¼º) = ÀÌ ´Ü¶ô¿¡¼­´Â OpenAFS ¼­ºñ½º¸¦ À§ÇÑ ¸ÞÀÎ µ¥ÀÌÅͺ£À̽º¸¦ ¼³Ä¡ÇÏ°í, ¼¿À» »ý¼ºÇÏ°í, »ç¿ëÀÚ °èÁ¤À» »ý¼ºÇÏ´Â ºÎºÐÀ» ¾ð±ÞÇÒ °ÍÀÌ´Ù. == ¹Ì¸® ÁغñÇØ¾ß ÇÒ °Íµé == OpenAFS¸¦ ¼³Ä¡, ¿î¿ëÇÒ ¼­¹ö°¡ ÇÊ¿äÇÔÀº ¸»ÇÒ °Íµµ ¾ø´Ù. OpenAFS¸¦ »ç¿ëÇϱâ À§Çؼ­´Â, µÇµµ·Ï bind(named)¸¦ »ç¿ëÇÏ¿© FQDNÀ» ¸¸Á·½ÃÄÑ ÁÙ ÇÊ¿ä°¡ ÀÖ´Ù. ÇöÀç ½Ã½ºÅÛÀÌ ÂüÁ¶ÇÏ´Â ³×ÀÓ¼­¹ö¸¦ ±¸¼ºÇÏ´øÁö Çؼ­, hostname.domain.name À» ¸¸Á·½ÃÄÑ¾ß ÇÒ °ÍÀÌ´Ù. ¿©±â¼­´Â ù¹ø° ¼­¹ö¸¦ '''afsdisk1.testbed.org''' ¶ó°í ĪÇÏ°Ô µÉ °ÍÀÌ´Ù. (µÎ¹ø° ¼­¹ö´Â '''afsdisk2.testbed.org''' °¡ µÉ °ÍÀÌ´Ù) Kerberos + openssl À» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ´Ù¸¸, ÀÌ ¸Å´º¾ó¿¡¼­´Â ¾ð±ÞÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù. ÇÊ¿ä½Ã OpenAFS °ø½Ä ¹®¼­¸¦ ÂüÁ¶Çϱ⠹ٶõ´Ù. ¶ÇÇÑ, ¿©·¯´ëÀÇ AFS ¼­¹ö Ç®À» ±¸¼ºÇÏ·Á¸é, (ÃÖ¼ÒÇÑ) µ¿µî ¼¿Àº °°Àº ½Ã°£À¸·Î µ¿±âÈ­µÇ¾î ÀÖ¾î¾ß ÇÑ´Ù. À̸¦ À§ÇØ, ÇÑ´ëÀÇ ntp ¼­¹ö¸¦ ±¸¼ºÇÒ °ÍÀ» ±ÇÀåÇÑ´Ù. == OpenAFS ¼³Ä¡ == ¸ÕÀú, OpenAFS¸¦ ¼³Ä¡ÇØ¾ß ÇÑ´Ù. {{{#!vim root@afsdisk1 # emerge net-fs/openafs }}} À§ÀÇ ¸í·ÉÀ» ³»¸®¸é, openafs-kernel °ú openafs ÆÐÅ°Áö°¡ ¼³Ä¡ µÉ °ÍÀÌ´Ù. À§ÀÇ ¸í·É¾î¸¦ ÅëÇØ Ä¿³Î ¸ðµâ°ú ¹ÙÀ̳ʸ®°¡ Á¤»óÀûÀ¸·Î ºôµåµÉ °ÍÀÌ´Ù. Å×½ºÆ®¸¦ Çغ¸ÀÚ¸é,2.6.18 ÃֽŠĿ³Î¿¡¼­µµ ¹«¸®¾øÀÌ ÄÄÆÄÀÏÀÌ µÉ °ÍÀÌ´Ù. {i} °ø½Ä ¹®¼­°¡ ¼³Ä¡µÇ±æ ¿øÇÑ´Ù¸é, emerge app-doc/afsdoc À» ¼³Ä¡ÇÏ¸é µÈ´Ù. ¼³Ä¡µÇ´Â Àå¼Ò´Â OpenAFS°¡ Transarc ¿¡¼­ IBMÀ¸·Î, ±×¸®°í °ø°³ µÇ¾úÀ» ¶§ º¯°æµÇ¾ú´Ù: ´ë°­ÀÇ ±¸Á¶´Â ¾Æ·¡ÀÇ Ç¥¸¦ ÂüÁ¶ÇÏ±æ ¹Ù¶õ´Ù: || µð·ºÅ丮 || »ç¿ë¿ëµµ || Transarc || ±âº»ÇüÅ || Gentoo || ||viceetcdir|| Ŭ¶óÀ̾ðÆ® ¼³Á¤ || {{{/usr/vice/etc}}} || {{{$(sysconfdir)/openafs}}} || {{{/etc/openafs}}} || ||unnamed|| Ŭ¶óÀ̾ðÆ® ¹ÙÀ̳ʸ® || {{{unspecified}}} || {{{$(bindir)}}} || {{{/usr/bin}}} || ||afsconfdir|| ¼­¹ö ¼³Á¤ || {{{/usr/afs/etc}}} || {{{$(sysconfdir)/openafs/server}}} || {{{/etc/openafs/server}}} || ||afssrvdir|| ³»ºÎ ¼­¹ö ¹ÙÀ̳ʸ® || {{{/usr/afs/bin (servers)}}} || {{{$(libexecdir)/openafs}}} || {{{/usr/libexec/openafs}}} || ||afslocaldir|| ¼­¹ö »óÅ || {{{/usr/afs/local}}} || {{{$(localstatedir)/openafs}}} || {{{/var/lib/openafs}}} || ||afsdbdir|| ÀÎÁõ/¼­¹ö¸®½ºÆ® µîÀÇ DB || {{{/usr/afs/db}}} || {{{$(localstatedir)/openafs/db}}} || {{{/var/lib/openafs/db}}} || ||afslogdir|| ·Î±× || {{{/usr/afs/logs}}} || {{{$(localstatedir)/openafs/logs}}} || {{{/var/lib/openafs/logs}}} || ||afsbosconfig|| Overseer ¼³Á¤ || {{{$(afslocaldir)/BosConfig}}} || {{{$(afsconfdir)/BosConfig}}} || {{{/etc/openafs/BosConfig}}} || {i} net-fs/openafs-legacy ¸¦ ¼³Ä¡Çϸé, Transarc µð·ºÅ丮 ÇüÅ·Π¼ÒÇÁÆ® ¸µÅ©¸¦ ¸¸µé¾îÁØ´Ù. == BOS (Basic Over Seer) Server Ãʱ⠱¸µ¿ == ÃÖÃÊ ¼³Ä¡ÀÇ °æ¿ì ¼³Á¤ µð·ºÅ丮(/etc/openafs)¸¦ º¸¸é {{{CellServDB}}} ÆÄÀÏ°ú {{{ThisCell}}} ÆÄÀÏÀÌ Àִµ¥, ÀÌ ÆÄÀÏÀ» µé¿©´Ùº¸¸é À߸øµÈ(?) ÃʱâÈ­ ³»¿ëÀ» ´ã°í ÀÖ´Ù. ÃʱâÈ­¸¦ À§ÇØ, °¡Â÷¾øÀÌ »èÁ¦ÇÏÀÚ. {{{#!vim root@afsdisk1 # rm -f /etc/openafs/CellServDB root@afsdisk1 # rm -f /etc/openafs/ThisCell }}} ps. ±âÁ¸¿¡ afs¸¦ ¼³Á¤ÇÑÀûÀÌ ÀÖ´Ù¸é /etc/openafs/BosConfig ÆÄÀϵµ »èÁ¦Çϵµ·ÏÇÑ´Ù. ÀÌÁ¦, bosserver¸¦ ´ÙÀ½ ¸í·ÉÀ» ÅëÇØ ÃʱâÈ­ÇÏÀÚ: {{{#!vim root@afsdisk1 # bosserver -noauth && }}} {i} -noauth ¿É¼ÇÀº ´ç½ÅÀÌ ÇöÀç admin ±ÇÇÑÀÌ ÃæºÐÈ÷ ¼³Á¤µÇ¾î ÀÖÁö ¾Ê±â ¶§¹®¿¡, ÀÎÁõ ÀýÂ÷¸¦ ¹«½ÃÇÏ°í Á¢±ÙÇϱâ À§ÇØ »ç¿ëÇÏ´Â °ÍÀÌ´Ù. º¸¾È»óÀ¸·Î À§ÇèÇϹǷÎ, ½À°ü»ó -noauth¸¦ ºÙ¿© À¯Áöº¸¼ö¸¦ ÇÏÁö ¾Êµµ·Ï ÇØ¾ß ÇÒ °ÍÀÌ´Ù. À§ÀÇ ¸í·ÉÀ» ¼öÇàÇϸé /etc/openafs/server µð·ºÅ丮¾È¿¡ ÀÌÀüÀÇ {{{CellServDB}}} ÆÄÀÏ°ú {{{ThisCell}}} ÆÄÀÏÀÌ »ý¼ºµÇ°í, /etc/openafs ¿¡ ±× ÆÄÀϵ鿡 ¼ÒÇÁÆ® ¸µÅ©°¡ °É·ÁÀÖÀ» °ÍÀÌ´Ù. == Cell À̸§ »ý¼º == ¹°¸®Àû/³í¸®ÀûÀ¸·Î ºÐ»êµÇ¾î ÀÖ´Â Storage Pool À» ¿«¾îÁÖ±â À§ÇØ, ±¸°£À» Á¤ÇÏ´Â ÀÏÀ» ÇØ¾ß ÇÑ´Ù. OpenAFS ¿¡¼­´Â µ¿ÀÏ Cell À̸§À¸·Î ½ºÅ丮Áö Ç®À» ±¸º°ÇÑ´Ù. ÀÌ ¸Å´º¾ó¿¡¼­´Â, '''''powercell''''' À» »ç¿ëÇÒ °ÍÀÌ´Ù. :p ÀÌ Cell À̸§ÀÌ Å¬¶óÀ̾ðÆ®°¡ ¸¶¿îÆ® ÇØ¾ß ÇÒ À̸§À̱⠶§¹®¿¡, µÇµµ·ÏÀ̸é ª°Ô Áþ´Â °ÍÀÌ ÁÁÀ» °ÍÀÌ´Ù. {i} Cell À̸§Àº '''´ë¹®ÀÚ¸¦ Æ÷ÇÔÇÏÁö ¾Ê´Â''' Á¶°Ç°ú ÇÔ²² ¿µ¹®/¼ýÀÚ 64ÀÚ·Î Á¦ÇѵǾî ÀÖ´Ù. Àý´ë ´ë¹®ÀÚ·Î ¼¿ À̸§À» Á¤ÇÏÁö ¸»°Í. Cell À̸§Àº bos setcellname ¸í·É¾î¸¦ ÅëÇØ ±¸¼ºÇÒ ¼ö ÀÖ´Ù. ¿ë¹ýÀº ¾Æ·¡¿Í °°´Ù: ¿ë¹ý : {{| # bos setcellname -noauth |}} ¾Æ·¡¿Í °°ÀÌ, afsdisk1.testbed.org¿¡ powercell À̶ó´Â ¼¿ À̸§À» Á¤ÇØÁØ´Ù. {{{#!vim root@afsdisk1 # bos setcellname afsdisk1.testbed.org powercell -noauth }}} == µ¥ÀÌÅͺ£À̽º ¼­¹öÀÇ ½ÃÀÛ ¹× ±¸¼º == ´ÙÀ½¿¡ ÇØ ÁÙ ÀÏÀº, '''bos create''' ¸í·É¾î¸¦ »ç¿ë, {{{/etc/openafs/BosConfig}}} ¼³Á¤ ÆÄÀÏ¿¡ µ¥ÀÌÅͺ£À̽º ¼­¹ö ÇÁ·Î¼¼½ºµéÀ» À§ÇÑ ¼³Á¤À» Ãß°¡ÇØÁÖ°í, ¼­¹ö¸¦ ½ÇÇàÇÏ´Â ÀÏÀÌ´Ù. ¾Æ·¡ÀÇ 4°³ ÇÁ·Î¼¼½º¸¦ ¶ç¿ì´Âµ¥, ÀÌ´Â ¼¿¿¡ Æ÷ÇԵǴ ½ºÅ丮Áö ¼­¹ö¿¡ ¼³Á¤µÇ´Â °ÍÀÌ ¾Æ´Ï¶ó, ´ÜÀÏ ¼¿À» ±¸¼ºÇÏ´Â µ¥ÀÌÅͺ£À̽º ¼­¹ö ¸Ó½Å¿¡¸¸ ÀÖÀ¸¸é µÇ´Â »çÇ×ÀÌ´Ù. || ½ÇÇà ÆÄÀÏ || »ç¿ë ¿ëµµ || || kaserver ||ÀÎÁõ µ¥ÀÌÅͺ£À̽º¸¦ °ü¸®Çϱâ À§ÇÑ ÀÎÁõ ¼­¹ö´Ù. ÀÌ´Â Kerberos 5 ÀÎÁõ ¼­¹ö·Î ´ëü °¡´ÉÇÏ°í, ±âÁ¸¿¡ Kerberos ÀÎÁõ ȯ°æÀÌ ±¸ÃàµÇ¾î ÀÖÁö ¾Ê´Ù¸é À̸¦ »ç¿ëÇÏ¸é µÈ´Ù. (¹«¸®Çؼ­ Kerberos ¸¦ ±¸¼ºÇÒ ÇÊ¿ä°¡ ¾ø´Ù´Â ¶æ)|| || buserver ||¹é¾÷ µ¥ÀÌÅͺ£À̽º¸¦ °ü¸®Çϱâ À§ÇÑ ¹é¾÷ ¼­¹ö. || || ptserver ||ÇÁ·ÎÅؼÇ(Protection) µ¥ÀÌÅͺ£À̽º¸¦ À§ÇÑ ÇÁ·ÎÅØ¼Ç ¼­¹ö.|| || vlserver ||VLDB(º¼·ý À§Ä¡ µ¥ÀÌÅͺ£À̽º : Volume Location Database)¸¦ °ü¸® Çϱâ À§ÇÑ º¼·ý À§Ä¡ ¼­¹ö(VLS). °¢ ¼¿À» ±¸¼ºÇÏ´Â º¼·ýÀÇ À§Ä¡¸¦ ±â¾ïÇÏ°í °ü¸®ÇÏ´Â, ´ë´ÜÈ÷ Áß¿äÇÑ ±¸¼ºÇ°ÀÌ´Ù.|| À§ÀÇ ¼­¹öµéÀ» ±¸¼ºÇÏ´Â ¼³Á¤°ªÀ» °®Ãß°í ½ÇÇàÇϱâ À§ÇØ, ´ÙÀ½ÀÇ ¿ë¹ýÀ» »ç¿ëÇØ ¼³Á¤ÇÑ´Ù: {{| # bos create <{{{server name}}}> <{{{XXserver}}}> simple <{{{XXserverÀÇ À§Ä¡}}}> -cell <{{{cell name}}}> -noauth |}} °¢ ¼­¹ö ÇÁ·Î¼¼½ºÀÇ À§Ä¡´Â afssrvdir (1.2 ÀýÀÇ µð·ºÅ丮 ¸ñ·ÏÇ¥¸¦ ÂüÁ¶ÇÒ°Í), Áï '''''/usr/libexec/openafs''''' µð·ºÅ丮¿¡ ÀÖ´Ù. === °¢ µ¥ÀÌÅͺ£À̽º ¼­¹ö ±¸¼º ¹× ½ÇÇà === À§ÀÇ ¿ë¹ýÀ» Åä´ë·Î, À§ÀÇ 4°¡Áö ½ÇÇàÆÄÀÏÀ» ´Ù µî·Ï/½ÇÇàÇϱâ À§ÇØ, ¾Æ·¡¿Í °°ÀÌ ½ÇÇàÇÏ¿´´Ù: {{{#!vim root@afsdisk1 # bos create afsdisk1.testbed.org kaserver simple \ /usr/libexec/openafs/kaserver -cell powercell -noauth root@afsdisk1 # bos create afsdisk1.testbed.org buserver simple \ /usr/libexec/openafs/buserver -cell powercell -noauth root@afsdisk1 # bos create afsdisk1.testbed.org ptserver simple \ /usr/libexec/openafs/ptserver -cell powercell -noauth root@afsdisk1 # bos create afsdisk1.testbed.org vlserver simple \ /usr/libexec/openafs/vlserver -cell powercell -noauth }}} {i} ÃÖÃÊ ±¸¼ºÀ» ÀÌ¹Ì ÇÑ »óŶó¸é, »ó´ÜÀÇ '''create''' ´ë½Å '''start'''¸¦ ³ÖÀ¸¸é °¢ ¼­¹ö¸¦ ¶ç¿ï ¼ö ÀÖ´Ù. === °¢ µ¥ÀÌÅͺ£À̽º ¼­¹ö µ¿ÀÛ È®ÀÎ === À§ÀÇ ¼³Á¤À¸·Î 4°³ÀÇ ¼­¹ö¸¦ µî·ÏÇÑ ÈÄ, '''bos status''' ¸í·ÉÀ¸·Î ÇöÀç »óŸ¦ º¼ ¼ö ÀÖ´Ù. ´ÙÀ½ÀÇ ¸í·ÉÀ» ÅëÇØ »óŸ¦ ¾Ë¾Æº¸ÀÚ: Á¤»óÀûÀ̶ó¸é ¾Æ·¡Ã³·³ ¸Þ½ÃÁö°¡ ¶ã °ÍÀÌ´Ù. {{{#!vim root@afsdisk1 # bos status afsdisk1.testbed.org -noauth Instance kaserver, currently running normally. Instance buserver, currently running normally. Instance ptserver, currently running normally. Instance vlserver, currently running normally. }}} == AFS º¸¾È ¸ÞÄ¿´ÏÁò ÃʱâÈ­¸¦ À§ÇÑ (ÃÖÃÊ) »ç¿ëÀÚ °èÁ¤ »ý¼º == Cell º¸¾È ¸ÞÄ¿´ÏÁòÀ» ÃʱâÈ­Çϱâ À§ÇØ, 2°³ÀÇ ¼³Á¤ ¿£Æ®¸®¸¦ ÀÎÁõ µ¥ÀÌÅͺ£À̽º¿¡ Ãß°¡ÇØ¾ß ÇÑ´Ù. Çϳª´Â ¸ÞÀÎ °ü¸®ÀÚ °èÁ¤(admin)À» »ý¼ºÇÏ´Â °ÍÀÌ°í, ´Ù¸¥ Çϳª´Â AFS ÇÁ·Î¼¼½º¸¦ À§ÇÑ, afs ¶ó´Â °èÁ¤À» »ý¼ºÇÏ´Â °ÍÀÌ´Ù. {i} afs °èÁ¤Àº ½Ã½ºÅÛ ±¸¼ºÀ» À§ÇØ ¹Ýµå½Ã »ý¼ºÇØ¾ß ÇÑ´Ù. === kas ¸¦ »ç¿ëÇÑ »ç¿ëÀÚ °èÁ¤ »ý¼º === À̸¦ À§ÇØ kas ¶ó´Â »ç¿ëÀÚ ¸í·ÉÇà ÅøÀ» »ç¿ëÇÑ´Ù. ÃÖÃÊ ½ÇÇà ¿ë¹ýÀº ¾Æ·¡¿Í °°´Ù: {{| # kas -cell <{{{cell name}}}> -noauth |}} ¸ñÇ¥ ´Þ¼ºÀ» À§ÇØ, »ó´ÜÀÇ ¿ë¹ýÀ» Åä´ë·Î kas ¸¦ ½ÇÇàÇÏÀÚ: {{{#!vim root@afsdisk1 # kas -cell powercell -noauth }}} À§ÀÇ ¸í·ÉÀ» ½ÇÇàÇϸé, '''ka>''' ¶ó´Â ÇÁ·ÒÇÁÆ®°¡ ¶ß°Ô µÉ °ÍÀÌ´Ù. '''create''' ¸í·ÉÀ» »ç¿ëÇÏ¿© »ç¿ëÀÚ ¿£Æ®¸®¸¦ »ý¼ºÇÏ°í, '''examine''' À» »ç¿ëÇÏ¿© »ý¼ºµÈ ¿£Æ®¸®¸¦ °Ë»çÇÑ´Ù. '''setfields''' ¸í·ÉÀ» »ç¿ëÇÏ¿©, admin °èÁ¤ÀÌ °ü¸®ÀÚÀÓÀ» ÀνĽÃÅ°¸é µÈ´Ù. ÀÌÁ¦ ¾Æ·¡¿Í °°ÀÌ ½ÇÇàÇϵµ·Ï ÇÏÀÚ: {{{#!vim ka> create afs initial_password: Verifying, please re-enter initial_password: ka> create admin initial_password: Verifying, please re-enter initial_password: ka> examine afs User data for afs key (0) cksum is 2651715259, last cpw: Mon Jun 4 20:49:30 2001 password will never expire. An unlimited number of unsuccessful authentications is permitted. entry never expires. Max ticket lifetime 100.00 hours. last mod on Mon Jun 4 20:49:30 2001 by permit password reuse ka> setfields admin -flags admin ka> examine admin User data for admin (ADMIN) key (0) cksum is 2651715259, last cpw: Mon Jun 4 20:49:59 2001 password will never expire. An unlimited number of unsuccessful authentications is permitted. entry never expires. Max ticket lifetime 25.00 hours. last mod on Mon Jun 4 20:51:10 2001 by permit password reuse ka> }}} === »ý¼ºÇÑ »ç¿ëÀÚ¸¦ »ç¿ëÀÚ ¸®½ºÆ®¿¡ Ãß°¡ÇÏ´Â ¹æ¹ý === À§ ±¸°£À» ¼öÇà, kas¸¦ ÅëÇØ »ç¿ëÀÚ °èÁ¤À» »ý¼ºÇÏ¿´Áö¸¸ °èÁ¤À» »ç¿ëÀÚ ¸®½ºÆ®¿¡ µû·Î Ãß°¡ÇØ¾ß ÇÑ´Ù. admin °èÁ¤À» »ç¿ëÀÚ ¸®½ºÆ®({{{/etc/openafs/server/UserList}}})¿¡ Ãß°¡Çϵµ·Ï ÇÏÀÚ. ¿ë¹ý°ú »ç¿ë¿¹´Â ¾Æ·¡¿Í °°´Ù: ¿ë¹ý: {{| # bos adduser <'''server name'''> <'''account name'''> -cell <'''cell name'''> -noauth|}} À§ÀÇ ¿ë¹ýÀ» ±âÃÊ·Î ¾Æ·¡ÀÇ ¸í·ÉÀ» ¼öÇà, admin °èÁ¤À» »ç¿ëÀÚ ¸®½ºÆ®¿¡ Ãß°¡Çß´Ù: {{{#!vim root@afsdisk1 # bos adduser afsdisk1.testbed.org admin -cell powercell -noauth }}} (admin ÀÌ¿Ü¿¡µµ) »ý¼ºµÈ »ç¿ëÀÚ´Â, ¿ÏÀüÇÑ µ¿ÀÛÀ» À§ÇØ ptserver¿¡ ¸¶Âù°¡Áö·Î µî·ÏÀÌ µÇ¾î¾ß ÇÒ °ÍÀÌ´Ù. == AFS ¼­¹ö ¾Ïȣȭ Å°¸¦ »ý¼ºÇϱâ == ÀÌÁ¦ AFS ¼­¹öÀÇ ¾Ïȣȭ¸¦ À§ÇÑ Å°¸¦ »ý¼ºÇØ¾ß ÇÑ´Ù. '''bos addkey''' ¸í·ÉÀ» »ç¿ëÇÏ¿©, ÀÌ ¸ñÀûÀ» ´Þ¼ºÇÒ ¼ö ÀÖ´Ù. »ç¿ë¹ýÀº ´ÙÀ½°ú °°´Ù: {{| # bos addkey <'''server name'''> -kvno 0 -cell <'''cell name'''> -noauth |}} À§ÀÇ ¿ë¹ý´ë·Î ½ÇÇà ÇÒ °æ¿ì, ¾ÏÈ£ Å°¸¦ Áý¾î³ÖÀ¸¶ó°í Çϴµ¥, ÀÌ Å°ÀÇ °ªÀº ÀÚ½ÅÀÌ '''afs''' °èÁ¤À» »ý¼ºÇÒ ¶§ »ç¿ëÇÑ Å°¿Í '''µ¿ÀÏÇÏ°Ô''' ³Ö¾î¾ß ÇÑ´Ù. == (ptserver) ÇÁ·ÎÅØ¼Ç µ¥ÀÌÅͺ£À̽º¿¡ admin °èÁ¤ ¿¬°áÇϱâ == '''pts createuser''' ¸í·É¾î¸¦ »ç¿ëÇؼ­, ÇÁ·ÎÅØ¼Ç µ¥ÀÌÅͺ£À̽º¿¡ admin »ç¿ëÀÚ¸¦ À§ÇÑ ¿£Æ®¸®¸¦ »ý¼ºÇØ¾ß ÇÑ´Ù. {i} ±âº»ÀûÀ¸·Î, ÇÁ·ÎÅØ¼Ç ¼­¹ö´Â AFS UID(»ç¿ëÀÚ ID) 1À» °ü¸®ÀÚ·Î ÇÒ´çÇϴµ¥, ÀÌ´Â ÀÌÁ¦±îÁö »ý¼ºÇÑ ±â·Ï»ó ù¹ø° À¯Àú°¡ admin À̱⠶§¹®ÀÌ´Ù. ÇÊ¿äÇÒ °æ¿ì, -id ¿É¼ÇÀ» »ç¿ëÇØ Á¶Á¤ÇÒ ¼ö ÀÖ´Ù. ¹®Á¦´Â, UNIX »ó¿¡¼­ÀÇ ½ÇÁ¦ admin À¯ÀúÀÇ UID¸¦ ÇÊ¿ä·Î ÇÑ´Ù´Â °ÍÀε¥, À̸¦ À§Çؼ­´Â ¾î¿ ¼ö ¾øÀÌ(?) admin °èÁ¤À» ¸¸µé¾îÁà¾ß ÇÒ °ÍÀÌ´Ù. (ȤÀº ±âÁ¸ÀÇ bin °èÁ¤ - Áï ½Ã½ºÅÛÀÇ UID°¡ 1ÀÎ °èÁ¤À¸·Î AFS¿¡ ±â·ÏÀÌ µÇ´Â°ÍÀ» º¸´øÁö.) ÀÌ admin °èÁ¤À» ¸¸µé¾î UID¸¦ ¾Ë¾Æ³½ ÈÄ, -id ¿É¼ÇÀ» ºÙ¿© UID¸¦ ¸ÅÇνÃÄÑÁִµ¥, admin °èÁ¤À̳ª ±âŸ afs¿¡¼­ »ç¿ëÇÒ °èÁ¤ÀÌ ¹Ýµå½Ã ·Î±×ÀÎ µÇ¾î¾ß ÇÒ ÇÊ¿ä´Â ¾ø´Ù´Â ¶æÀÌ´Ù. (/bin/false ¸¦ ¼Ð·Î ÁöÁ¤Çصµ µÈ´Ù´Â ¶æÀÌ´Ù.) »ç¿ë¹ýÀº ¾Æ·¡¿Í °°´Ù: {{| # pts createuser -name admin -cell <'''cell name'''> [-id <'''AFS UID'''>] -noauth |}} À§ÀÇ ¿ë¹ýÀ» Åä´ë·Î, ¾Æ·¡ÀÇ ¸í·É¾î¸¦ ¼öÇàÇß´Ù: °èÁ¤ »ý¼ºÈÄ, adminÀÇ UID°¡ 1002¹øÀ̶ó¸é, -id 1002 ¸¦ ºÙ¿©ÁÖ´Â °ÍÀÌ´Ù. {{{#!vim root@afsdisk1 # pts createuser -name admin -id 1002 -cell powercell -noauth }}} ÀÌÁ¦ ÀÌ »ç¿ëÀÚ°¡ system:administrators ±×·ì¿¡ Æ÷Ç﵃ ¼ö ÀÖµµ·Ï, '''pts adduser''' ¸í·ÉÀ» »ç¿ëÇÏ¿© ±×·ì¿¡ Æ÷ÇÔ½ÃÅ°°í, '''pts membership''' ¸í·ÉÀ» ÅëÇØ È®ÀÎÇϵµ·Ï ÇÏÀÚ. ¾Æ·¡ÀÇ ¿¹¸¦ ¾Ë¾Æ¼­ ÀûÀýÇÏ°Ô °íÃÄ°¡¸é¼­ »ç¿ëÇÏÀÚ. {{{#!vim root@afsdisk1 # pts adduser admin system:administrators -cell powercell -noauth root@afsdisk1 # pts membership admin -cell powercell -noauth Groups admin (id: 1002) is a member of: system:administrators }}} == AFS ¼­¹ö Àç½ÃÀÛ == ÀÌÁ¦ »ó´ÜÀÇ ¼³Á¤ÀÌ ³¡³µÀ¸¸é, ÀÌÁ¦ ±îÁö ¶ç¿î AFSÀÇ ¸ðµç ¼­¹ö¸¦ Àç½ÃÀÛ Çϵµ·Ï ÇÏÀÚ. ¼­¹öÀÇ Àç½ÃÀÛÀ» À§ÇÑ ¿ë¹ýÀº ¾Æ·¡¿Í °°´Ù: {{| # bos restart <'''server name'''> -all -cell <'''cell name'''> -noauth |}} À§ÀÇ ¿ë¹ý´ë·Î, ¾Æ·¡¿Í °°ÀÌ ½ÇÇàÇÏ¿© AFS ¼­¹ö¸¦ Àç½ÃÀÛ ÇÏÀÚ: {{{#!vim root@afsdisk1 # bos restart afsdisk1.testbed.org -all -cell powercell -noauth }}} == fs ÀνºÅϽº : ÆÄÀÏ ¼­¹ö, º¼·ý ¼­¹ö, ±×¸®°í Salvager ÇÁ·Î¼¼½ºÀÇ ±¸µ¿ == {i} '''''ÀÌ ´Ü¶ôÀº ½ÇÁ¦·Î ¼­ºñ½º¸¦ À§ÇÑ ½ºÅ丮Áö°¡ ´ã±ä ¹°¸®Àû ¼­¹ö¿¡¼­ Ãß°¡µÇ¾î¾ß ÇÏ´Â ÀνºÅϽº ÀÌ´Ù. ÀÌ´Â ¿ø·¡ ¸ÞÀÎ ¼­¹ö¿¡ ÇʼöÀûÀÎ ¿ä¼Ò°¡ ¾Æ´ÏÁö¸¸, ´ëºÎºÐÀÌ µ¥ÀÌÅͺ£À̽º ¼­¹ö¿Í ÆÄÀÏ ¼­¹ö°¡ °°Àº ¹°¸®Àû ¼­¹ö¿¡¼­ ÀÛµ¿ÇÏ°Ô ¸¸µå´Â °ÍÀÌ º¸ÅëÀ̹ǷÎ, ¼øÂ÷ÀûÀÎ ±¸¼ºÀ» º¸¿©ÁÖ±â À§Çؼ­ Database ¼­¹ö ±¸¼º ¸ñ·Ï¿¡ Æ÷ÇÔ½ÃŲ°ÍÀÌ´Ù.''''' ÀÌÁ¦ '''bos create''' ¸í·ÉÀ» ´Ù½Ã »ç¿ëÇÏ¿©, ÆÄÀϼ­¹ö, º¼·ý ¼­¹ö, ±×¸®°í Salvager¸¦ µî·ÏÇÏ°í, ±¸µ¿ÇØ¾ß ÇÑ´Ù. À̵é 3°³ÀÇ ÇÁ·Î¼¼½º´Â ´Ù¸¥ ¼­¹ö ÇÁ·Î¼¼½º¿Í ¸¶Âù°¡Áö·Î '''''/usr/libexec/openafs''''' ³»¿¡ ÀÖ°í, °¢°¢ '''fileserver''', '''volserver''', '''salvager''' ¶ó´Â À̸§À» °®´Â´Ù. Ãß°¡ÇÏ´Â ¹æ¹ýÀº, ¾Æ·¡ÀÇ ¿ë¹ý°ú °°´Ù: {{| # bos create <'''server name'''> fs fs <'''ÆÄÀϼ­¹ö ÇÁ·Î¼¼½º¸í'''> <'''º¼·ý¼­¹ö ÇÁ·Î¼¼½º¸í'''> <'''salvager ÇÁ·Î¼¼½º¸í'''> -cell <'''cell name'''> -noauth |}} À§ÀÇ ¿ë¹ýÀ» Åä´ë·Î, ¾Æ·¡ÀÇ ¸í·É¹®À» ½ÇÇàÇÏ¸é µÈ´Ù: {{{#!vim root@afsdisk1 # bos create afsdisk1.ucsoft.org fs fs \ /usr/libexec/openafs/fileserver /usr/libexec/openafs/volserver \ /usr/libexec/openafs/salvager -cell powercell -noauth }}} === OpenAFS ¼­¹ö ÇÁ·Î¼¼½º¿¡ ´ëÇÑ ¼¼ºÎ »óÅ ȮÀÎ === ÀÌÁ¦±îÁöÀÇ °úÁ¤À¸·Î ¸ðµç ¼­¹ö ÇÁ·Î¼¼½º¸¦ ±¸¼ºÇÏ¿´À¸¸é, ±× ÇÁ·Î¼¼½º°¡ Àß ¶° ÀÖ´ÂÁö ´ÙÀ½ÀÇ ¿ë¹ýÀ¸·Î È®ÀÎ ÇÒ ¼ö ÀÖ´Ù: ¿ª½Ã ¸¶Âù°¡Áö·Î '''bos status''' ¸í·ÉÀ» »ç¿ëÇÑ´Ù. {{| # bos status -long -noauth |}} À§ÀÇ ¿ë¹ýÀ» »ç¿ëÇÏ¿©, ½ÇÇàÇÏ¸é ´ÙÀ½°ú °°Àº È­¸éÀÌ ³ª¿Â´Ù: {{{#!vim root@afsdisk1 # bos status afsdisk1.testbed.org -long -noauth Instance kaserver, (type is simple) currently running normally. Process last started at Sun Nov 19 00:55:34 2006 (14 proc starts) Last exit at Sun Nov 19 00:52:08 2006 Command 1 is '/usr/libexec/openafs/kaserver' Instance buserver, (type is simple) currently running normally. Process last started at Sun Nov 19 00:56:08 2006 (14 proc starts) Last exit at Sun Nov 19 00:52:08 2006 Command 1 is '/usr/libexec/openafs/buserver' Instance ptserver, (type is simple) currently running normally. Process last started at Sun Nov 19 00:56:11 2006 (14 proc starts) Last exit at Sun Nov 19 00:52:08 2006 Command 1 is '/usr/libexec/openafs/ptserver' Instance vlserver, (type is simple) currently running normally. Process last started at Sun Nov 19 00:56:17 2006 (14 proc starts) Last exit at Sun Nov 19 00:52:08 2006 Command 1 is '/usr/libexec/openafs/vlserver' Instance fs, (type is fs) currently running normally. Auxiliary status is: file server running. Process last started at Sun Nov 19 00:55:34 2006 (4 proc starts) Last exit at Sun Nov 19 00:55:34 2006 Command 1 is '/usr/libexec/openafs/fileserver' Command 2 is '/usr/libexec/openafs/volserver' Command 3 is '/usr/libexec/openafs/salvager' }}} {i} ¿¡·¯ ¹ß»ýÀ¸·Î ÀÎÇÑ Á¾·áÀÇ °æ¿ì, Á¾·á½ÃÀÇ ¸®ÅÏ°ªÀÌ °°ÀÌ ³ªÅ¸³ª°Ô µÉ °ÍÀÌ´Ù. == Fileserver ÀÇ UDP ¸®½º´× ÀÎÅÍÆäÀ̽º ¼³Á¤ == afslocaldir (/var/lib/openafs) ¿¡¼­ {{{NetInfo}}} ÆÄÀÏÀ» »ý¼ºÇÏ´Â °ÍÀ¸·Î, ÇöÀç ¼­¹ö ½Ã½ºÅÛÀÇ ³×Æ®¿÷ ÀÎÅÍÆäÀ̽º°¡ ¿©·¯°³ÀÏ ¶§´Â À̵éÀ» µî·ÏÇØÁà¾ß ÇÑ´Ù. /var/lib/openafs µð·ºÅ丮·Î À̵¿, {{{NetInfo}}} ¶ó´Â À̸§À¸·Î ÅؽºÆ® ÆÄÀÏÀ» ÀÛ¼ºÇÑ´Ù. ÀÔ·Â ¹æ½ÄÀº IP¸¦ ³Ö¾îÁִµ¥, ´ÙÀ½°ú °°ÀÌ ÇÑ´Ù: {{{#!vim 192.168.0.21 127.0.0.1 }}} ±×·± ´ÙÀ½, '''bos restart''' ¸í·ÉÀ» »ç¿ë, Fileserver¸¦ Àç½ÃÀÛ Çϵµ·Ï ÇÑ´Ù. == ÀÌÁ¦ ¹«¾ùÀ» ÇØ¾ß Çϳª? == Áö±Ý±îÁöÀÇ ³»¿ëÀº OpenAFS¸¦ »ç¿ëÇϱâ À§ÇØ, ÃÖÃÊ·Î ¼­¹ö¸¦ ±¸¼ºÇÏ´Â °Í¿¡ ´ëÇؼ­ ´Ù·ç¾ú´Ù. ¼­¹ö¸¦ ±¸¼ºÇßÀ¸¸é, ¾ÕÀ¸·Î´Â ±× ¼­¹ö°¡ ¼­ºñ½ºÇÒ ¼¿À» Á¦°øÇÏ´Â ½ÇÁ¦ ½ºÅ丮Áö °ø°£°ú ¿¬°á½ÃÄÑÁà¾ß ÇÏ´Â ÀÛ¾÷ÀÌ µÉ °ÍÀÌ´Ù. ±× ÀÛ¾÷À» À§ÇØ, ´ÙÀ½ ÀåÀÎ OpenAFS Cell Volume ±¸¼ºÀ» »ìÆ캸±â ¹Ù¶õ´Ù. = OpenAFS Cell Volume ±¸¼º = OpenAFS ¼­¹ö¸¦ ±¸¼ºÇϱâ À§ÇÑ µÎ¹ø°, ¼¿ÀÇ ±¸¼ºÇ°ÀÎ º¼·ý(Volume)À» »ý¼º/Ãß°¡ÇÏ´Â ´Ü¶ôÀÌ´Ù. À§ÀÇ ´Ü¶ôÀ» ÅëÇØ ÀÌÁ¦±îÁö º¼·ýÀ» ´ãÀ» ¼ö ÀÖ´Â Å« »óÀÚ¸¦ ¸¸µé¾ú´Ù¸é, ÀÌÁ¦ Å« »óÀھȿ¡ ´ã±æ ±×¸©µéÀ» ³ÖÀ» Â÷·ÊÀÌ´Ù. Cell Volume µéÀ» óÀ½ ±¸¼ºÇÑ´Ù¸é, ´ÙÀ½ µÎ°¡Áö¸¦ ±â¾ïÇ϶ó. ù¹ø°´Â ÃÖ¼ÒÇÑÀÇ ±¸µ¿À» À§ÇØ '''root.afs''' ¿Í '''root.cell''' ÀÌ '''¹Ýµå½Ã ÇÊ¿äÇÏ´Ù'''´Â »ç½ÇÀ» ±â¾ïÇØ¾ß ÇÑ´Ù. µÎ¹ø°´Â ´Ù¸¥ ½Ã½ºÅÛ¿¡ ´Ü¼ø ÆÄÀÏ ¼­¹ö¸¦ ±¸¼ºÇϱâ À§ÇØ, ¾Õ¿¡¼­ ÇØ¿Ô´ø '''µ¥ÀÌÅͺ£À̽º±îÁö ´Ù¸¥ ½Ã½ºÅÛ¿¡ ±¸ÃàÇÒ ÇÊ¿ä´Â ¾ø´Ù'''´Â »ç½ÇÀÌ´Ù. ¹Ýµå½Ã ±â¾ïÇصΰí, ±¸¼º¿¡ ÀÓÇØ¾ß ÇÒ °ÍÀÌ´Ù. == µð½ºÅ© Áغñ == ¼­ºñ½º¸¦ ÇÒ µð½ºÅ©¸¦ ÆÄƼ¼ÇÀ» ÂÉ°³´øÁö, ¹°¸® µð½ºÅ©¸¦ ÇÑ ÆÄƼ¼Ç¿¡ Àâ´øÁö, ¾î¶»°Ô ÇÏµç ¿©ºÐÀÇ ºó ÆÄƼ¼ÇÀÌ ÇÊ¿äÇÏ´Ù: AFS´Â Ãß°¡ÀûÀÎ µð½ºÅ© ij½ÌÀ» Çϱ⠶§¹®¿¡, ÆÄÀÏ ½Ã½ºÅÛÀº ext2, ȤÀº ext3À» »ç¿ëÇÒ °ÍÀ» ±ÇÀåÇÑ´Ù. ´Ù¸¥ ÆÄƼ¼ÇÀº Áö¿øÇÏÁö ¾ÊÀ» »Ó ´õ·¯, À§ÇèÇϱâ±îÁö ÇÏ´Ù. (reiserfs ÀÇ °æ¿ì, ¿¡·¯ ¸Þ½ÃÁö¸¦ Ãâ·ÂÇÏ¸ç ´ç½Å¿¡°Ô °æ°í¸¦ ÇÒ °ÍÀÌ´Ù) {i} Transarc / ±¸ ¹öÀüÀÇ OpenAFS ´Â ºÐ¸®µÈ ext2 ÆÄƼ¼Ç¿¡ µð½ºÅ© ij½ÌÀ» À§ÇÑ °ø°£À» ÇÊ¿ä·Î Çß´Ù. ÀÌ »çÇ× ¿ª½Ã Áö±ÝÀº ¹Ù²î¾ú°í, Áö±ÝÀº /etc/openafs/cacheinfo ¿¡ ij½ÌµÈ ¿ë·® »óŸ¦ ÀúÀåÇÑ´Ù. {i} SGI XFS¸¦ ¾²°í ½Í´Ù¸é, ¶Ç´Ù¸¥ AFS ±¸ÇöüÀÎ arla (http://www.stacken.kth.se/project/arla/) ¸¦ »ç¿ëÇÒ °ÍÀ» ±ÇÀåÇÑ´Ù. ¿©±â¼­´Â, ''/dev/hda4'' ¿¡ '''ext3'''À¸·Î ±¸¼ºÀ» ÇÒ °ÍÀÌ´Ù. Áغñ°¡ µÇ¾úÀ¸¸é, ·çÆ® µð·ºÅ丮¿¡ vicep'''X''' µð·ºÅ丮¸¦ ¸¸µé¾î¾ß ÇÑ´Ù. ('''X''' À§Ä¡¿¡´Â ¼±È£ÇÏ´Â °ªÀ» ³Ö´Â´Ù. a¸¦ ³Öµç b¸¦ ³Öµç, ¿µ¹® ¼Ò¹®ÀÚ·Î ³Ö´Â´Ù. ¿©±â¼­´Â vicepa ·Î ¼³Á¤ÇÏ°Ú´Ù.) {i} °æÇè»ó X À§Ä¡¿¡ ¼ýÀÚ°¡ µé¾î°¡°Å³ª Çϸé ÀνÄÇÏÁö ¸øÇÏ´Â ¹®Á¦°¡ »ý±ä´Ù. {{{#!vim root@afsdisk1 # mkdir /vicepa }}} ÀÌÁ¦ '''/etc/fstab''' ¿¡ À§ µð·ºÅ丮·Î ÆÄƼ¼ÇÀ» ¸¶¿îÆ®ÇÏ°Ô ÇØ Áà¾ß ÇÑ´Ù. /etc/fstabÀ» ¿­°í ¾Æ·¡ÀÇ ÁÙÀ» Ãß°¡ÇØ ÁÙ °ÍÀÌ´Ù: ¾Æ·¡ÀÇ ³»¿ëÀ», ¿øÇÏ´Â ¼³Á¤À¸·Î °íÃļ­ »ç¿ëÇϵµ·Ï ÇÏÀÚ. {{{#!vim fstab /dev/hda4 /vicepa ext3 defaults 0 2 }}} ÀÌÁ¦, '''/etc/fstab'''¿¡ ¼³Á¤ÇØÁØ ´ë·Î, ¸¶¿îÆ®¸¦ Çϵµ·Ï ÇÏÀÚ. ¾Æ·¡ÀÇ ¸í·ÉÀ» ³»¸®¸é, /dev/hda4 ´Â /vicepa µð·ºÅ丮¿¡ ¸¶¿îÆ® µÉ °ÍÀÌ´Ù. {{{#!vim root@afsdisk1 # mount -a }}} == (ÃÖÃÊ ±¸¼º½Ã) º¼·ý ¼­¹ö µ¥ÀÌÅͺ£À̽º¿¡ º¼·ý »ý¼ºÇϱâ == ÀÌ ºÎºÐÀº ù¹ø° AFS ¼­¹ö¸¦ ±¸¼ºÇÒ ¶§ »ç¿ëÇÏ´Â, '''''root.afs''''' ¶ó´Â '''ù¹ø°''' AFS º¼·ýÀ» »ý¼ºÇÏ´Â ºÎºÐÀÌ´Ù. »ç¿ë¹ýÀº ¾Æ·¡¿Í °°´Ù: {{| # vos create root.afs -cell -noauth |}} {i} ÆÄƼ¼Ç À̸§Àº, ½ÇÁ¦ µð¹ÙÀ̽º ÆÄÀÏ ´ë½Å ¾Õ¿¡¼­ ¾ð±ÞÇß´ø ÆÄƼ¼Ç À̸§À» »ç¿ëÇØ¾ß ÇÑ´Ù. (/vicep'''X''') ¾Õ¿¡¼­ '''/vicepa''' ·Î »ý¼ºÇÑ °Í°ú À§ÀÇ ¿ë¹ýÀ» Åä´ë·Î, ´ÙÀ½À» ½ÇÇàÇÑ´Ù: {{{#!vim root@afsdisk1 # vos create afsdisk1.testbed.org /vicepa root.afs -cell powercell -noauth Volume 536870912 created on partition /vicepa of afsdisk1.testbed.org }}} Á¤»óÀûÀ¸·Î ½ÇÇà µÉ °æ¿ì, ÇØ´ç º¼·ýÀÇ Å©±â°¡ ¸Þ½ÃÁö¿¡ Æ÷Ç﵃ °ÍÀÌ´Ù. 'partition /vicep01 does not exist on the server' ¶ó´Â ¸Þ½ÃÁö°¡ ³ª¿À¸é, ÇØ´ç ÆÄƼ¼ÇÀ» ¸¶¿îÆ® ÇÏ°í, '''bos restart''' ¸í·ÉÀ¸·Î ¼­¹ö¸¦ Àç½ÃÀÛ ÇÑ ÈÄ Àç½Ãµµ¸¦ ÇÏ¸é µÈ´Ù. == ¼­¹ö ºÎºÐ¿¡¼­ÀÇ Update ¼­¹ö ±¸¼º == ¼¿¿¡ Æ÷ÇÔµÈ ´Ù¸¥ ¸Ó½Åµé¿¡°Ô ÀÌµé µð·ºÅ丮ÀÇ ³»¿ëÀ» ¹èÆ÷Çϱâ À§ÇØ, (¼­¹ö ·¹º§¿¡¼­ÀÇ) Update ¼­¹ö (upserver ÇÁ·Î¼¼½º)¸¦ ½ÃÀÛÇØ¾ß ÇÑ´Ù. À̵éÀº ´ç½ÅÀÌ ´Ù¸¥ ¼­¹ö ¸Ó½Å¿¡¼­, Ãß°¡·Î Ŭ¶óÀ̾ðÆ® ·¹º§ÀÇ Update Server¸¦ ±¸¼ºÇÒ ¶§ È°¼ºÈ­ µÈ´Ù. ¿ë¹ýÀº ¾Æ·¡¿Í °°´Ù: {{| # bos create upserver simple "/usr/libexec/openafs/upserver \ -crypt /etc/openafs/server -clear /usr/libexec/openafs" -cell -noauth |}} À§ÀÇ ¿ë¹ýÀ» Åä´ë·Î, ¼­¹ö·¹º§¿¡¼­ÀÇ Update ¼­¹ö¸¦ ±¸¼ºÇÏÀÚ: {{{#!vim root@afsdisk1 # bos create afsdisk1.testbed.org upserver simple \ "/usr/libexec/openafs/upserver -crypt /etc/openafs/server -clear /usr/libexec/openafs" \ -cell powercell -noauth }}} == Ŭ¶óÀ̾ðÆ® ºÎºÐÀÇ Update ¼­¹ö ±¸¼º == ÀÌ ºÎºÐÀ» Á¢Çϸé ÀÌ»óÇÏ°Ô »ý°¢ÇÒ »çÇ×ÀÌ, '''"¿Ö ¼¿ º¼·ý¸¸ ÀÖ´Â ÆÄÀϼ­¹ö¸¦ ±¸¼ºÇϴµ¥ Ŭ¶óÀ̾ðÆ® ºÎºÐÀÇ Update ¼­¹ö°¡ ÇÊ¿äÇÑ°ÅÁö?"''' °¡ µÉ °ÍÀÌ´Ù. ÀÌ Áú¹®¿¡ ´ëÇÑ ´ë´äÀº, '''"´Ü¼ø ÆÄÀϼ­¹ö ¿ª½Ã ¸ÞÀÎ OpenAFS ¼­¹ö·ÎºÎÅÍ ¼³Á¤µéÀ» ¹Þ¾Æ¿Í¾ß Çϴϱî"''' °¡ µÉ °ÍÀÌ´Ù. µû¶ó¼­, OpenAFS ¸ÞÀÎ ¼­¹ö ³»¿¡ ¸¸ ÆÄÀÏ ¼­ºñ½º¸¦ Ãß°¡ÇÏ°í ½Í´Ù¸é, ÀÌ ±¸°£À» Áö³ªÃĵµ µÉ °ÍÀÌ´Ù. Ŭ¶óÀ̾ðÆ® ºÎºÐÀÇ Update ¼­¹ö´Â 2°³·Î ³ª´µ¾îÁø´Ù. Çϳª´Â OpenAFS (Database) ¼­¹ö·Î ºÎÅÍ ½Ã½ºÅÛ ¼³Á¤ »çÇ×À» ¹Þ¾Æ¿À°í(Áï, /etc/openafs/server ¼³Á¤À» ¹èÆ÷ÇÏ´Â ¼­¹ö·Î ºÎÅÍ ¼³Á¤À» ¹Þ¾Æ¿À´Â), µ¿±âÈ­ ÇÏ´Â upclientetc ¿Í, ¹ÙÀ̳ʸ® ¼­¹ö·ÎºÎÅÍ AFS °ü·Ã ¹ÙÀ̳ʸ®¸¦ µ¿±âÈ­ÇÏ´Â upclientbin ÀÌ ÀÖ´Ù. Thin Client ÀÇ ±¸¼ºÀÌ ¾Æ´Ï¶ó¸é, ±âº»ÀûÀ¸·Î´Â upclientetc ¸¸ ¼³Á¤ÇÏ¸é µÈ´Ù. ´Ü¼ø ¼¿ º¼·ý ÆÄÀÏ ¼­¹ö´Â ÀÌ upclientetc ¿Í ÇÔ²², ¼­¹ö ºÎºÐ¿¡¼­ÀÇ Update ¼­¹ö (Áï, upserver) µÎ°¡Áö¸¦ ÇÊ¿ä·Î ÇÑ´Ù. upclientetc ¸¦ ±¸¼ºÇÏ´Â ¿ë¹ýÀº ´ÙÀ½°ú °°´Ù: {{| # ./bos create <'''machine name'''> upclientetc simple \ "/usr/afs/bin/upclient <'''system control machine'''> [-t