'Quote'에 해당되는 글 1건

  1. 2004/03/29 Quota 설정

Quota 설정

컴퓨터/System 2004/03/29 09:45

웹호스팅 같은 서비스를 하기위해선 사용자의 디스크 사용량을 통제할수 있어야 한다.

그 대안이 Quota이고 이 문서는 그 설정을 다루고 있다.

쿼타를 설정하기 위해선 우선 커널이 쿼타를 사용할 수 있는 상태인지 먼저 조사해야 한다.

, 쿼타를 사용할수 있게 커널을 컴파일해야 한다는 말이다.

커널 컴파일 문서를 확인하라.

같은버전의 특정모듈만 컴파일할 경우

# make menuconfig                         // M으로 선택

# make dep

# make clean

# make modules

# make modules_install

이전 컴파일 환경을 사용하니까 make mrproper 명령은 빼줘도 상관없다.

그리고 이미지를 만드는게 아니고 모듈만 올리는거니까 make bzImage 명령도 필요없다.

같은버전의 특정부분을 커널이미지에 추가할 경우

# make mrproper

# make menuconfig

# make dep

# make bzImage

# make modules

# make modules_install

make clean과정이 빠져있다. 즉, 기존의 obj 파일이 다 남아있다. 그리고 선택해준 Y부분만 컴파일하게된다.

나머지는 똑같다.


본격적인 Quota 설정

일단 먼저 /etc/fstab 파일을 편집한다.

쿼터 설정하려는 부분의 파티션 4번째 부분에 usrquota(사용자쿼타), usrgroup(그룹쿼타)

만약 쿼터설정하려는 파티션이 /home이라 가정하면, /home 파티션에 quota.user 또는 quota.group 파일을 생성하고 퍼미션을 루트만 읽고 쓸수 있게 한다.

# touch /home/quota.{user,group}

# chmod 600 /home/quota.{user,group}

그리고 시스템 시작시 실행스크립트(/etc/rc.d/rc.local)에 다음을 추가해준다.

# quotaon을 하기전에 quotacheck로 체크를 한다.

if [ -x /sbin/quotacheck ]; then

            echo Checking quotas. This may take some time.

            /sbin/quotacheck avug

            echo Done.

fi

# quotacheck를 마치고나서 quotaon을 한다.

if [ -x /sbin/quotaon ]; then

            echo Turning on quota

            /sbin/quotaon avug

fi

재부팅을 하면 부팅과 동시에 쿼터체크를 하고 쿼터를 작동시킨다.

위에쓰인 옵션

-u : 사용자             -g : 그룹          -v : 쿼터가 켜진 각 파일시스템을 위한 메시지출력

쿼터를 지정한다.(edquota)

# edquota u mars

vi모드에서 쿼타설정(mars 유저) 편집이 가능하게 된다.

아이디대신 UID도 가능하다


만일 모든 사용자에게 동일한 용량을 지정하기 위해서는

일단 한명의 사용자에게 쿼터를 설정한다.(위에는 mars)

# edquota p mars `awk F: $3 > 499 {print $1} /etc/passwd`

해석해보면 금방 답이 나온다.

유예기간(Grace period) 설정

먼저 soft limit 와 hard limit에 대해서..

soft limit:

소프트제한은 사용자가 쓸 용량을 넘어서면 제한이 가해진다(그러니까 넘을 수는 있다는 말이다)

hard limit:

grace period가 정해졌을 때 사용할 수있다.

디스크를 완전하게 제한하는것으로 하드제한에서 제한한 디스크양 외에는 사용자가 디스크를 절대 사용할 수없다

grace period:

디스크 사용을 초,분,시간,날,주,달 등으로 사용시간을 제한할 수 있다.

변경명령은 아래와 같다.

# edquota t

마찬가지로 vi 모드에서 편집을 하고 저장하면 적용이 된다.

Quota 정리

멀티 운영체제에서 사용자의 디스크사용제한은 필수적인 것이다.

쿼터를 작동시키기 위해선 커널옵션의 File System->quota support 항목이 체크되어 있어야한다.

/etc/fstab 부분 편집하고 /etc/rc.d/rc.local 에서 쿼터부분 스크립트를 삽입한다.

실제 쿼터 편집은 edquota로 하고 repquota로 확인할 수있다.

사용자에게 파일갯수(inode), 블록(size) 제한을 가할 수있다. edquota u 유저(id)

grace period를 조정하기 위해선 edquota t 로 처리한다.


쿼타를 작동시키는 명령은 quotaon이고 반대는 quotaoff 이다.

쿼터 체크를 위해선 quotacheck 명령을 사용한다.

TAG Quote