반응형
리눅스 사용자별 용량 제한(quota)
리눅스에서 사용자별 디스크 용량 제한을 설정하는 것은 quota를 사용하여 수행할 수 있습니다. quota를 이용하면 사용자가 할당된 용량을 초과하는 경우에 대한 경고 및 차단을 설정할 수 있습니다.
quota 설치
$ yum info quota
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
221 packages excluded due to repository priority protections
Installed Packages
Name : quota
Arch : x86_64
Epoch : 1
Version : 4.01
Release : 17.amzn2
Size : 858 k
Repo : installed
Summary : System administration tools for monitoring users' disk usage
URL : http://sourceforge.net/projects/linuxquota/
License : BSD and LGPLv2+ and GPLv2 and GPLv2+
Description : The quota package contains system administration tools for monitoring
: and limiting user and or group disk usage per file system.
$ yum install -y quota
quota 설정(uid 유저별 제한)
/etc/fstab 파일에서 적용할 파일시스템에 userquota를 추가
###파일시스템장치명 | 마운트포인트 | 파일시스템종류 | 옵션 | dump관련설정 | 파일점검옵션
$ vi /etc/fstab
LABEL=/1 / ext3 defaults 1 1
LABEL=/data1 /data1 ext3 defaults, usrquota 1 2
LABEL=/data3 /data3 ext3 defaults 1 2
LABEL=/tmp /tmp ext3 defaults 1 2
LABEL=/data2 /data2 ext3 defaults 1 2
LABEL=/boot1 /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
LABEL=SWAP-sda5 swap swap defaults 0 0
/data1 remoute
$ mount -o remount /data1
$ mount
/dev/sda2 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/sda6 on /data1 type ext3 (rw,usrquota)
/dev/sdb2 on /data3 type ext3 (rw)
/dev/sda3 on /tmp type ext3 (rw)
/dev/sdb1 on /data2 type ext3 (rw)
/dev/sda1 on /boot type ext3 (rw)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
quota를 적용할 파티션의 최상위 디렉토리에 aqouta.user를 생성하고 권한를 600으로 설정
$ cd /data1/
$ touch /data1/aquota.user
$ chmod 600 /data1/aquota.user
quota 현재 상테 체크
$ quotacheck -avug
quotacheck: WARNING - Quotafile /data1/aquota.user was probably truncated. Can't save quota settings...
quotacheck: Scanning /dev/sda6 [/data1] quotacheck: Old group file not found. Usage will not be substracted.
done
quotacheck: Checked 40844 directories and 828912 files
728x90
quota 관리
quota 시작 및 종료
###Quota 시작
$ quotaon -avug
/dev/sda6 [/data1]: user quotas turned on
###Quota 종료
$ quotaoff -avug
/dev/sda6 [/data1]: user quotas turned off
quota 현재 상태 확인
$ repquota -a
*** Report for user quotas on device /dev/sda6
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
User used soft hard grace used soft hard grace
----------------------------------------------------------------------
root -- 2126544 0 0 6538 0 0
daemon -- 182004 0 0 248 0 0
nobody -- 767976 0 0 1496 0 0
#200 -- 962324 0 0 6831 0 0
#502 -- 109895212 0 0 796706 0 0
#503 -- 277896 0 0 661 0 0
#504 -- 747108 0 0 4597 0 0
#505 -- 73168 0 0 383 0 0
#506 -- 46352 0 0 1255 0 0
#507 -- 46012 0 0 1240 0 0
#508 -- 51512 0 0 1541 0 0
#509 -- 1199284 0 0 2308 0 0
#510 -- 970244 0 0 25018 0 0
#512 -- 990756 0 0 3262 0 0
#514 -- 12 0 0 3 0 0
#515 -- 16 0 0 4 0 0
#516 -- 825488 0 0 15288 0 0
#523 -- 239396 0 0 1391 0 0
#524 -- 200608 0 0 979 0 0
#525 -- 20 0 0 5 0 0
----------------------------------------------------------------------
###used : 현재 사용량
###soft : 현재 설정된 soft limit
###hard : 현재 설정된 hard limit
###grace : soft limit에 지정된 용량 초과 시 남은 유예 기간 표시
유예기간 설정 및 변경
$ edquota –t
Grace period before enforcing soft limits for users:
Time units may be: days, hours, minutes, or seconds
Filesystem Block grace period Inode grace period
/dev/sda6 7days 7days
사용자에게 용량 제한 설정하기
특정 사용자(test1) 용량 제한 적용
# edquota -u test1
Disk quotas for user test1 (uid 502):
Filesystem blocks soft hard inodes soft hard
/dev/sda6 109895212 0 0 796706 0 0
---------------------------------------------------------------------------------------
###Filesystem : qouta를 적용할 파일 시스템
###blocks : 현재 유저의 총 사용량
###inodes : 현재 유저의 파일의 개수
###soft : 지정한 용량 또는 파일수를 초과하면 경고
###hard : 지정한 용량 또는 파일수를 초과하면 쓰기 금지
여러 사용자(test2, test3, test4)에게 용량 제한 설정을 동일하게 적용
$ edquota -p test1 test2 test3 test4
---------------------------------------------------------------------------------------
###test1 설정되어 있는 계정, test2-4 설정 할 대상 계정
특정 사용자의 quota설정을 확인
$ quota -v test1
Disk quotas for user test1 (uid 502):
Filesystem blocks quota limit grace files quota limit grace
/dev/sda6 109895212 0 0 796706 0 0
$ quota -v test4
Disk quotas for user test4 (uid 505):
Filesystem blocks quota limit grace files quota limit grace
/dev/sda6 73168* 1000 1024 383 0 0
728x90
반응형
'리눅스' 카테고리의 다른 글
dig 명령어 (0) | 2020.09.04 |
---|---|
ping, telnet으로 통신(포트) 상태 확인 (0) | 2020.09.04 |
ntsysv 명령어 (0) | 2020.09.04 |
Logrotate를 설정하는 방법 (0) | 2020.09.04 |
[리눅스] find 명령어 (0) | 2020.09.04 |