BACKRUSH  À¯´Ð½º¸í·É  ´ÙÀ½  ÀÚ·á½Ç  Ascii Table   ¿ø°ÝÁ¢¼Ó  ´Þ·Â,½Ã°£   ÇÁ·Î¼¼½º   ½©
ÁöÇÏö³ë¼±   RFC¹®¼­   SUN FAQ   SUN FAQ1   C¸Þ´º¾ó   PHP¸Þ´º¾ó   ³Ê±¸¸®   ¾Æ½ºÅ°¿ùµå ¾ÆÀÌÇǼ­Ä¡

±Û¾´ÀÌ: SUN [SUN]ZFS ÀÌÇØÇϱâ Á¶È¸¼ö: 10829


ZFS ½ÃÀÛÇϱâ
From OpenSolaris.org

ZFS¶õ ¹«¾ùÀԴϱî?
ZFS´Â °£ÆíÇÑ °ü¸®¼º, Æ®·£Á§¼Ç ±â¹ÝÀÇ ±¸¹®, ¿Ïº®ÇÑ µ¥ÀÌŸ ¹«°á¼º º¸Àå, ´ë¿ë·®ÀÇ È®À强À» Á¦°øÇÏ´Â ÀüÇô »õ·Î¿î Á¾·ùÀÇ ÆÄÀÏ ½Ã½ºÅÛÀÔ´Ï´Ù. ZFS´Â ±âÁ¸ÀÇ Á¸ÀçÇÏ´ø ±â¼úÀÇ ¹ßÀüÀÌ ¾Æ´Õ´Ï´Ù;±âº»ÀûÀ¸·Î µ¥ÀÌŸ °ü¸®¿¡ ´ëÇÑ »õ·Î¿î Á¢±ÙÀÔ´Ï´Ù. ¿ì¸®´Â Áö³­ 20³â°£ Áö¼ÓµÇ¿Â »õ·Î¿î °³³äÀÇ °³¹ß, ¼Ò½ºÀÇ º¹À⼺ Á¦°ÅµîÀÇ ¹æ¹ýµéÀ» ¸ðµÎ ³¯·Á ¹ö¸®°í »ç¿ëÀÌ °£ÆíÇÑ »õ·Î¿î Á¾·ùÀÇ ½ºÅ丮Áö ½Ã½ºÅÛÀ» ¸¸µé¾ú½À´Ï´Ù.

ZFS´Â ½ºÅ丮Áö Ç® ¸ðµ¨À» Á¦½ÃÇÔÀ¸·Î½á ±âÁ¸ÀÇ º¼·ý°ú ±×¿¡ ±â¹ÝÇÑ ÆÄƼ¼Å´×, ÇÁ·ÎºñÁ®´×, ´ë¿ªÆø ³¶ºñ, ÀÌÀüÀÇ ºÒÆí¼ºµîÀÇ ¹®Á¦¸¦ ¿ÏÀüÈ÷ Á¦°ÅÇß½À´Ï´Ù. ¼öõ°³ÀÇ ÆÄÀϽýºÅÛÀÌ ÇϳªÀÇ ÀÏ¹Ý ½ºÅ丮Áö ¾È¿¡ ´ã°Ü Áú ¼ö ÀÖ°í °¢°¢ÀÇ ÆÄÀϽýºÅÛÀº ¿ÀÁ÷ ½ÇÁ¦·Î ÇÊ¿äÇÑ ¸¸Å­ÀÇ °ø°£¸¸À» »ç¿ëÇÏ°Ô µÆ½À´Ï´Ù. Ç®ÀÇ ¸ðµç µð¹ÙÀ̽ºµéÀÇ ´ë¿ªÆøÀº Ç×»ó ¸ðµç ÆÄÀϽýºÅÛ¿¡¼­ »ç¿ë °¡´ÉÇÕ´Ï´Ù.

¸ðµç µ¿ÀÛÀº copy-on-write Æ®·»Á§¼ÇÀ¸·Î ÀÌ·ç¾îÁ® À־ µð½ºÅ©ÀÇ »óÅ´ Ç×»ó À¯È¿ ÇÕ´Ï´Ù. Áï ´õÀÌ»ó fsck(1M)¸¦ ZFS ÆÄÀÏ ½Ã½ºÅÛ¿¡ ½ÇÇàÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ¸ðµç ºí·°µéÀº µ¥ÀÌŸ ¿À·ù¿¡ ´ëºñÇØ Ç×»ó üũ¼¶ µÇ¸ç replicate ¼³Á¤(¹Ì·¯ ¶Ç´Â RAID)¿¡ ÀÇÇØ ÀÚµ¿À¸·Î Ä¡À¯°¡ °¡´ÉÇÕ´Ï´Ù. ¸¸¾à ÇϳªÀÇ Ä«ÇÇ°¡ ¼Õ»óÀ» ÀÔ¾ú´Ù¸é ZFS´Â ¹ß°ß ÈÄ¿¡ ´Ù¸¥ Ä«ÇǸ¦ ÀÌ¿ëÇÏ¿© º¹±¸ ÇØ ÁÝ´Ï´Ù.

ZFS´Â RAID-Z¶ó´Â »õ·Î¿î µ¥ÀÌŸ replication ¸ðµ¨À» Á¦°øÇÕ´Ï´Ù. RAID-Z´Â RAID-5¿Í ºñ½ÁÇÏÁö¸¸ °¡º¯ stripe width¸¦ Á¦°øÇÔÀ¸·Î½á RAID-5ÀÇ write hole(stripe ¿À·ù´Â µ¥ÀÌŸ¿Í Æ丮Ƽ ºñÆ®°¡ ¾÷µ¥ÀÌÆ® µÉ¶§ÀÇ Á¤ÀüÀ¸·Î ¹ß»ýÇÕ´Ï´Ù)¿À·ù¸¦ Á¦°ÅÇß½À´Ï´Ù. ¸ðµç RAID-Z´Â full-stripe ¾²±â ¹æ¹ýÀ» »ç¿ëÇÕ´Ï´Ù. Àбâ-¼öÁ¤-¾²±âµîÀÇ ºÎ°¡ °úÁ¤ÀÌ ÇÊ¿ä ¾ø°í write hole ¹®Á¦µµ ¾øÀ¸¸ç °¡Àå Áß¿äÇÑ °ÍÀº Çϵå¿þ¾î¿¡ NVRAMÀÌ ÀÖÀ» ÇÊ¿ä°¡ ¾ø´Ù´Â °ÍÀÔ´Ï´Ù. ZFS´Â Àú·ÅÇÑ µð½ºÅ©¸¦ ¼±È£ÇÕ´Ï´Ù.

¹°·Ð Àú·ÅÇÑ µð½ºÅ©´Â ¿À·ù°¡ »ý±æ¼ö ÀÖ½À´Ï´Ù. ±×·¯¹Ç·Î ZFS´Â µð½ºÅ© scrubbingÀ» Á¦°øÇÕ´Ï´Ù. ECC memoryÀÇ scrubbing°ú °°ÀÌ ¹Ù·Î Á¤Á¤ÀÌ °¡´ÉÇÏ´õ¶óµµ ¸ðµç µ¥ÀÌŸ¸¦ ´Ù½Ã ÀÐ¾î µé¿©¼­ ÀáÀçÀûÀÎ ¿À·ù¸¦ ã¾Æ³»°Ô µË´Ï´Ù. scrubÀº ¸ðµç ½ºÅ丮Áö Ç®À» ¼øȸ Çϸ鼭 ¸ðµç ºí·°ÀÇ Ä«ÇǵéÀ» Àаí 256ºñÆ® üũ¼¶À» ÀÌ¿ëÇÏ¿© °ËÁõ ÇÑ ÈÄ¿¡ º¹±¸°¡ ÇÊ¿ä ÇÏ¸é º¹±¸¸¦ ÇÏ°Ô µË´Ï´Ù. ÀÌ ¸ðµç ÀÛ¾÷Àº ½ºÅ丮Áö Ç®ÀÌ ¿Â¶óÀÎÀÎ »óÅ¿¡¼­ ÀÌ·ç¾îÁö°Ô µË´Ï´Ù.

ZFS´Â CPUÀÇ ÆÄÀÌÇÁ¶óÀÎ °³³ä°ú ºñ½ÁÇÑ I/O ÆÄÀÌÇÁ¶óÀÎ ¿£ÁøÀ» °¡Áö°í ÀÖ½À´Ï´Ù. ÆÄÀÌÇÁ¶óÀÎÀº I/O ÀÇÁ¸¼º ±×·¡ÇÁ¿¡ ±â¹ÝÇÏ¿© ½ºÄھµù, ¿ì¼±¼øÀ§, µ¥µå¶óÀÎ ½ºÄÉÁÙ¸µ, ¿À·ù ¹ß»ý ´ëó ¹× I/O ÀÏ°ý ó¸® µîÀÇ ±â¹ýÀ» Á¦°øÇÕ´Ï´Ù. ´Ù¸¥ ÆÄÀÏ ½Ã½ºÅÛ¿¡ ½É°¢ÇÑ ¿µÇâÀ» ÁÖ´Â I/O ·Îµå´Â ÀÌÁ¦ ZFSÀÇ I/O ÆÄÀÌÇÁ¶óÀÎÀ» ÅëÇØ ¼Õ½±°Ô ´ëóÇÒ ¼ö ÀÖ½À´Ï´Ù.

ZFS´Â »ó¼ö¹üÀ§ ¾È¿¡¼­ ¹«Á¦ÇÑÀûÀÎ ½º³À¼¦°ú Ŭ·ÐµéÀ» Á¦°øÇÕ´Ï´Ù. ½º³À¼¦Àº Àбâ Àü¿ëÀÇ ÆÄÀϽýºÅÛ º¹»çº»ÀÌ°í Ŭ·ÐÀº ½º³À¼¦¿¡ ¾²±â ±â´ÉÀÌ ´õÇØÁø °ÍÀÔ´Ï´Ù. Ŭ·ÐÀº ¿öÅ©½ºÆäÀ̽º³ª ¼ÒÇÁÆ®¿þ¾î ¼³Ä¡, µð½ºÅ©°¡ ¾ø´Â Ŭ¶óÀ̾ðÆ®µîÀÇ ºÐ¾ß¿¡¼­ ÃÖ°íÀÇ °ø°£Àý¾à È¿À²¼ºÀ» Á¦°øÇÕ´Ï´Ù.

ZFS ¹é¾÷°ú º¹±¸´Â ½º³À¼¦¿¡ ÀÇÇØ °­·ÂÇØ Áý´Ï´Ù. ¸ðµç ½º³À¼¦Àº Ç®¹é¾÷ÀÌ °¡´ÉÇÏ°í ¶ÇÇÑ ¾î¶°ÇÑ Â¦ÀÇ ½º³À¼¦µµ Áõ°¡ºÐ ¹é¾÷ÀÌ °¡´ÉÇÕ´Ï´Ù. Áõ°¡ºÐ ¹é¾÷Àº ¿ø°Ý replication¿¡¼­ ¾öû³ª°Ô È¿°úÀûÀÎ ¹æ¹ý ÀÔ´Ï´Ù. - ¿¹¸¦ µé¾î 10ÃÊ¿¡ Çѹø¾¿ Áõ°¡ºÐÀ» Àü¼ÛÇÒ °æ¿ì

ZFS¿¡ ÇÑ°è´Â ¾ø½À´Ï´Ù. »ç¿ëÀÚ°¡ ¿øÇÏ´Â ¼ö ¸¸Å­ÀÇ ÆÄÀÏÀ» ¸¸µé ¼ö ÀÖ½À´Ï´Ù;64ºñÆ® ÆÄÀÏ ¿ÀÇÁ¼Â, ¹«Á¦ÇÑ ÀûÀÎ ¸µÅ©¿Í µð·ºÅ丮 ¿£Æ®¸®, ±×¸®°í ½º³À¼¦µîÀ» ÀÌ¿ëÇϱ⠶§¹®ÀÔ´Ï´Ù.

ZFS´Â ±âº»ÀûÀ¸·Î ¾ÐÃàÀ» Á¦°øÇÕ´Ï´Ù. °ø°£À» 2~3¹è ÁÙÀÌ´Â°Í ÀÌ»óÀ¸·Î I/OÀÇ ¾çÀ» 2~3¹è Á¤µµ ÁÙ¿ä ÁÖ°Ô µË´Ï´Ù. ÀÌ·¯ÇÑ ÀÌÀ¯·Î ¾ÐÃà ¿É¼ÇÀ» È°¼ºÈ­ ½Ãų °æ¿ì ¸¹Àº ¿öÅ© ·ÎµåµéÀÌ Á»´õ ºü¸£°Ô ó¸® µÉ ¼ö ÀÖÀ»°Í ÀÔ´Ï´Ù.

ÆÄÀϽýºÅÛ°ú ´õºÒ¾î ZFS ½ºÅ丮Áö Ç®Àº raw-µð¹ÙÀ̽º ±¸¹®ÀÌ ÇÊ¿äÇÑ ¾îÇø®ÄÉÀ̼ǵ鿡°Ô º¼·ýÀ» Á¦°øÇÕ´Ï´Ù. ZFS º¼·ýÀº swap µð¹ÙÀ̽º·Î »ç¿ë µÉ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î swap º¼·ý¿¡ ¾ÐÃà ¿É¼ÇÀ» È°¼ºÈ­ ÇÑ´Ù¸é »ç¿ëÀÚ´Â ¾ÐÃàµÈ °¡»ó ¸Þ¸ð¸® °ø°£À» °¡Áö°Ô µÇ´Â °ÍÀÔ´Ï´Ù.

ZFS ½ÃÀÛÇϱâ
ÆÄÀϽýºÅÛ°ú º¼·ýÀ» °ü¸®Çϴµ¥ Á¸Àç Çß´ø ºÒÆíÇÔÀÌ ¸ðµÎ Á¦°Å µÇ¾ú½À´Ï´Ù: ´õÀÌ»ó format, newfs, mount, /etc/vfstab ¼öÁ¤, fsck, growfs, metadb, metainit µîÀÇ ÀÛ¾÷ÀÌ ÇÊ¿ä ¾ø½À´Ï´Ù.

zpool(1M) °ú zfs(1M) ¸¦ ¼Ò°³ÇØ µå¸®°Ú½À´Ï´Ù.

ZFS´Â °£ÆíÇÕ´Ï´Ù. ±×·¯¹Ç·Î ¹Ù·Î ¿©·¯ºÐÀÇ Ã¹¹ø° Ç®À» ¸¸µé¾î º¸°Ú½À´Ï´Ù:

# zpool create tank c1t2d0
ÀÌÁ¦ ´ç½ÅÀº tank¶ó´Â À̸§ÀÇ ½Ì±Û µð½ºÅ© ½ºÅ丮Áö Ç®À» °¡Áö°Ô µÇ¾ú°í /tank¿¡ ¸¶¿îÆ®µÈ ÇϳªÀÇ ÆÄÀÏ ½Ã½ºÅÛÀ» °¡Áö°Ô µÇ¾ú½À´Ï´Ù. ´õ ÀÌ»óÀÇ Ãß°¡ ÀÛ¾÷Àº ÇÊ¿ä ¾ø½À´Ï´Ù.

mailÀ̳ª home µð·ºÅ丮µéÀ» À§ÇØ ½ºÅ丮Áö¸¦ ¹Ì·¯Çϱ⸦ ¿øÇÑ´Ù¸é ÀÌ·¸°Ô °£´ÜÇÑ ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù:

Ç®À» »ý¼º:

# zpool create tank mirror c1t2d0 c2t2d0
/var/mail ÆÄÀÏ ½Ã½ºÅÛ »ý¼º:

# zfs create tank/mail
# zfs set mountpoint=/var/mail tank/mail
home µð·ºÅ丮µéÀ» »ý¼ºÇÑ ÈÄ /export/home/<username>¿¡ ¸¶¿îÆ®:

# zfs create tank/home
# zfs set mountpoint=/export/home tank/home
# zfs create tank/home/ahrens
# zfs create tank/home/billm
# zfs create tank/home/bonwick
# zfs create tank/home/eschrock
¡¦
ZFS»óÀÇ ÆÄÀϽýºÅÛÀº ¼öÁ÷ÀûÀÔ´Ï´Ù:°¢°¢ÀÇ ½Ã½ºÅÛÀº ¹Ù·Î »óÀ§ÀÇ ¼Ó¼ºµéÀ» ¹°·Á ¹Þ°Ô µÇ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ¸¶¿îÆ® Æ÷ÀÎÆ® ¼Ó¼ºÀº pathname prefix¸¦ »ó¼ÓÇÏ°Ô µË´Ï´Ù. Áï tank/home/ahrensÀº ÀÚµ¿ÀûÀ¸·Î /export/home/ahrens¿¡ ¸¶¿îÆ® µË´Ï´Ù. ¿Ö³ÄÇϸé tank/homeÀº /export/home¿¡ ¸¶¿îÆ® µÇÀֱ⠶§¹®ÀÔ´Ï´Ù. °¢°¢ÀÇ °³ÀÎ »ç¿ëÀÚµéÀÇ ¸¶¿îÆ® Æ÷ÀÎÆ®¸¦ ¸ðµÎ ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

ÀÌ°ÍÀº ½ÇÁ¦·Î Àϳ⠹ݵ¿¾È ZFS¸¦ ¿î¿ëÇØ ¿Â zion.eng¿¡¼­ home µð·ºÅ丮¿Í ¸ÞÀÏ ¼­ºñ½º¸¦ ¼³Á¤ÇÑ ¹æ¹ýÀÔ´Ï´Ù.

ÀÌ°ÍÀÌ ÀüºÎ°¡ ¾Æ´Õ´Ï´Ù!

ZFS´Â ±âº»ÀûÀ¸·Î ¾ÐÃàÀ» Á¦°øÇÕ´Ï´Ù. home µð·ºÅ丮¸¦ ¾ÐÃàÇϱâ:

# zfs set compression=on tank/home
ahrens¿¡°Ô 10GÀÇ ÄõÅ͸¦ ÇÒ´çÇϱâ:

# zfs set quota=10g tank/home/ahrens
bonwick¿¡°Ô 100GÀÇ °ø°£À» ¿¹¾à:

# zfs set reservation=100g tank/home/bonwick
NFS-export½Ã ÀÚµ¿ÀûÀ¸·Î ¸ðµç home µð·ºÅ丮¿¡ read/write ±ÇÇÑ ÁÖ±â:

# zfs set sharenfs=rw tank/home
¸ðµç µð½ºÅ©µéÀ» scrubÇÏ¿© Ç®¾ÈÀÇ µ¥ÀÌŸ¿¡ ´ëÇÑ ¹«°á¼º °Ë»ç:

# zpool scrub tank
¿À·ù°¡ ÀÖ´Â µð½ºÅ© ±³Ã¼:

# zpool replace tank c2t2d0 c4t1d0
°ø°£ Ãß°¡Çϱâ:

# zpool add tank mirror c5t1d0 c6t1d0
SPARC ¸Ó½Å 'sparky'¿¡ ÀÖ´Â Ç®À» AMD ¸Ó½Å 'amdy'·Î À̵¿:

[on sparky]
# zpool export tank
¹°¸®ÀûÀ¸·Î sparkyÀÇ µð½ºÅ©µéÀ» amdy·Î À̵¿

[on amdy]
# zpool import tank
¸ðµç°ÍÀÌ ÀÌ·¸°Ô °£´ÜÇÏ°Ô µ¿ÀÛÇÕ´Ï´Ù. &#8212; ZFS´Â ¼­·Î ´Ù¸¥ ¹ÙÀÌÆ® ¿À´õ¸¦ °¡Áö°í ÀÖ´Â ¸ðµç ½Ã½ºÅÛ¿¡¼­µµ µ¿ÀÛ Çϵµ·Ï 'adaptive endianness' ¸¦ °¡Áö°í ÀÖ½À´Ï´Ù.

¸ðµç ZFSÀÇ µ¿ÀÛÀº ÀÌ·¸°Ô °£´ÜÇÑ ÇϳªÀÇ ¸í·ÉÀ¸·Î ½ÇÇàµÇ¾î Áú ¼ö ÀÖ½À´Ï´Ù.



¿ÀºêÁ§Æ® ±â¹Ý ½ºÅ丮Áö
ZFS ´Â ¿ÀºêÁ§Æ® ±â¹Ý ½ºÅ丮Áö ÀÔ´Ï´Ù. º¼·ý ¸Å´ÏÀú ½ºÅ丮Áö Ç®ÀÇ ±âº»ÀûÀÎ ºôµù ºí·°Àº zpool ÀÔ´Ï´Ù. ¸ðµç ÆÄÀÏ ½Ã½ºÅÛ ÄÄÆÛ³ÍÆ®´Â zpool À§¿¡¼­ Á¸ÀçÇÕ´Ï´Ù. Ç®¿¡ ½ºÅ丮Áö¸¦ Ãß°¡ÇÒ ¶§¿¡´Â ´Ü¼øÈ÷ ZFS¿¡ ÆÄÀÏ, ½½¶óÀ̽º, ȤÀº Àüü µð½ºÅ©¸¦ ÀüÇØ ÁÖ¸é µË´Ï´Ù. »ç¿ë°¡´ÉÇÑ ÆÄÀÏ ½Ã½ºÅÛÀ» ¾ò±â À§ÇØ format °ú newfs ¸¦ »ç¿ëÇÏ´Â ½Ã´ë´Â Áö³µ½À´Ï´Ù. ½ÇÁ¦·Î ZFS´Â Àüü µð½ºÅ©¸¦ Àü´ÞÇØÁÙ¶§ I/O¸¦ ÃÖÀûÈ­ ÇÒ ¼ö ÀÖ½À´Ï´Ù. zpool(1M) ¸à ÆäÀÌÁö ³»¿ëÀ» º¾½Ã´Ù.

zpool - configures ZFS storage pools
zpool create [-fn] [-R root] [-M mountpoint] pool vdev...
zpool add [-fn] pool vdev...
zpool list [-H] [-o field[,fi] [pool] ...
zpool status [-xv] [pool] ...

zpool destroy [-f] pool
zpool iostat [-v] [pool] ... [interval [count]]

zpool attach [-f] pool device new_device
zpool detach pool device

zpool replace [-f] pool device [new_device]

zpool scrub [-s] pool ...

zpool offline pool device ...
zpool online pool device ...

zpool ÀͽºÆ÷Æ® [-f] pool
zpool ÀÓÆ÷Æ® [-d dir]
zpool ÀÓÆ÷Æ® [-d dir] [-f] [-o options] [-R root] pool | id [newpool]
zpool ÀÓÆ÷Æ® [-d dir] [-f] [-a]

ÀÌÁ¦ ½ÇÁ¦ÀûÀÎ ¿¹·Î µé¾î°¡ º¾½Ã´Ù. ù¹ø°·Î µÎ°³ÀÇ ½½¶óÀ̽º¸¦ ¹Ì·¯¸µ ½ÃÄѼ­ testpool À̶ó´Â À̸§À» °¡Áø zpool À» »ý¼ºÇÕ´Ï´Ù.

# zpool create testpool mirror c0t0d0s5 c0t1d0s5

# zpool list
NAME SIZE USED AVAIL CAP HEALTH ALTROOT
testpool 7.94G 164K 7.94G 0% ONLINE -

# zpool status
pool: testpool
state: ONLINE
scrub: none requested
config:

NAME STATE READ WRITE CKSUM
testpool ONLINE 0 0 0
mirror ONLINE 0 0 0
c0t0d0s5 ONLINE 0 0 0
c0t1d0s5 ONLINE 0 0 0

metainit °°Àº ÇÁ·Î±×·¥À» ÅëÇØ ´Ù¸¥ ¹ÝÂÊÀÇ ¹Ì·¯¸¦ ¼³Á¤ÇØÁà¾ßÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ±×¸®°í ÀýÂ÷°¡ ¸Å¿ì °£´ÜÇؼ­ ¼Ö¶ó¸®½º º¼·ý ¸Å´ÏÀú³ª VxVM ¿¡¼­ µû¶ó¿À´Â GUI °°Àº °ÍµéÀ» ÇÊ¿ä·Î ÇÏÁö ¾Ê½À´Ï´Ù. ±×·¡µµ ¸¸¾à GUI¸¦ ¼±È£ ÇÑ´Ù¸é ZFS °ü¸®¸¦ ¼Ö¶ó¸®½º ÀͽºÇÁ·¹½º¿¡¼­ /usr/sbin/smcwebserver ȤÀº svcadm enable svc:/system/webconsole:console À» »ç¿ëÇÏ¿© À¥Çü½ÄÀ¸·Î °ü¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.

ÀÌÁ¦ ½ºÅ丮Áö¸¦ ÇÒ´çÇ߱⠶§¹®¿¡ ÆÄÀÏ ½Ã½ºÅÛÀ» ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ZFS¿¡¼­ ÆÄÀÏ ½Ã½ºÅÛÀº ¼öÁ÷ÀûÀÎ ±¸Á¶ÀÌ°í ±×·¸±â ¶§¹®¿¡ À¯¿ëÇÑ °ü¸®Àû ÄÁÆ®·Ñ Æ÷ÀÎÆ®¸¦ Á¦°øÇÕ´Ï´Ù. »ç¿ëÀÚ´Â »çÀÌÁî, ¿¹¾à°ø°£ (µ¥ÀÌŸ¼ÂÀ» À§ÇÑ ÃÖ¼ÒÇÑÀÇ °ø°£), ÄõÅÍ, ¾ÐÃàÀÇ ¼±ÅÃ, ±×¸®°í ½º³À¼¦ µîÀÇ ÆÄÀϽýºÅÛ ±âº» ¿ä¼Ò¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î °ü¸®Àڴ Ȩµð·ºÅ丮 ¼­¹ö¿¡¼­ ÃÑ »ç¿ë °ø°£À» 1Å׶ó¹ÙÀÌÆ®·Î Á¦ÇÑÇϸ鼭 ¾ÐÃàÀ» ÇÏ´Â ¹æ½ÄÀ¸·Î ¸ðµç »ç¿ëÀÚ¿¡°Ô °¢°¢ÀÇ ÆÄÀÏ ½Ã½ºÅÛÀ» Á¦°øÇØ ÁÙ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ Æ¯º°ÇÑ »ç¿ëÀÚ(ȤÀº ¾îÇø®ÄÉÀ̼Ç)°¡ Ç×»ó 1±â°¡ ÀÌ»óÀÇ ¿ë·®À» °¡Áú ¼ö·Ï ÇÒ ¼ö ÀÖ°í, ¸Å½Ã°£ ½º³À¼¦À» ¸¸µé ¼ö ÀÖ½À´Ï´Ù(cronÀ» ÅëÇØ). »ó´ëÀûÀ¸·Î ´ú Áß¿äÇÑ »ç¿ëÀÚ´Â ÇÒ´ç·®ÀÇ Á¦ÇÑÀ» ¹Þ°í ÇÏ·ç¿¡ Çѹø ½º³À¼¦ÀÌ Á¦°øµÉ ¼ö ÀÖ½À´Ï´Ù.

zfs(1M) ¸à ÆäÀÌÁö¿¡ ¼Ò°³µÈ ¿É¼ÇµéÀÔ´Ï´Ù.

zfs create filesystem
zfs create [-s] [-b blocksize] -V size volume
zfs destroy [-rRf] filesystem|volume|snapshot
zfs clone snapshot filesystem|volume
zfs rename filesystem|volume|snapshot filesystem|volume|snapshot
zfs snapshot filesystem@name|volume@name
zfs rollback [-rRf] snapshot
zfs list [-rH] [-o property[,property]...] [ -t type[,type]...]
[filesystem|volume|snapshot] ...
zfs set property=value filesystem|volume...
zfs get [-rHp] [-o field[,field]...] [-s source[,source]...] all |
property[,property]... filesystem|volume|snapshot...
zfs inherit [-r] property filesystem|volume...
zfs mount
zfs mount [-o options] [-O] -a
zfs mount [-o options] [-O] filesystem
zfs unmount [-f] -a
zfs unmount [-f] [filesystem|mountpoint]
zfs share -a
zfs share filesystem
zfs unshare [-f] -a
zfs unshare [-f] [filesystem|mountpoint]
zfs backup [-i snapshot] snapshot
zfs restore [-vn ] filesystem|volume|snapshot
zfs restore [-vn ] -d filesystem

testfs ¿Í testfs2 ·Î ÆÄÀÏ ½Ã½ºÅÛÀ» testpool ³»¿¡ »ý¼ºÇØ º¾½Ã´Ù.

# zfs create testpool/testfs

# zfs list
NAME USED AVAIL REFER MOUNTPOINT
testpool 268K 7.88G 99K /testpool
testpool/testfs 98.5K 7.88G 98.5K /testpool/testfs

# zfs create testpool/testfs2

# zfs list
NAME USED AVAIL REFER MOUNTPOINT
testpool 376K 7.88G 99.5K /testpool
testpool/testfs 98.5K 7.88G 98.5K /testpool/testfs
testpool/testfs2 98.5K 7.88G 98.5K /testpool/testfs2

# df -k
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/md/dsk/d0 8262869 751774 7428467 10% /
swap 11800800 784 11800016 1% /etc/svc/volatile
/dev/md/dsk/d30 8262869 23616 8156625 1% /var
swap 11800016 0 11800016 0% /tmp
swap 11800040 24 11800016 1% /var/run
testpool 8257771 100 8257672 1% /testpool
testpool/testfs 8257770 99 8257672 1% /testpool/testfs
testpool/testfs2 8257770 99 8257672 1% /testpool/testfs2

´Ù½Ã ¾ð±ÞÇÏÁö¸¸, Á¤¸» °£´ÜÇÑ ¸í·ÉÀÌ »ç¿ëµÇ¾ú½À´Ï´Ù. newfs ¸¦ ¼öÇàÇϰųª ¸¶¿îÆ® Çϰųª vfstab À» ¼öÁ¤ÇÒ ÇÊ¿ä°¡ ¾ø¾ú½À´Ï´Ù. ZFS°¡ ¸ðµç°ÍÀ» ¾Ë¾Æ¼­ ÇØÁá½À´Ï´Ù.

°¢ ZFS ÆÄÀÏ ½Ã½ºÅÛÀÌ Ç®ÀÇ ¸ðµç ¸®¼Ò½º¿¡ Á¢±ÙÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» ¾Ë¾ÒÀ» °ÍÀÔ´Ï´Ù. ¸¸¾à /testpool/testfs ¾Æ·¡¿¡ ÆÄÀÏ ½Ã½ºÅÛÀ» ¸¸µé¾ú´Ù¸é ¿ì¸®°¡ ±×µéÀ» Ưº°È÷ ¿À¹ö¶óÀ̵å ÇÏÁö ¾Ê´ÂÇÑ /testpool/testfs ÀÇ ¸ðµç ¼Ó¼ºÀ» »ó¼Ó¹Þ½À´Ï´Ù. ¸¸¾à ÆÄÀÏ ½Ã½ºÅÛÀ» / °¡ ¾Æ´Ñ ´Ù¸¥ °÷¿¡ ¸¶¿îÆ® ½ÃÅ°°í ÀÚ½Ä ÆÄÀÏ ½Ã½ºÅÛÀ» »ý¼ºÇÏ°íÀÚ ÇÑ´Ù¸é ´ÙÀ½°ú °°Àº ¹æ¹ýÀ¸·Î ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.

# zfs set mountpoint=/devel/testfs testpool/testfs
# zfs create testpool/testfs/dir1
# zfs create testpool/testfs/dir2
# zfs create testpool/testfs/dir3

# df -k
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/md/dsk/d0 8262869 751774 7428467 10% /
swap 11800800 784 11800016 1% /etc/svc/volatile
/dev/md/dsk/d30 8262869 23616 8156625 1% /var
swap 11800016 0 11800016 0% /tmp
swap 11800040 24 11800016 1% /var/run
testpool 8257771 100 8257672 1% /testpool
testpool/testfs2 8257770 99 8257672 1% /testpool/testfs2
testpool/testfs 16515535 99 16515437 1% /devel/testfs
testpool/testfs/dir1 16515214 99 16515115 1% /devel/testfs/dir1
testpool/testfs/dir2 16515214 99 16515115 1% /devel/testfs/dir2
testpool/testfs/dir3 16515214 99 16515115 1% /devel/testfs/dir3

ZFS´Â ÀÚµ¿ÀûÀ¸·Î testpool/testfs/dir1 ¸¦ ¿Ã¹Ù¸¥ ¸¶¿îÆ® ÁöÁ¡À¸·Î ÀçÇÒ´ç½Ãŵ´Ï´Ù. ºÎ¸ðÀÎ testpool/testfs ·Î ºÎÅÍ »ó¼ÓÀ» ¹Þ±â ¶§¹®ÀÔ´Ï´Ù. ´Ù½Ã ¸»ÇØ »õ·Î¿î ÆÄÀÏ ½Ã½ºÅÛÀ» ¹Ýµå´Â °ÍÀº »õ·Î¿î µð·ºÅ丮³ª ÆÄÀÏÀ» ¸¸µå´Â °Í ¸¸Å­ ½±½À´Ï´Ù.

ÆÄÀÏ ½Ã½ºÅÛ¿¡ »õ·Î¿î ¼Ó¼ºÀ» ¼³Á¤ÇÏ´Â ¿¹Á¦ÀÔ´Ï´Ù.

# zfs set sharenfs=rw testpool/testfs
# zfs compression=on testpool/testfs
# zfs set quota=10g testpool/testfs/dir1
(³í¸®»óÀÇ °ø°£ Á¦ÇÑ)
# zfs set reservation=20g testpool/testfs/dir2
(³í¸®»óÀÇ °ø°£ »çÀü ÇÒ´ç)
ÀÌÁ¦ Ç®¿¡ ¿ë·®ÀÌ ºÎÁ·ÇÒ¶§ »ç¿ëÀÚ°¡ ¿ë·®À» Á» ´õ Ãß°¡½ÃÅ°±æ ¿øÇÑ´Ù¸é ¾î¶»°Ô ÇÒ±î¿ä? zpool add ¸¦ ÅëÇØ °£´ÜÇÏ°Ô µð¹ÙÀ̽º¸¦ Ãß°¡½Ãų ¼ö ÀÖ½À´Ï´Ù.

# zpool add testpool c0t0d0s6 c0t1d0s6
invalid vdev specification
use '-f' to override the following errors:
mismatched replication level: pool uses 2-way mirror and
new vdev uses 1-way disk

ZFS´Â ¿µ¸®ÇÕ´Ï´Ù. ÀÌÀüÀÇ µð¹ÙÀ̽º°¡ ¹Ì·¯¿´´Ù´Â °ÍÀ» ¾Ë°í, »ç¿ëÀÚ°¡ ¹Ì·¯µÇÁö ¾ÊÀº ½ºÅ丮Áö¸¦ Ãß°¡½ÃÅ°·Á Çß´Ù´Â »ç½ÇÀ» ¹ß°ßÇß½À´Ï´Ù. ÀÌ°Ô ½ÇÁ¦·Î »ç¿ëÀÚ°¡ ¿øÇÏ´Â ÀÏÀ̾ú´Ù¸é À§¿¡¼­ ó·³ -f ¿É¼ÇÀ» Á־ ÀÛ¾÷À» °­¿ä½Ãų ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸ »ç¿ëÀÚÀÇ À߸øÀ̾ú±â ¶§¹®¿¡ µÚ·Î µ¹¾Æ°¡¼­ Á¤È®ÇÑ Á¤º¸¸¦ Á¦°øÇÕ´Ï´Ù.

# zpool add testpool mirror c0t0d0s6 c0t1d0s6

# zfs list
NAME USED AVAIL REFER MOUNTPOINT
testpool 396K 15.8G 99.5K /testpool
testpool/testfs 98.5K 15.8G 98.5K /testpool/testfs
testpool/testfs2 98.5K 15.8G 98.5K /testpool/testfs2

´Ù½ÃÇѹø ¸»ÇÏÁö¸¸ µ¿ÀûÀÎ ¸ÞŸµ¥ÀÌÅÍ ¶§¹®¿¡ Ç®ÀÌ »çÀÌÁ Á¶Á¤Çϱ⸦ ±â´Ù¸®°Å³ª ¹Ì·¯°¡ »õ·Î¿î °ø°£À» »ç¿ëÇϵµ·Ï ÀçÁ¶Á¤µÇ´Â °ÍÀ» ±â´Ù¸®Áö ¾Ê¾Æµµ µË´Ï´Ù. ¸¸¾à zpool status ¸¦ ÀÌ ¼ø°£¿¡ ½ÇÇà ½ÃÄ×´Ù¸é ¹Ì·¯°¡ µÎ°³ÀÇ ¹Ì·¯·Î ¼­·Î ½ºÆ®¶óÀÌÇÁ(stripe)µÈ »óÅ·Π¸¸µé¾î Á³°í °¢ ¹Ì·¯°¡ µÎ°¡ÁöÀÇ µð¹ÙÀ̽º¸¦ Æ÷ÇÔÇÏ°í ÀÖÀ½À» º¼ ¼ö ÀÖ½À´Ï´Ù.

# zpool status
pool: testpool
state: ONLINE
scrub: none requested
config:

NAME STATE READ WRITE CKSUM
testpool ONLINE 0 0 0
mirror ONLINE 0 0 0
c0t0d0s5 ONLINE 0 0 0
c0t1d0s5 ONLINE 0 0 0
mirror ONLINE 0 0 0
c0t0d0s6 ONLINE 0 0 0
c0t1d0s6 ONLINE 0 0 0



RAID-Z
Áö±Ý±îÁö ¿ì¸®´Â ¹Ì·¯µÈ ½ºÅ丮Áö¸¸ »ìÆì ºÃ½À´Ï´Ù. ZFS´Â RAID-Z ¶ó°í ÇÏ´Â RAIDÀÇ »õ·Î¿î ŸÀÔÀ» ±¸ÇöÇÏ°í ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº RAID-5¿Í À¯»çÇÏÁö¸¸ °¡º¯ ½ºÆ®¶óÀÌÇÁ ±æÀ̸¦ »ç¿ëÇÏ¿© RAID-5ÀÇ RAID-5 ¾²±â Ȧ À̽´¸¦ ÇØ°á Çß½À´Ï´Ù. RAID-5¿¡¼­ ¾²±â´Â µÎ°³ ȤÀº ±× ÀÌ»óÀÇ µ¶¸³ÀûÀÎ µð¹ÙÀ̽º¿¡¼­ ÀÌ·ç¾î Áö°í Æи®Æ¼ ºí·°ÀÌ °¢ ½ºÆ®¶óÀÌÇÁÀÇ ÄÄÆ÷³ÍÆ®¸¶´Ù ¾²¿©Áý´Ï´Ù. ÀÌ·¯ÇÑ ¾²±â°¡ ¿øÀÚÀûÀÌÁö ¸øÇؼ­ µ¥ÀÌŸ¿Í Æи®Æ¼°£ µ¥ÀÌÅÍ Àü¼Û½Ã¿¡ Àü¿ø¹®Á¦°¡ ¹ß»ýÇÒ °æ¿ì µ¥ÀÌŸÀÇ ¿À·ù°¡ ¹ß»ýÇÒ ¼ö ÀÖ¾ú½À´Ï´Ù.

¸î¸î º¥´õ´Â Æи®Æ¼ Áö¿ª ·Î±ë(´õƼ Áö¿ª ·Î±ë°°ÀÌ Æи®Æ¼ µð½ºÅ©¸¸À» À§ÇØ) ȤÀº ¹èÅ͸®·Î ¹é¾÷µÇ´Â NVRAMÀ» ½ÃµµÇß½À´Ï´Ù. NVRAM ¼Ö·ç¼ÇÀ» ÅëÇØ µ¥ÀÌŸ´Â NVRAM¿¡ ¾²¿©Áø ÈÄ µ¥ÀÌŸ¿Í Æи®Æ¼°¡ µð½ºÅ©¿¡ ¾²¿©Áö°í, ±×¸®°í ³ª¼­ ¸¶Áö¸·À¸·Î NVRAMÀÌ ÇØÁ¦µË´Ï´Ù. NVRAMÀº ¸Å¿ì ºñ½Ò »Ó´õ·¯ Á¾Á¾ º´¸ñÇö»óÀÌ ¹ß»ýÇÕ´Ï´Ù. ¶ÇÇÑ NVRAM¿¡ ÀúÀåµÈ ¾î¶°ÇÑ µ¥ÀÌŸµµ ´Ù¿îµÈÁö 3ÀÏ ÈÄ¿¡´Â ¼Õ½ÇµÇ°Ô µË´Ï´Ù. Ä¿´Ù¶õ ÀçÇØ º¹±¸ »óȲ¿¡ ÀÌ·¯ÇÑ µ¥ÀÌŸ ¼Õ½ÇÀº ¿ë³³µÉ ¼ö ¾ø½À´Ï´Ù.

RAID-5 ¿Í´Â ´Ù¸£°Ô ¸ðµç RAIZ-Z ´Â ¿ÏÀü ½ºÆ®¶óÀÌÇÁ ¾²±â¸¦ Áö¿øÇÕ´Ï´Ù. Áï ¸ðµç µð½ºÅ©¿¡ Àû¿ëµÊÀ» ÀÇ¹Ì ÇÕ´Ï´Ù. ¾î¶°ÇÑ Àбâ-¼öÁ¤-¾²±â ¿À¹öÇìµå°¡ ¾ø°í RAID-5ÀÇ ¾²±â Ȧ ¹®Á¦µµ ¾øÀ¸¸ç NVRAMÀÌ Çϵå¿þ¾î¿¡ ÇÊ¿äÇÏÁöµµ ¾Ê½À´Ï´Ù. ¹Ì·¯¸µ°ú RAID-Z¸¦ ¾ðÁ¦ »ç¿ëÇØ¾ß ÇÏ´ÂÁö ¾Ë°í ½Í´Ù¸é Roch Bourbonnai ÀÇ ±Û When to (and not to) use RAID-Z À» Âü°í ¹Ù¶ø´Ï´Ù.



ÆÄÀÏ ½Ã½ºÅÛ ½º³À¼¦ °ú Ŭ·Ð
ÀÌÁ¦ µ¥ÀÌŸ·Î °¡µæÂù ¸î°¡Áö ÆÄÀÏ ½Ã½ºÅÛÀÌ ÀÖ½À´Ï´Ù. ¸¸¾à »ç¿ëÀÚ(ȤÀº °ü¸®ÀÚ)°¡ »ç°í·Î µ¥ÀÌŸ¸¦ ¼öÁ¤Çϰųª Áö¿üÀ»¶§ µ¥ÀÌŸ¸¦ º¹±¸ÇÏ·Á¸é ¾î¶»°Ô ÇØ¾ß ÇÒ±î¿ä? ¹é¾÷ Å×ÀÙ°ú µð½ºÅ©¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀº ³Ê¹« ´À¸®°í ¿£µå À¯Àú¿¡°Ô ½¬¿î ÀÛ¾÷Àº ¾Æ´Õ´Ï´Ù. ¿îÁÁ°Ôµµ ZFS¿¡´Â ½º³À¼¦ ±â´É(´Ù¸¥ ½ºÅ丮Áö º¥´õ¿¡¼­ Á¦°øÇÏ´Â °Íó·³)À» Á¦°øÇÏ°í ÀÖÀ¸¸ç, ´õ ÁÁÀº ¼Ò½ÄÀ¸·Î´Â copy-on-write ¾ÆÅ°ÅØÃÄ·Î ÀÎÇØ °¡»óÀûÀ¸·Î ¾î¶°ÇÑ ¿À¹öÇìµåµµ ¹ß»ýÇÏÁö ¾Ê´Â °ÍÀÔ´Ï´Ù. ½ÇÁ¦·Î ½º³À¼¦À» ¸¸µå´Â°ÍÀÌ ¿¹Àü µ¥ÀÌŸ¸¦ Æ÷ÇÔÇÏ°í ÀÖ´Â ºí·°À» ÇØÁ¦Çϴ°ͺ¸´Ù ºü¸¦¶§°¡ Á¾Á¾ ÀÖ½À´Ï´Ù.

ZFS ´Â Network Appliance Inc. ÀÇ ±¸Çö´ë·Î ¿ÀÁ÷ ¼öÁ¤µÈ µ¥ÀÌŸ¸¸À» ÃßÀûÇÕ´Ï´Ù. »ç¿ëÀÚ°¡ º¸°üÇÒ ¼ö ÀÖ´Â ½º³À¼¦ÀÇ °¹¼ö´Â »ç¿ëÀÚÀÇ ½ºÅ丮Áö °ø°£¿¡ µû¶ó ´Þ·Á ÀÖ½À´Ï´Ù. ¿©±â¼­ ½º³À¼¦¿¡ °üÇØ °£´ÜÈ÷ ¾Ë¾Æ º¾½Ã´Ù. ¸ðµç ZFS ÆÄÀÏ ½Ã½ºÅÛ¸¶´Ù ½º³À¼¦ ¼­ºêµð·ºÅ丮¿Í ÇÔ²² .zfs µð·ºÅ丮°¡ ÀÖ½À´Ï´Ù.

# cd /testpool/testfs2
# ls -al .zfs/snapshot

total 0
dr-xr-xr-x 2 root root 2 Jun 29 17:18 .
dr-xr-xr-x 3 root root 3 Jun 29 17:18 ..

# cp /bin/sh /bin/tcsh /bin/ksh .
# zfs snapshot testpool/testfs2@snap1
# ls -al .zfs/snapshot/snap1/

total 786
drwxr-xr-x 2 root sys 5 Jun 29 17:17 .
dr-xr-xr-x 3 root root 3 Jun 29 17:19 ..
-r-xr-xr-x 1 root other 238332 Jun 29 17:17 ksh
-r-xr-xr-x 1 root other 113160 Jun 29 17:17 sh
-r-xr-xr-x 1 root other 364176 Jun 29 17:17 tcsh

# zfs list testpool/testfs2@snap1

NAME USED AVAIL REFER MOUNTPOINT
testpool/testfs2@snap1 0 - 882K -

¸¸¾à ksh ¸¦ Áö¿ü´Âµ¥ µÇ»ì¸®±â ¿øÇÑ´Ù¸é À̸¦ .zfs/snapshot/snap1 µð·ºÅ丮¿¡¼­ Ä«ÇÇÇÏ¸é µË´Ï´Ù.

# rm ksh
# ls -al

total 514
drwxr-xr-x 2 root sys 4 Jun 29 17:24 .
drwxr-xr-x 4 root sys 4 May 22 10:48 ..
dr-xr-xr-x 3 root root 3 Jun 29 17:25 .zfs
-r-xr-xr-x 1 root other 113160 Jun 29 17:17 sh
-r-xr-xr-x 1 root other 364176 Jun 29 17:17 tcsh

# cp .zfs/snapshot/snap1/ksh .
# ls -al
total 787
drwxr-xr-x 2 root sys 5 Jun 29 17:26 .
drwxr-xr-x 4 root sys 4 May 22 10:48 ..
dr-xr-xr-x 3 root root 3 Jun 29 17:27 .zfs
-r-xr-xr-x 1 root other 238332 Jun 29 17:26 ksh
-r-xr-xr-x 1 root other 113160 Jun 29 17:17 sh
-r-xr-xr-x 1 root other 364176 Jun 29 17:17 tcsh

ȤÀº Àüü ÆÄÀÏ ½Ã½ºÅÛÀ» ·Ñ¹éÇؼ­ ¿¹ÀüÀÇ ½º³À¼¦°ú ÀÏÄ¡½Ãų ¼ö ÀÖ½À´Ï´Ù.

# rm ksh
# cp /bin/bash .
# ls -al
total 515
drwxr-xr-x 2 root sys 5 Jun 29 17:28 .
drwxr-xr-x 4 root sys 4 May 22 10:48 ..
dr-xr-xr-x 3 root root 3 Jun 29 17:28 .zfs
-r-xr-xr-x 1 root other 737148 Jun 29 17:28 bash
-r-xr-xr-x 1 root other 113160 Jun 29 17:17 sh
-r-xr-xr-x 1 root other 364176 Jun 29 17:17 tcsh

# ls -al .zfs/snapshot/snap1/
total 786
drwxr-xr-x 2 root sys 5 Jun 29 17:19 .
dr-xr-xr-x 3 root root 3 Jun 29 17:28 ..
-r-xr-xr-x 1 root other 238332 Jun 29 17:19 ksh
-r-xr-xr-x 1 root other 113160 Jun 29 17:17 sh
-r-xr-xr-x 1 root other 364176 Jun 29 17:17 tcsh

# cd /
# zfs rollback testpool/testfs2@snap1
# ls -al /testpool/testfs2/
total 787
drwxr-xr-x 2 root sys 5 Jun 29 17:19 .
drwxr-xr-x 4 root sys 4 Jun 29 17:29 ..
dr-xr-xr-x 3 root root 3 Jun 29 17:29 .zfs
-r-xr-xr-x 1 root other 238332 Jun 29 17:19 ksh
-r-xr-xr-x 1 root other 113160 Jun 29 17:17 sh
-r-xr-xr-x 1 root other 364176 Jun 29 17:17 tcsh

½º³À¼¦ÀÌ ´õÀÌ»ó ÇÊ¿ä ¾ø´Ù¸é zfs destroy ¸¦ ÅëÇØ ¿ë·®À» ´Ã¸± ¼ö ÀÖ½À´Ï´Ù.

# zfs destroy testpool/testfs2@snap1
# ls -al testpool/testfs2/.zfs/snapshot/
total 0
dr-xr-xr-x 2 root root 2 Jun 29 17:31 .
dr-xr-xr-x 3 root root 3 Jun 29 17:31 ..

ÇÑ°¡Áö ÆÁÀº, ½º³À¼¦À» ³¯Â¥ À̸§À¸·Î ¸¸µé¾î ³õ´Â°ÍÀÌ ±â¾ïÇϱ⠽±½À´Ï´Ù.

½º³À¼¦°ú ºñ½ÁÇÑ ±â´ÉÀ» °¡Áø ´Ù¸¥ ±â´ÉÀ¸·Î Ŭ·Î´×(cloning)ÀÌ ÀÖ½À´Ï´Ù. ½º?¼¦°ú ´Ù¸£°Ô Ŭ·Ð ³»ÀÇ ÆÄÀϵéÀº ¼öÁ¤µÉ ¼ö ÀÖ°í ¾²¿©Áú ¼ö ÀÖ½À´Ï´Ù. ÀÌ´Â »ç¿ëÀÚ°¡ ¿ÏÀüÈ÷ µ¿ÀÏÇÏÁö ¾ÊÀº µ¥ÀÌŸ ¼ÂÀ» °¡Áö°í ÀÖÀ»¶§ Á¾Á¾ ¸Å¿ì À¯¿ëÇÕ´Ï´Ù. µð½ºÅ© ¾ø´Â Ŭ¶óÀ̾ðÆ®¸¦ ºÎÆ® ½ÃÅ°´Â ¼­¹ö¸¦ ÇϳªÀÇ ¿¹·Î µé ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ÀÇ ¿¹Á¦¿¡¼­ ÇÊÀڴ óÀ½À¸·Î µð½ºÅ© ¾ø´Â Ŭ¶óÀ̾ðÆ®ÀÇ ÆÄÀϽýºÅÛÀ» ¼³Á¤ÇÏ°í ½º³À¼¦À» ¸¸µé°í ½º³À¼¦À» Ŭ·ÐÇؼ­ ±× ³»ºÎÀÇ ÆÄÀÏ Çϳª¸¦ ¼öÁ¤Çغ¾´Ï´Ù.

# zfs create testpool/diskless/nevada
(create a bootable filesystem on testpool/diskless/nevada)
# zfs create testpool/diskless/sb2500
# zfs snapshot testpool/diskless/nevada@snap1
# zfs clone testpool/diskless/nevada@snap1 \
testpool/diskless/sb2500/nevada
# vi /testpool/diskless/sb2500/nevada/etc/hosts
(change hostname to sb2500 and save)


ÀÚµ¿ ¿£µð¾È(Endian) ÀûÀÀ±â´É
UFS ó·³ ZFS´Â SPARC°ú x64 Çϵå¿þ¾î¿¡¼­ µÑ ´Ù Áö¿øµË´Ï´Ù. UFS¿Í ´Ù¸£°Ô »ç¿ëÀÚ´Â ÇϳªÀÇ ¾ÆÅ°ÅØÃÄ¿¡¼­ µ¥ÀÌŸ µð½ºÅ©µéÀ» Á¦°ÅÇÏ°í À̵éÀ» ´Ù¸¥ °÷¿¡ Ãß°¡½ÃÅ°¸é¼­ Æ÷¸ËÀ̳ª ¿£µð¾È À̽´µéÀ» °ÆÁ¤ÇÒ ÇÊ¿ä°¡ ÀüÇô ¾ø½À´Ï´Ù. SPARC ÇÁ·Î¼¼¼­¿¡¼­ µ¹¾Æ°¡°í ÀÖ´Â ½Ã½ºÅÛ¿¡¼­ µ¥ÀÌŸ µð½ºÅ©¸¦ Á¦°ÅÇÏ°í ÀÌ°ÍÀ» x64 ¹Ú½º¿¡ Ãß°¡½ÃÅ°´Â °ÍÀº ¿Ïº®È÷ Åõ¸íÇÑ ÀÛ¾÷ÀÔ´Ï´Ù. ½ãÀº ÀÌ°ÍÀ» ÀÚµ¿ ¿£µð¾È ÀûÀÀ±â´É(automatic endian adaptiveness) À̶ó°í ºÎ¸¨´Ï´Ù.

ºí·°ÀÌ µð½ºÅ©¿¡¼­ ÀÐÈ÷¸é ZFS´Â ¿£µð¾ÈÀ» È®ÀÎÇÕ´Ï´Ù. ¸¸¾à ¿£µð¾ÈÀÌ ÇöÀçÀÇ ¾ÆÅ°ÅØÃÄ¿Í µ¿ÀÏÇÏ´Ù¸é ¾Æ¹«·± ¼öÁ¤µµ °¡ÇØÁöÁö ¾Ê½À´Ï´Ù. ¸¸¾à ÀÏÄ¡ÇÏÁö ¾Ê´Â´Ù¸é ZFS´Â µ¥ÀÌŸ¸¦ Á¦°øÇϱâ Àü¿¡ ÆÄÀÏÀ» ±³È¯ÇÏ¿© ÇöÀçÀÇ ¿£µð¾È¿¡ ¸Â°Ô ´Ù½Ã µ¹·Á¼­ ÀúÀåÇÕ´Ï´Ù. ±×·¡¼­ ³í-³×ÀÌƼºê ºí·°µéÀ» ¿¢¼¼½º ÇÒ¶§ ¿À¹öÇìµå°¡ ÀÖÁö¸¸ ÀÌ°ÍÀº µ¥ÀÌŸ°¡ »õ·Î¿î ¸Ó½ÅÀÇ ³×ÀÌƼºê ¿£µð¾ÈÀ¸·Î ´Ù½Ã ¾²¿©Áö±â ¶§¹®¿¡ ÀÚÁÖ ¹ß»ýÇÏÁö´Â ¾Ê½À´Ï´Ù. ¾Ë¾ÆµÑ Á¡À¸·Î ¿£µð¾È º¯È¯Àº ¿ÀÁ÷ ZFSÀÇ ¸ÞŸ µ¥ÀÌŸ ºí·°¿¡¼­¸¸ ÀÌ·ç¾îÁö°í »ç¿ëÀÚÀÇ µ¥ÀÌŸ¿¡¼­´Â ÀÌ·ç¾î ÁöÁö ¾Ê½À´Ï´Ù.

¸¸¾à µ¥ÀÌŸ µð½ºÅ©¸¦ ´Ù¸¥ ¸Ó½ÅÀ¸·Î ¿Å±â°íÀÚ ÇÑ´Ù¸é ÀÏ´Ü ¹°¸®ÀûÀÎ ¹Ìµð¾îÀÇ ¸ðµç Ç®µéÀ» ÀͽºÆ÷Æ®ÇÑ ´ÙÀ½ µð½ºÅ©¸¦ ¶§¾î³»°í ±×°ÍÀ» ´Ù½Ã »õ·Î¿î ¸Ó½Å¿¡ ºÎÂø½ÃŲ ÈÄ¿¡ Ç®À» ´Ù½Ã ÀÓÆ÷Æ® ÇÏ¸é µË´Ï´Ù.

# zpool ÀͽºÆ÷Æ® testpool
(physically move the disks)
# zpool ÀÓÆ÷Æ®

ÀͽºÆ÷Æ®¸¦ ÇÒµ¿¾È ¸ðµç ÆÄÀÏ ½Ã½ºÅÛÀÇ ¸ÞŸµ¥ÀÌŸ Áï »çÀÌÁî, ÄõÅÍ, ¿¹¾à°ø°£, NFS °ü·Ã Á¤º¸µî ¸ðµç Á¤º¸°¡ ÀúÀå µË´Ï´Ù. ±×¸®°í µð½ºÅ©¿Í Ç®µéÀÌ ³í¸®ÀûÀ¸·Î ½Ã½ºÅÛ¿¡¼­ Á¦°Å µË´Ï´Ù. »ç¿ëÀÚ°¡ µ¥ÀÌŸ¸¦ »õ·Î¿î ¸Ó½Å¿¡¼­ ÀÓÆ÷Æ® ÇÒ¶§ ƯÁ¤ÇÑ Ç®À» ÁöÁ¤Çϰųª ÀÓÆ÷Æ® Ä¿¸Çµå¸¦ À§¿¡ ¿¹Á¦¿Í °°ÀÌ »ç¿ëÇÏ¿© ½Ã½ºÅÛ¿¡¼­ ÇöÀç »ç¿ëµÇÁö ¾Ê°í ÀÖ´Â Ç®µéÀ» °Ë»öÇÏ¿© À̰͵éÀ» ÀüºÎ ÀÓÆ÷Æ® ½Ãų ¼ö ÀÖ½À´Ï´Ù.



¹Ì·¡ÀÇ ZFS ¹ßÀü ¹æÇâ
Áö±Ý±îÁö º¸¾Æ¿ÔµíÀÌ ½Ã°£°ú µ·À» Àý¾àÇÒ ¼ö ÀÖ´Â ¸¹Àº ±â´ÉµéÀÌ ÀÌ¹Ì ZFS¿¡ ±¸ÃàµÇ¾î ÀÖ½À´Ï´Ù. ±×·¯³ª ¾ÆÁ÷ ÇÁ·ÎÁ§Æ®´Â ³¡³ªÁö ¾Ê¾Ò½À´Ï´Ù. ¸î°¡Áö Èï¹Ì·Î¿î ±â¼úµéÀÌ ¿©ÀüÈ÷ °³¹ßµÇ°í ÀÖ½À´Ï´Ù.

°¡Àå Èï¹Ì·Î¿î ZFS ÅäÇÈÀº ºÎÆð¡´ÉÇÑ ZFS(¿µ¹®)ÀÔ´Ï´Ù. ÀÌ°ÍÀº ¿ÀǼֶ󸮽ºÀÇ ¼­ºêÇÁ·ÎÁ§Æ®·Î ÁøÇàµÇ°í ÀÖ½À´Ï´Ù. ¸ðÇè½É °­ÇÑ »ç¶÷µéÀº UFS ¸¦ ÀÌ¿ëÇؼ­ ZFS ·çÆ®, ÆÄÀÏ ½Ã½ºÅÛÀ» x64 ½Ã½ºÅÛ¿¡¼­ ºÎÆ®½ÃÅ°´Â ¹æ¹ýÀ» Tabriz Leman's blog entry on ZFS Mountroot(¿µ¹®)¿¡¼­ ã¾Æ¼­ ½ÃÇèÇØ º¼ ¼ö ÀÖ½À´Ï´Ù. ½ãÀº ZFS¿¡ ºÎÆà °¡´É ±â´ÉÀ» SPARC OBP°¡ GRUBÀ» ºÎÆ®·Î´õ·Î½á È°¿ëÇϵµ·Ï °¡¸£Ä£ ´ÙÀ½¿¡ SPARC¿¡¼­ µ¹¾Æ°¡µµ·Ï °èȹÇÏ°í ÀÖ½À´Ï´Ù.

ZFS ºÎÆ®´Â ¶ÇÇÑ Jeff Bonwick's message on the zfs-discuss list(¿µ¹®): "[zfs-discuss] Re: Re: Bootable ZFS and Live upgrade" ¿¡¼­ º¸½Ç ¼ö ÀÖ½À´Ï´Ù.

´Ù¾çÇÑ »ç¶÷µéÀÌ ZFS ½º³À¼¦À» »ç¿ëÇؼ­ ±×µéÀÇ ÆÄÀÏ ½Ã½ºÅÛÀ» ºü¸£°Ô ¹é¾÷ÇØ ¿Ô½À´Ï´Ù. ±×·¯³ª ½º³À¼¦°ú ½ÇÁ¦ »ó¿ë ¹é¾÷ ¼ÒÇÁÆ®¿þ¾î °£¿¡ Á» ´õ ¿Ïº®ÇÑ ÅëÇÕÀ» º¸°ÔµÉ °ÍÀÔ´Ï´Ù. ½º³À¼¦ÀÇ µ¿ÀÛ Äڵ忡 °üÇÑ Åä·ÐÀº Matthew Ahrens's blog entry on snapshots(¿µ¹®)À» Âü°í ¹Ù¶ø´Ï´Ù.

Eric Schrock ÀÇ ±Û zfs-discuss post regarding Bootable ZFS and Live upgrade(¿µ¹®)¿¡ ÀÇÇϸé ZFS Ŭ·ÐÀ» ÀÌ¿ëÇÑ ¶óÀ̺ê¾÷±×·¹À̵带 Áö¿øÇÒ °èȹÀÌ ÀÖ´Ù°í ÇÕ´Ï´Ù. ÀÌ°ÍÀ» À§Çؼ­ ÀνºÅç °ú ¾÷±×·¹À̵å ÅøÀÌ ¸ÕÀú ¼öÁ¤µÇ¾î¾ß ÇÏ°í clone swap Áö¿øÀÌ ZFS¿¡ ¹Ýµå½Ã Ãß°¡µÇ¾î¾ß ÇÕ´Ï´Ù. ÀÌ ±â´ÉÀº ÀÌ¹Ì ¼Ö¶ó¸®½º ÀͽºÇÁ·¹½º¿¡ Ãß°¡µÇ¾î ÀÖ½À´Ï´Ù.

ZFS´Â ¼±(wire) ¹× ¹°¸®Àû ¹Ìµð¾î ¼öÁØ¿¡¼­ÀÇ º¸¾Èµµ Á¦°øÇÏ·Á°í ÇÏ°í ÀÖ½À´Ï´Ù. ZFS on disk encryption support(¿µ¹®)ÇÁ·ÎÁ§Æ®°¡ ¿ÀǼֶ󸮽º¿¡¼­ ÁøÇàµÇ°í ÀÖÀ¸¸ç ZFS¸¦ À§ÇÑ µð½ºÅ© »óÀÇ ¾Ïȣȭ, º¹È£È­ ¹× Å° °ü¸® Áö¿øÀ» Á¦°øÇÏ·Á°í ÇÏ°í ÀÖ½À´Ï´Ù. Darren Moffat Àº draft document of the zfs-crypto-project(¿µ¹®)À» ÅëÇؼ­ °èȹÁßÀÎ ±¸Çö¿¡ ÀÚ¼¼ÇÑ ¹æ¹ýµé¿¡ ´ëÇØ ¼³¸íÇÏ°í ÀÖ½À´Ï´Ù. º» ÇÁ·ÎÁ§Æ®ÀÇ ¸ñÇ¥´Â SANÀ» ÅëÇØ ½Å·ÚµÇÁö ¾ÊÀº Åë·Î¿¡¼­ Á¦°øµÇ´Â µ¥ÀÌŸ¸¦ º¸È£ÇÏ°í ¹°¸®ÀûÀÎ ½ºÅ丮ÁöÀÇ µµ³­À¸·ÎºÎÅÍÀÇ º¸È£ ¹æ¹ý ¹× »èÁ¦¿¡ °üÇÑ º¸¾È ¸ÞÄ«´ÏÁòÀ» Á¦°øÇÏ·Á°í °èȹÇÏ°í ÀÖ½À´Ï´Ù.

ZFS ¾ÏȣȭµÈ ÆÄÀÏ ½Ã½ºÅÛÀÇ Å°°¡ Æı«µÇ´Â °æ¿ì º¸¾ÈÀÇ »èÁ¦ ÇüÅ·Πµ¿ÀÛÇϰԵǹǷÎ, Å°°¡ Çѹø »ç¶óÁö¸é µ¥ÀÌŸ¸¦ ´Ù½Ã ¿­¾îº¼ ¼ö ÀÖ´Â ¹æ¹ýÀÌ ¾ø½À´Ï´Ù. ¶Ç´Ù¸¥ º¸¾È ±â´ÉÀ¸·Î´Â DOD-ȣȯ º¸¾È »èÁ¦°¡ ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ ½Ã³ª¸®¿À¿¡¼­ ºí·°ÀÌ ÇØÁ¦µÇ´Â Áï½Ã ±×°÷¿¡ µ¥ÀÌŸ°¡ ¿©·¯¹ø ¾²¿© Áý´Ï´Ù.



°ü·Ã±Û : ¾øÀ½ ±Û¾´½Ã°£ : 2007/10/23 13:01 from 218.38.35.251

  [SUN]ZFS Pool관리 ¸ñ·Ïº¸±â »õ±Û ¾²±â Áö¿ì±â ÀÀ´ä±Û ¾²±â ±Û ¼öÁ¤ [Sun]½ã lan cardº° net-tune  
BACKRUSH  À¯´Ð½º¸í·É  ´ÙÀ½  ÀÚ·á½Ç  Ascii Table   ¿ø°ÝÁ¢¼Ó  ´Þ·Â,½Ã°£   ÇÁ·Î¼¼½º   ½©
ÁöÇÏö³ë¼±   RFC¹®¼­   SUN FAQ   SUN FAQ1   C¸Þ´º¾ó   PHP¸Þ´º¾ó   ³Ê±¸¸®   ¾Æ½ºÅ°¿ùµå ¾ÆÀÌÇǼ­Ä¡