ÄõÅÍ´Â ¿î¿µÃ¼Á¦°¡ Áö¿øÇÏ´Â ¼±ÅÃÀûÀΠƯ¼ºÀ¸·Î¼, ÇÑ ¸íÀÇ »ç¿ëÀÚ ¶Ç´Â ÇÑ »ç¿ëÀÚ ¸ðÀÓ(group)ÀÌ »ç¿ëÇÒ ¼ö ÀÖ´Â µð½ºÅ© °ø°£ÀÇ ¾çÀ̳ª ÆÄÀÏÀÇ ¼ö¿¡ Á¦ÇÑÀ» µÎ´Â °ÍÀÔ´Ï´Ù. À̰ÍÀº »ç¿ëÀÚ³ª »ç¿ëÀÚ ¸ðÀÓÀÌ »ç¿ëÇÒ ¼ö ÀÖ´Â ÀÚ¿ø·®¿¡ Á¦ÇÑÀ» µÎ°íÀÚÇÏ´Â ´ëºÎºÐÀÇ ½ÃºÐÇÒ ½Ã½ºÅÛ¿¡¼ »ç¿ëµË´Ï´Ù. ÀÌ ¹æ¹ýÀ¸·Î ÇÑ »ç¿ëÀÚ°¡ µð½ºÅ© °ø°£À» ¸ðµÎ »ç¿ëÇØ ¹ö¸®´Â °ÍÀ» ¸·À» ¼ö ÀÖ½À´Ï´Ù.
µð½ºÅ© ÄõÅ͸¦ »ç¿ëÇϱâ Àü¿¡ Ä¿³Î¿¡ ÄõÅÍ »ç¿ë ¿É¼ÇÀÌ ¼³Á¤µÇ¾î ÀÖ´ÂÁö È®ÀÎÇØ¾ß ÇÕ´Ï´Ù. Ä¿³Î ¼³Á¤ ÆÄÀÏ¿¡ ´ÙÀ½°ú °°Àº ÁÙÀ» Ãß°¡ÇØ¾ß ÇÕ´Ï´Ù.
options QUOTA
±âº» GENERIC Ä¿³ÎÀº ÀÌ ¿É¼ÇÀÌ ¼³Á¤µÇ¾îÀÖÁö ¾ÊÀ¸¹Ç·Î µð½ºÅ© ÄõÅ͸¦ »ç¿ëÇϱâ À§Çؼ´Â Ä¿³ÎÀ» »õ·Î ºôµåÇØ¾ß ÇÕ´Ï´Ù. Ä¿³Î ¼³Á¤¿¡ °üÇÑ ´õ ¸¹Àº Á¤º¸¸¦ ¿øÇϽøé FreeBSD Ä¿³Î ¼³Á¤À» Âü°íÇϽñ⠹ٶø´Ï´Ù.
±× ´ÙÀ½¿¡´Â /etc/rc.conf ÆÄÀÏ¿¡¼ µð½ºÅ© ÄõÅ͸¦ »ç¿ë°¡´ÉÇÏ°Ô ÇØ¾ß ÇÕ´Ï´Ù. ´ÙÀ½°ú °°Àº ÁÙÀ» Ãß°¡ÇÕ´Ï´Ù.
enable_quotas="YES"
Á»´õ ³ªÀº °ü¸®¸¦ À§Çؼ »ç¿ëÇÒ ¼ö ÀÖ´Â º¯¼öµéÀÌ ´õ ÀÖ½À´Ï´Ù. º¸Åë ºÎÆ®°úÁ¤¿¡¼ quotacheckÇÁ·Î±×·¥ÀÌ °¢ ÆÄÀÏ ½Ã½ºÅÛÀÌ ÄõÅÍÀÇ Á¦ÇÑÀ» Á¦´ë·Î Áö۰í ÀÖ´ÂÁö °Ë»çÇÕ´Ï´Ù. quotacheck ÇÁ·Î±×·¥Àº ÄõÅÍ µ¥ÀÌÅͺ£À̽º¿¡ ÀÖ´Â Á¤º¸°¡ ½ÇÁ¦ ÆÄÀÏ ½Ã½ºÅÛÀÇ Á¤º¸¸¦ ¿Ã¹Ù¸£°Ô ¹Ý¿µÇϰí ÀÖÀ½À» º¸ÀåÇÕ´Ï´Ù. À̰ÍÀº ²Ï ¸¹Àº ½Ã°£À» ¼Ò¸ðÇÏ´Â ÀÏÀ̹ǷΠ½Ã½ºÅÛ ºÎÆÃ½Ã°£À» ´À¸®°Ô ÇÒ °ÍÀÔ´Ï´Ù. ÀÌ °úÁ¤À» °Ç³Ê¶Ù°í ½Í´Ù¸é ´ÙÀ½°ú °°Àº ¼³Á¤À» Ãß°¡ÇÕ´Ï´Ù.
check_quotas="NO"
3.2-¸±¸®Á´Ù ÀÌÀü ¹öÀüÀÇ FreeBSD¸¦ »ç¿ëÇÑ´Ù¸é ¼³Á¤Àº ´õ ½¬¿ö¼, ´ÜÁö ÇϳªÀÇ º¯¼ö·Î¸¸ ±¸¼ºµË´Ï´Ù. ¿©·¯ºÐÀÇ /etc/rc.conf ÆÄÀÏ¿¡ ´ÙÀ½À» Ãß°¡ÇϽʽÿÀ.
check_quotas="YES"
¸¶Áö¸·À¸·Î /etc/fstabÆÄÀÏÀ» ÆíÁýÇØ¾ß ÇÕ´Ï´Ù. ÀÌ ÆÄÀÏ¿¡¼ À¯ÀúÄõÅ͸¸ Àû¿ëÇϰųª ±×·ìÄõÅ͸¸ Àû¿ëÇÒ Áö ¾Æ´Ï¸é µÑ ¸ðµÎ Àû¿ëÇÒ Áö °áÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
°¢ »ç¿ëÀÚ¿¡ ´ëÇÑ ÄõÅ͸¦ Àû¿ë½ÃŰ·Á¸é /etc/fstab ÆÄÀÏ¿¡¼ ¿øÇÏ´Â ÆÄÀÏ ½Ã½ºÅÛÀÇ ¿É¼Ç Çʵ忡 userquota ¿É¼ÇÀ» Ãß°¡ÇϽʽÿÀ. ¿¹¸¦ µéÀÚ¸é ´ÙÀ½°ú °°½À´Ï´Ù.
/dev/da1s2g /home ufs rw,userquota 1 2
±×·ì ÄõÅ͸¦ Àû¿ë½ÃŰ·Á¸é ¾Õ¿¡¼¿Í ºñ½ÁÇÏ°Ô groupquota ¿É¼ÇÀ» »ç¿ëÇÏ¸é µË´Ï´Ù. À¯ÀúÄõÅÍ¿Í ±×·ìÄõÅ͸¦ ¸ðµÎ Àû¿ëÇÏ·Á¸é /etc/fstab¿¡ ´ÙÀ½°ú °°ÀÌ ¾²¸é µË´Ï´Ù.
/dev/da1s2g /home ufs rw,userquota,groupquota 1 2
±âº»À¸·Î µð½ºÅ© ÄõÅÍ¿¡ °ü·ÃµÈ ÆÄÀÏÀº ·çÆ® µð·ºÅ丮¿¡ quota.user¿Í quota.group·Î ÀúÀåµË´Ï´Ù. µÎ ÆÄÀÏÀº °¢°¢ À¯ÀúÄõÅÍ¿Í ±×·ìÄõÅÍ¿¡ ´ëÇÑ ÆÄÀÏÀÔ´Ï´Ù. ´õ ¸¹Àº Á¤º¸¸¦ ¿øÇϸé man fstabÀ» Âü°íÇϽʽÿÀ. ºñ·Ï ¸Å´º¾ó ÆäÀÌÁö¿¡´Â ÀÌ ÆÄÀϵéÀ» ÀúÀåÇÏ´Â À§Ä¡¸¦ ´Ù¸£°Ô ÁöÁ¤ÇØ ÁÙ ¼ö ÀÖ´Ù´Â ¸»ÀÌ ÀÖ´õ¶óµµ, ÄõÅÍ ÆÄÀϵéÀ» ´Ù¸¥ °÷¿¡ ÀúÀåÇÏ´Â °ÍÀº ÁÁÁö ¾Ê½À´Ï´Ù. ÄõÅÍ À¯Æ¿¸®Æ¼ Áß¿¡´Â ÄõÅÍ ÆÄÀÏÀÌ ·çÆ® µð·ºÅ丮¿¡ ÀúÀåµÇ¾î ÀÖÁö ¾ÊÀ¸¸é Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾Ê´Â °Íµµ Àֱ⠶§¹®ÀÔ´Ï´Ù.
ÀÌÁ¦´Â ½Ã½ºÅÛÀ» »õ Ä¿³Î·Î ºÎÆÃÇϽʽÿÀ. /etc/rc ´Â /etc/fstab ÆÄÀÏÀ» Àаí ÄõÅÍ ÆÄÀÏÀ» ¸¸µé±â À§ÇÑ ÀûÀýÇÑ ¸í·ÉÀ» ÀÚµ¿À¸·Î ½ÇÇàÇÕ´Ï´Ù.
º¸ÅëÀº quotacheck, quotaon, quotaoff °°Àº ¸í·ÉµéÀ» ¼öµ¿À¸·Î ½ÇÇà½Ãų ÇÊ¿ä´Â ¾ø½À´Ï´Ù. ±×·¯³ª ÄõÅÍ ½Ã½ºÅÛ°ú Á»´õ Ä£¼÷ÇØ Áö±â À§Çؼ´Â ÀÌ ¸í·ÉµéÀÇ ¸Å´º¾ó ÆäÀÌÁö¸¦ Àо´Â °ÍÀÌ ÁÁÀ»Áöµµ ¸ð¸¨´Ï´Ù.
½Ã½ºÅÛ¿¡ ÄõÅ͸¦ ¼³Á¤ÇÑ ´ÙÀ½¿¡, Á¤¸»·Î µð½ºÅ© ÄõÅͰ¡ Àû¿ëµÇ¾ú´ÂÁö È®ÀÎÇÏ´Â °£´ÜÇÑ ¹æ¹ýÀº ´ÙÀ½ ¸í·ÉÀ» ½ÇÇàÇÏ´Â °ÍÀÔ´Ï´Ù.
# quota -v
°¢°¢ÀÇ µð½ºÅ© »ç¿ë·®°ú ÇöÀç ¼³Á¤µÈ µð½ºÅ© ÄõÅÍ Á¦ÇÑ»çÇ×(limits) À» º¼ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.
ÀÌÁ¦ ¿©·¯ºÐÀº edquota ¸í·ÉÀ¸·Î ÄõÅÍ Á¦ÇÑ»çÇ×À» ÆíÁýÇÒ Áغñ°¡ ³¡³µ½À´Ï´Ù.
»ç¿ëÀÚ³ª »ç¿ëÀÚ ±×·ìÀÌ »ç¿ëÇÒ ¼ö ÀÖ´Â µð½ºÅ© »ç¿ë·®¿¡ Á¦ÇÑ(block quotas)À» µÎ°Å³ª ¸¸µé ¼ö ÀÖ´Â ÆÄÀÏ °³¼ö¿¡ Á¦ÇÑ(inode quotas)À» µÑ ¼ö ÀÖ´Â ¿©·¯°¡Áö ¿É¼ÇÀÌ ÀÖ½À´Ï´Ù. ȤÀº µÎ °¡Áö¸¦ È¥ÇÕÇØ¼ Á¦ÇÑÀ» µÑ ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ·± °¢°¢ÀÇ Á¦ÇÑ »çÇ×µéÀº ¾ö°ÝÇÑ Á¦ÇÑ(hard limits)°ú ´ú ¾ö°ÝÇÑ Á¦ÇÑ(soft limits)À¸·Î ´Ù½Ã ³ª´©¾îÁý´Ï´Ù.
¾ö°ÝÇÑ Á¦ÇÑÀº Á¦ÇÑ»çÇ×À» ³Ñ´Â °ÍÀ» Çã¿ëÇÏÁö ¾ÊÀº °ÍÀÔ´Ï´Ù. Á¦ÇÑ¿¡ °É¸° »ç¿ëÀÚ´Â ÆÄÀÏ ½Ã½ºÅÛ¿¡¼ »õ·Î¿î °ø°£À» »ç¿ëÇÒ ¼ö ¾øÀ» °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î »ç¿ëÀÚ¿¡°Ô 500ºí·°ÀÇ ¾ö°ÝÇÑ Á¦ÇÑÀÌ °É·Á ÀÖ°í, ÇöÀç »ç¿ëÁßÀÎ ºí·°ÀÌ 490°³¶ó¸é ´õ »ç¿ëÇÒ ¼ö ÀÖ´Â ºí·°Àº 10°³ »ÓÀÔ´Ï´Ù. 11°³ÀÇ ºí·°À» »ç¿ëÇÏ·Á°í ÇÏ¸é ½ÇÆÐÇÒ °ÍÀÔ´Ï´Ù.
¹Ý¸é¿¡ ´ú ¾ö°ÝÇÑ Á¦ÇÑÀ» °É¾î ³õÀ¸¸é ÀÏÁ¤ÇÑ ½Ã°£µ¿¾ÈÀº Á¦ÇÑ»çÇ×À» ³ÑÀ» ¼ö ÀÖ½À´Ï´Ù. ±× ½Ã°£À» grace period¶ó°í Çϸç, ±âº»ÀûÀ¸·Î ÀÏÁÖÀÏ·Î µÇ¾î ÀÖ½À´Ï´Ù. »ç¿ëÀÚ°¡ Á¦ÇÑ»çÇ×À» ³Ñ±ä »óÅ·ΠÁÖ¾îÁø grace period¸¦ ³Ñ±â¸é, ´õ ÀÌ»ó »õ·Î¿î °ø°£À» »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. ±×·¯´Ù°¡ Á¦ÇÑ»çÇ× ÀÌÇÏ·Î ´Ù½Ã µ¹¾Æ°¡¸é grace peroid´Â ¸®¼ÂµË´Ï´Ù.
¾Æ·¡¿¡ º¸ÀÌ´Â °ÍÀº edquota ¸í·ÉÀ» ½ÇÇàÇÑ ¿¹Á¦ ÀÔ´Ï´Ù. edquota ¸í·ÉÀ» ½ÇÇàÇϸé ȯ°æº¯¼ö EDITOR¿¡ ¼³Á¤µÈ ¿¡µðÅÍ(¼³Á¤µÇÁö ¾Ê¾ÒÀ» °æ¿ì´Â vi) ·Î ÄõÅÍ Á¦ÇÑ»çÇ×À» ÆíÁýÇÒ ¼ö ÀÖ½À´Ï´Ù.
# edquota -u test
Quotas for user test: /usr: blocks in use: 65, limits (soft = 50, hard = 75) inodes in use: 7, limits (soft = 50, hard = 60) /usr/var: blocks in use: 0, limits (soft = 50, hard = 75) inodes in use: 0, limits (soft = 50, hard = 60)
º¸Åë ÄõÅͰ¡ Ȱ¼ºÈµÈ ÆÄÀÏ ½Ã½ºÅÛ ¸¶´Ù µÎ ÁÙ¾¿ º¸ÀÏ °ÍÀÔ´Ï´Ù. ÇÑ ÁÙÀº ºí·° Á¦ÇÑ¿¡ ´ëÇÑ °ÍÀ̰í, ÇÑ ÁÙÀº ¾ÆÀ̳ëµå Á¦ÇÑ¿¡ ´ëÇÑ °ÍÀÔ´Ï´Ù. °£´ÜÈ÷ ¿øÇÏ´Â °ªÀ» ¹Ù²Ù±â¸¸ Çϸé ÄõÅÍ Á¦ÇÑÀ» ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦µé¾î, ÀÌ »ç¿ëÀÚÀÇ ºí·° Á¦ÇÑÀ» soft 50, hard 75¿¡¼ soft 500, hard 600À¸·Î ¹Ù²Û °ÍÀÔ´Ï´Ù. change:
/usr: blocks in use: 65, limits (soft = 50, hard = 75)
to:
/usr: blocks in use: 65, limits (soft = 500, hard = 600)
»õ·Î¿î ÄõÅÍ Á¦ÇÑÀº ¿¡µðÅ͸¦ Á¾·áÇÑ ÈÄ¿¡ Àû¿ëµË´Ï´Ù.
¶§¶§·Î ÄõÅÍ Á¦ÇÑÀ» uidÀÇ ¹üÀ§·Î ÁöÁ¤ÇÏ°í ½ÍÀ» ¶§°¡ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù. À̶§´Â edquota ¸í·ÉÀ» -p ¿É¼Ç°ú ÇÔ²² »ç¿ëÇÏ¸é µË´Ï´Ù. ÀÏ´ÜÀº, ¿øÇÏ´Â Á¦ÇÑ»çÇ×À» ÇÑ »ç¿ëÀÚ¿¡°Ô °Ç ´ÙÀ½¿¡, edquota -p protouser startuid-enduid ¸í·ÉÀ» ½ÇÇàÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, test¶ó´Â »ç¿ëÀÚ¿¡°Ô ¼³Á¤µÈ Á¦ÇÑ »çÇ×À» uid 10,000ºÎÅÍ 19,999±îÁöÀÇ »ç¿ëÀÚ¿¡°Ô ¶È°°ÀÌ ¼³Á¤ÇÏ°í ½Í´Ù¸é ´ÙÀ½°ú °°½À´Ï´Ù.
# edquota -p test 10000-19999
´õ ÀÚ¼¼ÇÑ Á¤º¸¸¦ ¿øÇϽøé man edquota¸¦ ÂüÁ¶ÇϽʽÿÀ.
ÄõÅÍ Á¦ÇѰú µð½ºÅ© »ç¿ë·®À» üũÇϱâ À§Çؼ quota³ª repquota ¸í·ÉÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. quota ¸í·ÉÀº °³º°ÀûÀÎ »ç¿ëÀÚ³ª ±×·ì¿¡ ´ëÇÑ Á¤º¸¸¦ üũÇϴµ¥ »ç¿ëµÉ ¼ö ÀÖ½À´Ï´Ù. ¿ÀÁ÷ ¼öÆÛÀ¯Àú¸¸ ´Ù¸¥ »ç¿ëÀÚ³ª ÀÚ½ÅÀÌ ¼Ò¼ÓµÇÁö ¾ÊÀº ±×·ìÀÇ Á¤º¸¸¦ º¼ ¼ö ÀÖ½À´Ï´Ù. repquota ¸í·ÉÀº ÄõÅͰ¡ Ȱ¼ºÈµÈ ¸ðµç ÆÄÀÏ ½Ã½ºÅÛÀÇ ¸ðµç ÄõÅÍ Á¦ÇѰú µð½ºÅ© »ç¿ë·®À» ¿ä¾àÇØ¼ º¸¿©ÁÝ´Ï´Ù.
¾Æ·¡ ³»¿ëÀº µÎ ÆÄÀÏ ½Ã½ºÅÛ¿¡ ÄõÅÍ Á¦ÇÑÀ» °¡Áø »ç¿ëÀÚÀÇ quota -v ¸í·ÉÀÇ Ãâ·Â »ùÇÃÀÔ´Ï´Ù.
Disk quotas for user test (uid 1002): Filesystem blocks quota limit grace files quota limit grace /usr 65* 50 75 5days 7 50 60 /usr/var 0 50 75 0 50 60
À§ ¿¹Á¦¿¡¼ ÀÌ »ç¿ëÀÚ´Â /usr ÆÄÀÏ ½Ã½ºÅÛ¿¡ soft limitÀÎ 50ºí·°º¸´Ù 15ºí·°À» ´õ »ç¿ëÇϰí Àִµ¥, grace period´Â 5ÀÏ ³²¾ÆÀÖ½À´Ï´Ù. º°Ç¥(*)´Â »ç¿ëÀÚ°¡ ÄõÅÍ Á¦ÇÑÀ» ³Ñ¾ú´Ù´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù.
ÆÄÀÏ ½Ã½ºÅÛ¿¡ ÄõÅͰ¡ Ȱ¼ºÈµÇ¾î ÀÖ´õ¶óµµ, ÀüÇô »ç¿ëµÇÁö ¾ÊÀº ÆÄÀÏ ½Ã½ºÅÛÀº quota¸í·É¿¡¼ º¸ÀÌÁö ¾Ê½À´Ï´Ù. -v ¿É¼ÇÀ» ÁÖ¸é À§ÀÇ ¿¹¿¡¼ /usr/var ó·³ »ç¿ëµÇÁö ¾ÊÀº ÆÄÀÏ ½Ã½ºÅÛµµ º¸¿©ÁÝ´Ï´Ù.
ÄõÅÍ´Â NFS ¼¹ö¿¡ ÀÖ´Â ÄõÅÍ ¼ºê½Ã½ºÅÛ¿¡ ÀÇÇØ¼ ½ÇÇàµË´Ï´Ù. rpc.rquotad(8) µ¥¸óÀÌ NFS Ŭ¶óÀ̾ðÆ®ÀÇ quota(1) ¸í·É°ú Çã°¡µÈ »ç¿ëÀڵ鿡°Ô ÄõÅÍ Á¤º¸¸¦ »ç¿ë°¡´ÉÇÏ°Ô ÇÕ´Ï´Ù.
´ÙÀ½°ú °°ÀÌ /etc/inetd.conf ÆÄÀÏ¿¡¼ rpc.rquotad¸¦ Ȱ¼ºÈ ½Ãŵ´Ï´Ù.
rquotad/1 dgram rpc/udp wait root /usr/libexec/rpc.rquotad rpc.rquotad
ÀÌÁ¦ inetd¸¦ ´Ù½Ã ½ÃÀÛÇÕ´Ï´Ù:
# kill -HUP `cat /var/run/inetd.pid`