강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

특정 그룹에게 디스크 용량제한(quota) 설정을 하기 위한 전제조건

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

특정 그룹에게 디스크 용량제한(quota) 설정을 하기 위한 전제조건

 

 

 

 

 

 

특정 그룹에 대한 쿼타설정을 하기 위한 전제 조건에 대해서 알아 보겠습니다.

 

 

 

 앞에서 잠시 언급하였듯이 특정 그룹에 대한 쿼타(quota)를 설정하려면 /etc/fstab파일에 마운트옵션으로 grpquota라는 옵션이 해당 파일시스템의 속성으로 들어있어야만 그룹쿼타의 설정이 가능합니다.

 

 

 

 

 

/ 파일시스템내에서 사용자쿼타와 그룹쿼타 설정을 위한 작업

 

 

 

[root@su252 ~]# cat /etc/fstab

/dev/sda6             /                ext3 defaults,usrquota,grpquota s        1 1

/dev/sda2             /home            ext3    defaults        1 2

/dev/sda1             /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

/dev/sda5             swap             swap    defaults        0 0

/dev/sda3             swap             swap    defaults        0 0

[root@su252 ~]#

 

 

 

 

위와 같이 설정하였다면 이제 /파일시스템을 다시 재마운트합니다.

 

 

 

 당연한 얘기겠지만 재마운트를 하지 않고 재부팅을 해도 됩니다.

 

 

 

 하지만, 굳이 재부팅까지 하지 않아도 되기 때문에 마운트만 다시 수행한 것입니다.

 

 

 

 

 

[root@su252 home]# mount -o remount /

[root@su252 home]#

[root@su252 home]# mount

/dev/sda6 on / type ext3 (rw, usrquota,grpquota)

proc on /proc type proc (rw)

sysfs on /sys type sysfs (rw)

devpts on /dev/pts type devpts (rw,gid=5,mode=620)

/dev/sda2 on /home 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)

[root@su252 home]#

 

 

 

 

 

위의 예는 현재 필자가 사용하고 있는 리눅스 시스템내의 /etc/fstab파일입니다.

 

 

 

 이 파일내의 /파티션에 대한 마운트속성부분에 보면 usrquota와 함께 grpquota속성이 설정된 것을 확인하실 수 있을 것입니다.

 

 

 

 

 

, 이제 /파일시스템은 개별 사용자뿐 아니라 개별 그룹에게도 쿼타설정을 할 수가 있게 되었습니다.

 

 

 

 그룹에 대한 쿼타설정을 하려면 반드시 해당 파일시스템에 위와 같은 grpquota설정이 되어 있어야 한다는 것을 기억하시기 바랍니다.

 

 

 

 

 

그리고 개별 사용자와 그룹에 대한 쿼타설정을 위하여 다음과 같이 quotacheck명령어를 수행해 주셔야 합니다.

 

 

 

 다음과 같이 quotacheck를 수행하면 마운트옵션에 quota관련 속성이 부여되어 있는 파일시스템을 찾아서 쿼타설정을 위해 필요한 쿼타파일을 생성해 줍니다.

 

 

 

 

 

[root@su252 /]# quotacheck -avugm

quotacheck: Scanning /dev/sda6 [/] quotacheck: Cannot stat old user quota file: 그런 파일이나 디렉토리가 없음

quotacheck: Cannot stat old group quota file: 그런 파일이나 디렉토리가 없음

quotacheck: Cannot stat old user quota file: 그런 파일이나 디렉토리가 없음

quotacheck: Cannot stat old group quota file: 그런 파일이나 디렉토리가 없음

done

quotacheck: Checked 8454 directories and 86187 files

quotacheck: Old file not found.

quotacheck: Old file not found.

[root@su252 /]#

[root@su252 /]# ls -l aquota.*

-rw------- 1 root root 7168  1 21 12:33 aquota.group

-rw------- 1 root root 7168  1 21 12:33 aquota.user

[root@su252 /]#

 

 

 

 

 

위의 결과에서 보면 /디렉토리에 aquota.group이라는 파일과 aquota.user라는 파일이 생성되어 있다는 것을 확인할 수 있습니다.

 

 

 

 , aquota.user파일은 각 개별사용자의 쿼타설정내용이 저장될 파일이며, aquota.group파일은 각 그룹별 쿼타설정 내용이 저장될 파일입니다.

 

 

 

 그리고 이 두 파일의 퍼미션이 600이라는 점도 눈여겨 봐 두시기 바랍니다.

 

 

 

 , root만이 이 파일의 내용을 확인할 수 있는 퍼미션 설정입니다.

 

 

 

 물론 이 두 파일의 생성과 퍼미션 설정은 좀 전에 실행한 quotacheck수행으로 생성된 것입니다.

 

 

 

 

 

그리고 다음과 같이 quotaon을 실행하여 쿼타 사용을 활성화 하시기 바랍니다.

 

 

 

 

 

[root@su252 /]# quotaon /

[root@su252 /]#

 

 

 

 

이와 같이 quotaon으로 /파일시스템에 대한 쿼타를 활성화 하게 되면 이제부터는 쿼타설정이 가능하고, 설정된 쿼타가 시스템에 유효하게 적용됩니다.

 

 

 

 , 쿼타설정 제한으로 각 개별 사용자 또는 각 개별그룹들에 대한 디스크 사용량 제한이 적용된다라는 의미입니다.

 

 

 

 

 

 

/home파일시스템내에서 일반사용자들의 쿼타설정을 위한 작업

 

 

 

이제 다음은 일반 사용자들의 쿼타를 실질적으로 적용하기 위한 /etc/fstab파일의 설정과 쿼타파일생성에 대한 예입니다.

 

 

 

 대부분의 여러분들의 리눅스 시스템은 다음과 같이 설정하면 될 것입니다.

 

 

 

 먼저 /etc/fstab파일에 /home파일시스템에 대한 일반사용자의 쿼타설정을 위하여 usrquota속성을 부여한 것입니다.

 

 

 

 

 

[root@su252 ~]# cat /etc/fstab

/dev/sda6               /                       ext3    defaults        1 1

/dev/sda2               /home                   ext3    defaults,usrquota        1 2

/dev/sda1               /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

/dev/sda5               swap                    swap    defaults        0 0

/dev/sda3               swap                    swap    defaults        0 0

[root@su252 ~]#

 

 

 

 

그리고 다음은 /home파일시스템의 마운트속성을 변경하였기 때문에 재부팅하지 않기 위하여 /home파일시스템만 재마운트를 하였습니다.

 

 

 

 그런 다음 mount를 실행하여 마운트 상황을 다시 한번 확인한 것입니다.

 

 

 

 

 

[root@su252 ~]# mount -o remount /home

[root@su252 ~]#

[root@su252 ~]# mount

/dev/sda6 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/sda2 on /home type ext3 (rw,usrquota)

/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)

[root@su252 ~]#

 

 

 

그리고 다음은 쿼타 점검과 쿼타파일 생성/수정작업을 위하여 quotacheck를 실행한 것입니다.

 

 

 

 

 

[root@su252 ~]# quotacheck -avugm

quotacheck: Scanning /dev/sda2 [/home] quotacheck: Old group file not found. Usage will not be substracted.

done

quotacheck: Checked 15 directories and 23 files

[root@su252 ~]#

 

 

 

그리고 위의 quotacheck실행으로 /home 파일시스템에 쿼타파일이 생성된 것을 확인한 것입니다.

 

 

 

 물론, quotacheck의 실행으로 자동 실행된 것입니다.

 

 

 

 

 

[root@su252 ~]# ls -l /home

합계 28

-rw------- 1 root    root    7168  1 21 12:32 aquota.group

-rw------- 1 root    root    7168  1 22 09:01 aquota.user

drwxr-xr-x 3 bible   bible   4096  1 15 16:26 bible

drwxr-xr-x 4 sspark  sspark  4096  1 15 16:23 sspark

drwxr-xr-x 3 sulinux sulinux 4096  1 11 20:06 sulinux

[root@su252 ~]#

 

 

 

 

이상과 같이 설정되어있다면 이제 /home파일시스템내에서 일반사용자들을 대상으로 쿼타제한 설정이 가능합니다 .

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,042 명
  • 현재 강좌수 :  35,846 개
  • 현재 접속자 :  136 명