Quota MiniHOWTO
|
Quota mini-HOWTO
Ralf van Dooren <r.vdooren@snow.nl>
À±ÇöÈ£ <hhyoon@kldp.org>
v0.3, February 2005
°íħ°úÁ¤
Â÷·Ê
[edit]
1 Quota¶õ ¹«¾ùÀΰ¡? ¶Quota´Â »ç¿ëÀÚ³ª ȤÀº ±×·ìÀÌ °¡Áú ¼ö ÀÖ´Â inodeÀÇ ¼ö, ȤÀº »ç¿ëÀÚ³ª ±×·ì¿¡°Ô ÇÒ´çµÈ µð½ºÅ© ºí·°ÀÇ ¼ö¸¦ Á¦ÇÑÇÔÀ¸·Î½á, µð½ºÅ© ÀúÀå ÀåÄ¡ÀÇ »ç¿ëÀ» Á¦ÇÑÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù. Áï, Quota´Â »ç¿ëÀÚ³ª ±×·ìÀÇ µð½ºÅ© »ç¿ë·®À» Á¦ÇÑÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀ» Á¦°øÇØÁØ´Ù.
QuotaÀÇ ±âº» °³³äÀº »ç¿ëÀÚ°¡ ±×µé¿¡°Ô ºÎ¿©µÈ µð½ºÅ©ÀÇ Á¦ÇÑ ¿ë·® ÀÌ»óÀ¸·Î »ç¿ëÇÏÁö ¸øÇÏ°Ô Çϸç, ½Ã½ºÅÛÀÇ µð½ºÅ© °ø°£À» ¹«Á¦ÇÑÀûÀ¸·Î »ç¿ëÇÏÁö ¸øÇÏ°Ô ÇÑ´Ù. Quota´Â »ç¿ëÀÚ º°, ÆÄÀÏ ½Ã½ºÅÛ º°·Î µ¿À۵ȴÙ. ÇÑ »ç¿ëÀÚ¿¡ ÆÄÀÏÀ» ¸¸µé ¼ö ÀÖ´Â ÆÄÀÏ ½Ã½ºÅÛÀÌ Çϳª ÀÌ»óÀ̶ó¸é, °¢°¢ÀÇ ÆÄÀÏ ½Ã½ºÅÛ¿¡ °³º°ÀûÀ¸·Î Quota¸¦ ¼³Á¤ÇØÁà¾ß ÇÑ´Ù.
[edit]
2 ¸®´ª½º¿¡¼ Quota Áö¿ø ¶Quota Áö¿øÀº ¹öÀü 1.3.8x¿¡¼ºÎÅÍ Ä¿³Î¿¡ Æ÷ÇԵǾú´Ù. Áö±ÝÀº ¸®´ª½º Ä¿³Î 2.0 ¸±¸®ÁîÀÇ ÇÑ ºÎºÐÀÌ´Ù. ¿©·¯ºÐÀÇ ½Ã½ºÅÛÀÌ Quota¸¦ Áö¿øÇÏÁö ¾Ê´Â´Ù¸é, ¾÷±×·¹À̵åÇϱ⠹ٶõ´Ù.
ÇöÀç Quota´Â ext2 ÈÀÏ ½Ã½ºÅÛ¿¡¼¸¸ µ¿ÀÛÇÑ´Ù.
[edit]
3.1 Kernel ¶Ä¿³Î 2.x ¼Ò½º´Â http://www.kernel.org ¿¡¼ ±¸ÇÒ ¼ö ÀÖ´Ù. ¼¹öÀÇ ÀÚ¿øÀ» ¾Æ³¢±â À§ÇØ °¡´ÉÇÏ¸é ¿©·¯ºÐÀÇ À§Ä¡¿¡¼ °¡±î¿î °÷ÀÇ ¹Ì·¯ »çÀÌÆ®¸¦ ÀÌ¿ëÇϱ⠹ٶõ´Ù. Çѱ¹ÀÇ ¹Ì·¯ »çÀÌÆ®´Â http://www.kr.kernel.org ÀÌ´Ù.
[edit]
3.2 Quota ¼ÒÇÁÆ®¿þ¾î ¶¿©·¯ºÐÀÇ °¡Áö°í ÀÖ´Â ¸®´ª½º ¹èÆ÷º»¿¡ µû¶ó, ½Ã½ºÅÛ¿¡ Quota ¼ÒÇÁÆ®¿þ¾î°¡ ¼³Ä¡µÇ¾î Àְųª, ȤÀº ¼³Ä¡µÇ¾î ÀÖÁö ¾ÊÀ» ¼öµµ ÀÖ´Ù. ¼³Ä¡µÇ¾î ÀÖÁö ¾Ê´Ù¸é, Quota ¼ÒÇÁÆ®¿þ¾îÀÇ ¼Ò½º¸¦ ftp://ftp.funet.fi/pub/Linux/tools/quota-1.31.tar.gz ¿¡¼ ´Ù¿î·ÎµåÇÒ ¼ö ÀÖ´Ù.
[edit]
4.1 Ä¿³Î Àç¼³Á¤ ¶Quota¸¦ Áö¿øÇÒ ¼ö ÀÖµµ·Ï ´ÙÀ½°ú °°ÀÌ Ä¿³ÎÀ» Àç¼³Á¤ÇÑ´Ù.
Quota support (CONFIG_QUOTA) [n] y [edit]
4.2 Quota ¼ÒÇÁÆ®¿þ¾î ÄÄÆÄÀÏ ¹× ¼³Ä¡ ¶´ëºÎºÐÀÇ ¸®´ª½º ¹èÆ÷º»¿¡¼´Â Quota ¼ÒÇÁÆ®¿þ¾î°¡ ¼³Ä¡µÇ¾î Àְųª, ½±°Ô ¼³Ä¡ÇÒ ¼ö ÀÖ´Ù. ±×·¸Áö ¾Ê´Ù°Å³ª, ¾î¶»°Ô ¼³Ä¡ÇØ¾ß ÇÏ´ÂÁö ¸ð¸¥´Ù¸é, ftp://ftp.funet.fi/pub/Linux/tools/quota-1.31.tar.gz ¿¡¼ ÃÖ½Å
¹öÀüÀÇ Quota ¼ÒÇÁÆ®¿þ¾î¸¦ ´Ù¿î·ÎµåÇÒ ¼ö ÀÖ´Ù.
Quota ¼ÒÇÁÆ®¿þ¾î¸¦ ÄÄÆÄÀÏÇÏ°í ¼³Ä¡Ç϶ó.
[edit]
4.3 Quota¸¦ °Ë»çÇÏ°í ºÎÆ® ½Ã¿¡ Quota¸¦ ÀÛµ¿½Ã۱â À§ÇØ ½Ã½ºÅÛ init ½ºÅ©¸³Æ® ¼öÁ¤ ¶´ÙÀ½ ¿¹¸¦ »ìÆìº¸ÀÚ.
# Check quota and then turn quota on.
if [ -x /usr/sbin/quotacheck ]
then
echo "Checking quotas. This may take some time."
/usr/sbin/quotacheck -avug
echo " Done."
fi
if [ -x /usr/sbin/quotaon ]
then
echo "Turning on quota."
/usr/sbin/quotaon -avug
fi
°¡Àå ÁÁÀº ¹æ¹ýÀº /etc/fstab¿¡ ¸í½ÃµÈ ÆÄÀÏ ½Ã½ºÅÛÀÌ ¸¶¿îÆ®µÈ ÈÄ Ç×»ó Quota¸¦ Äѳõ´Â °ÍÀÌ´Ù. ½Ã½ºÅÛ init ½ºÅ©¸³Æ®ÀÇ ³¡ºÎºÐ ¶Ç´Â ÆÄÀÏ ½Ã½ºÅÛÀÌ ¸¶¿îÆ®µÇ´Â ºÎºÐÀÇ ¹Ù·Î µÞºÎºÐ¿¡ Quota¸¦ Äѳõ´Â °ÍÀ» ÃßõÇÑ´Ù.
[edit]
4.4 /etc/fstab ¼öÁ¤ ¶ÀϹÝÀûÀ¸·Î Quota°¡ ÀÛµ¿µÇ±â ÀüÀÇ ÆÄƼ¼Ç Á¤º¸´Â ´ÙÀ½°ú °°´Ù.
/dev/hda1 / ext2 defaults 1 1 /dev/hda2 /usr ext2 defaults 1 1 ÆÄÀÏ ½Ã½ºÅÛ¿¡ »ç¿ëÀÚ Quota Áö¿øÀ» °¡´ÉÇÏ°Ô ÇÏ·Á¸é, "defaults" ´Ü¾î µÚ, Áï ³×¹øÂ° Ç׿¡ "usrquota"¸¦ Ãß°¡ÇÑ´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â fstab ¸Å´º¾ó ÆäÀÌÁö('man fstab')¸¦ Âü°íÇ϶ó.
/dev/hda1 / ext2 defaults 1 1 /dev/hda2 /usr ext2 defaults,usrquota 1 1 ÆÄÀÏ ½Ã½ºÅÛ¿¡ ±×·ì Quota ±â´ÉÀÌ ÇÊ¿äÇϸé, "usrquota" ´ë½Å "grpquota"¸¦ Ãß°¡Ç϶ó.
/dev/hda1 / ext2 defaults 1 1 /dev/hda2 /usr ext2 defaults,grpquota 1 1 ÆÄÀÏ ½Ã½ºÅÛ¿¡ »ç¿ëÀÚ Quota¿Í ±×·ì Quota µÑ´Ù ÇÊ¿äÇÏ´Ù¸é ´ÙÀ½°ú °°ÀÌ ÇÏ¸é µÈ´Ù.
/dev/hda1 / ext2 defaults 1 1 /dev/hda2 /usr ext2 defaults,usrquota,grpquota 1 1 [edit]
4.5 Quota ±â·Ï ÆÄÀÏ "quota.user"¿Í "quota.group" »ý¼º ¶quota.user¿Í quota.group, ÀÌ µÎ Quota ±â·Ï ÆÄÀÏÀº root ¼ÒÀ¯À̾î¾ß Çϰí, root À̿ܿ¡´Â ¾î´À ´©±¸µµ Àбâ/¾²±â ±ÇÇÑÀ» Á༴ ¾ÈµÈ´Ù.
root·Î ·Î±×ÀÎÇÑ ÈÄ, Quota¸¦ Ȱ¼ºÈ½Ãų ÆÄƼ¼ÇÀÇ ·çÆ® µð·ºÅ丮·Î À̵¿Ç϶ó. ±×·± ÈÄ quota.user¿Í quota.group ÆÄÀÏÀ» ´ÙÀ½°ú °°ÀÌ ¸¸µç´Ù.
$ touch /partition/quota.{user,group}
$ chmod 600 /partition/quota.{user,group}
[edit]
4.6 Quota ½Ã½ºÅÛ È°¼ºÈ½Ã۱⠶Quota ¼ÒÇÁÆ®¿þ¾î¸¦ Ȱ¼ºÈ½Ã۱â À§ÇØ, ¿©·¯ºÐÀÌ ¼öÁ¤ÇÑ °ÍÀÌ ¿µÇâÀ» ¹ÌÄ¥ ¼ö ÀÖµµ·Ï ½Ã½ºÅÛÀ» ¸®ºÎÆ®ÇÑ´Ù.
´õ ÁÁÀº ¹æ¹ýÀº ¿©·¯ºÐÀÌ ¸¸µç ½Ã½ºÅÛ init ½ºÅ©¸³Æ®¸¦ ½ÇÇà½ÃŰ´Â °ÍÀÌ´Ù. À̰ÍÀº Quota µ¥ÀÌŸº£À̽º¸¦ ÃʱâȽÃų °ÍÀÌ´Ù. ¸¸¾à 'ls -la /partition/quota.*' ¸í·ÉÀ» ½ÇÇàÇØº¸¸é ÆÄÀÏ Å©±â°¡ ´õ ÀÌ»ó 0 ÀÌ ¾Æ´Ï¶ó´Â °ÍÀ» ¾Ë°Ô µÉ °ÍÀÌ´Ù. À̰ÍÀº Quota°¡ µ¿ÀÛÇϰí ÀÖ´Ù´Â °ÍÀ» ¸»ÇÑ´Ù.
³ªÁß¿¡ ´Ù¸¥ ÆÄƼ¼Ç¿¡µµ Quota¸¦ °¡´ÉÇÏ°Ô ÇÏ·Á¸é 4, 5, 6¹ø °úÁ¤À» µÇÇ®ÀÌÇÏ¸é µÈ´Ù.
[edit]
4.7 crontab¿¡ quotacheck Ãß°¡ ¶Quotacheck´Â ÁÖ±âÀûÀ¸·Î, Áï ÀÏÁÖÀϸ¶´Ù ½ÇÇàµÇ¸é µÉ °ÍÀÌ´Ù. ´ÙÀ½ ÁÙÀ» rootÀÇ crontab¿¡ Ãß°¡Ç϶ó. ('crontab -e')
0 3 * * 0 /sbin/quotacheck -avug [edit]
5 ¸®´ª½º¿¡¼ Quota ¼³Á¤ - 2 Àå: »ç¿ëÀÚ¿Í ±×·ì¿¡°Ô ÇÒ´ç·® ¹èÁ¤ ¶À̰ÍÀº edquota ¸í·ÉÀ» ÅëÇØ ÇàÇØÁø´Ù. (ÀÚ¼¼ÇÑ °ÍÀº 'man edquota'¸¦ Âü°íÇϱ⠹ٶõ´Ù.)
[edit]
5.1 ƯÁ¤ »ç¿ëÀÚ¿¡°Ô µð½ºÅ© ÇÒ´ç·® ¹èÁ¤ ¶¿©±â ÇѰ¡Áö ¿¹°¡ ÀÖ´Ù. ¸¸¾à ½Ã½ºÅÛ¿¡ ·Î±×ÀÎ ¾ÆÀ̵ð bobÀ̶ó´Â »ç¿ëÀÚ°¡ ÀÖ°í, ÀÌ »ç¿ëÀÚÀÇ µð½ºÅ© ÇÒ´ç·®À» ¹èÁ¤Çϱâ À§ÇØ "edquota -u bob" ¸í·ÉÀ» »ç¿ëÇÔÀ¸·Î½á vi ¿¡µðÅÍ(¶Ç´Â &EDITOR ȯ°æº¯¼ö¿¡ ¼³Á¤ÇÑ ¿¡µðÅÍ)·Î quota°¡ ¼³Ä¡µÈ °¢ ÆÄƼ¼ÇÀÇ bobÀ̶ó´Â »ç¿ëÀÚÀÇ ÇÒ´ç·®À» ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù.
Quotas for user bob:
/dev/hda2: blocks in use: 2594, limits (soft = 5000, hard = 6500)
inodes in use: 356, limits (soft = 1000, hard = 1500)
"blocks in use"´Â ÇÑ ÆÄƼ¼Ç¿¡¼ »ç¿ëÀÚ°¡ »ç¿ë ÁßÀÎ ÃÑ ºí·°(kilobyte ´ÜÀ§)À» ÀǹÌÇÑ´Ù.
"inodes in use"´Â ÇÑ ÆÄƼ¼Ç¿¡¼ »ç¿ëÀÚ°¡ »ç¿ë ÁßÀÎ ÆÄÀÏÀÇ ÃÑÇÕÀÌ´Ù.
[edit]
5.2 ƯÁ¤ ±×·ì¿¡ µð½ºÅ© ÇÒ´ç·® ¹èÁ¤ ¶½Ã½ºÅÛ¿¡ gamesÀ̶ó´Â ±×·ìÀÌ ÀÖ°í, ÀÌ ±×·ìÀÇ µð½ºÅ© »ç¿ë·®À» Á¦ÇÑÇÏ°í ½Í´Ù¸é, "edquota -g games" ¸í·ÉÀ» »ç¿ëÇÏ¸é µÈ´Ù. ±×·¯¸é vi ¿¡µðÅ͸¦ ÀÌ¿ëÇØ games ±×·ìÀÇ ÇÒ´ç·®À» ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù.
Quotas for group games:
/dev/hda4: blocks in use: 5799, limits (soft = 8000, hard = 10000)
inodes in use: 1454, limits (soft = 3000, hard = 4000)
[edit]
5.3 ÀÏ·ÃÀÇ »ç¿ëÀڵ鿡°Ô °°Àº °ªÀ¸·Î µð½ºÅ© ÇÒ´ç·® ¹èÁ¤ ¶¿¹¸¦ µé¾î 100¸íÀÇ »ç¿ëÀÚÀÇ ÇÒ´ç·®À» »ç¿ëÀÚ bob°ú °°Àº °ªÀ¸·Î »¡¸® ¼³Á¤Çϱâ À§Çؼ´Â, ¸ÕÀú bobÀÇ ÇÒ´ç·® Á¤º¸¸¦ Á÷Á¢ ¼öÁ¤ÇÑ ÈÄ¿¡ ´ÙÀ½ ¸í·ÉÀ» ¼öÇàÇÏ¸é µÈ´Ù.
edquota -p bob `awk -F: '&3 > 499 {print &1}' /etc/passwd`
¿©±â¿¡¼ cshÀ» »ç¿ëÇϰí ÀÖ´Ù°í °¡Á¤Çϸç, »ç¿ëÀÚÀÇ UID°¡ 500ºÎÅÍ ½ÃÀÛÇÑ´Ù°í °¡Á¤Çϰí ÀÖ´Ù.
Ãß°¡ÀûÀ¸·Î edquota¿¡¼´Â Soft Limit, Hard Limit, À¯¿¹ ±â°£(Grace Period)À̶ó´Â ´Ü¾îÀÇ Àǹ̸¦ ¾Ë¾Æ¾ß ÇÑ´Ù.
[edit]
5.4 Soft Limit ¶Soft limit´Â ÇÑ ÆÄƼ¼Ç¿¡¼ »ç¿ëÀÚ°¡ ¾µ ¼ö ÀÖ´Â ÃÖ´ë ¿ë·®À» °¡¸®Å²´Ù. ±×·¯³ª À¯¿¹ ±â°£(grace period) ³»¿¡ À־ »ç¿ëÀÚ´Â »ç¿ë ¿ë·® Ãʰú¿¡ ´ëÇØ¼ °æ°í¸¦ ¹Þ°Ô µÇ´Â °æ°è¼±Ã³·³ µ¿ÀÛÇÑ´Ù.
[edit]
5.5 Hard Limit ¶Hard limit´Â À¯¿¹ ±â°£(grace period)ÀÌ ¼³Á¤µÇ¾î ÀÖÀ» ¶§¿¡¸¸ µ¿ÀÛÇÑ´Ù. À̰ÍÀº µð½ºÅ© »ç¿ë¿¡ ÀÖ¾î¼ Àý´ëÀûÀÎ Á¦ÇÑÀ» ÀǹÌÇÑ´Ù. Áï, »ç¿ëÀÚ´Â hard limit ÀÌ»óÀÇ µð½ºÅ© °ø°£À» »ç¿ëÇÒ ¼ö ¾ø´Ù.
[edit]
5.6 Grace Period ¶À¯¿¹ ±â°£Àº »ç¿ëÀÚÀÇ »ç¿ë ¿ë·®ÀÌ soft limit ¿ë·®À» ³ÑÀº ÈĺÎÅÍ Àû¿ëµÇ´Â ½Ã°£ Á¦ÇÑÀÌ´Ù. ½Ã°£Àº sec(onds), min(utes), hour(s), day(s), week(s), month(s) ´ÜÀ§·Î »ç¿ëÇÒ ¼ö ÀÖ´Ù. "edquota -t" ¸í·ÉÀ» ½ÇÇàÇϸé À¯¿¹ ±â°£À» º¸°Å³ª ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù.
Time units may be: days, hours, minutes, or seconds Grace period before enforcing soft limits for users: /dev/hda2: block grace period: 0 days, file grace period: 0 days "0 days" ºÎºÐÀ» Àû´çÇÑ ±â°£À¸·Î ¹Ù²ãÁØ´Ù. °³ÀÎÀûÀ¸·Î´Â 7ÀÏ("7 days" ȤÀº "1 week")·Î ¼³Á¤ÇØ ÁÖ¾ú´Ù.
[edit]
6.1 Quotacheck ¶quotacheck´Â ÆÄÀÏ ½Ã½ºÅÛÀÇ µð½ºÅ© »ç¿ë »óŸ¦ °Ë»öÇϰųª quota ±â·Ï ÆÄÀÏÀÎ "quota.user" ÆÄÀÏÀ» ÃÖ±ÙÀÇ »óÅ·Π°»½ÅÇϱâ À§ÇØ »ç¿ëÇÑ´Ù. quotacheck¸¦ ½Ã½ºÅÛÀ» ºÎÆÃÇÒ ¶§³ª Á¤±âÀûÀ¸·Î(¿¹¸¦ µé¾î, ÀÏÁÖÀÏ¿¡ Çѹø) cronjobÀ» ÅëÇØ¼ ½ÇÇàÇÒ °ÍÀ» ±ÇÇÑ´Ù.
[edit]
6.2 Repquota ¶repquota´Â ÆÄÀÏ ½Ã½ºÅÛÀÇ quota¸¦ Á¤¸®Çؼ º¸¿©ÁØ´Ù. ´ÙÀ½Àº repquota°¡ Ãâ·ÂÇÏ´Â ¿¹Á¦ÀÌ´Ù.
# repquota -a
Block limits File limits
User used soft hard grace used soft hard grace
root -- 175419 0 0 14679 0 0
bin -- 18000 0 0 735 0 0
uucp -- 729 0 0 23 0 0
man -- 57 0 0 10 0 0
user1 -- 13046 15360 19200 806 1500 2250
user2 -- 2838 5120 6400 377 1000 1500
|
Promptness is its own reward, if one lives by the clock instead of the sword. |








