본문 바로가기

Dev/Dev:: Linux

[Day006] Linux 6일차 - 디스크 용량 제한

● 디스크 용량 제한(Disk Quota)

  - 제한적인 디스크 자원을 모든 계정이 평등하게 사용하도록 사용용량의 제한을 만들어 주는 기능


  1. Quota 프로그램 실행

    1) 제한 디렉토리(파티션)를 지정 => /home 디렉토리 제한

       ]# vi /etc/fstab    =>  제한 디렉토리에 quota 옵션을 적용

       장치파일명 연결디렉토리 파일시스템 옵션,quota옵션 dump옵션  fsck옵션



       ※ quota 옵션

          - usrquota : 소유자 제한 => 계정 제한      

          - grpquota : 소유그룹 제한  =>  그룹 제한 


      ex) ]# vi /etc/fstab

          LABEL=/home      /home     ext3    defaults,usrquota        1 2

                                                 ---------

                                                      └ 추가 

   

    2) 제한 디렉토리 Remount   =>   usrquota 옵션을 적용하여 mount

      ]# mount -o remount 장치파일명    =>  장치 remount

      ex)  ]# mount -o remount LABEL=/home


    3) Quota 파일 생성

      - Quota 파일 : 제한을 하고자 하는 디렉토리의 소유자(소유그룹)의 디스크 사용정보 및 제한정보를 저장하고 있는 파일

      ]# quotacheck -avug    =>제한디렉토리를 스캔하여 소유자(소유그룹)의 사용정보 및 제한정보를 가진 파일을 생성


      - Quota 파일은 제한디렉토리에 생성된다.  

         => /home/aquota.user 파일 생성(/home/aquota.group 파일)

       ※ quota옵션 사용시 Quota 파일명을 따로 지정가능하다.

          =>  quota옵션=/제한디렉토리/파일명     



    4) Quota 프로그램 실행

      - Quota 파일을 디렉토리에 적용하여 실제 제한되도록 Quota 실행

       ]# quotaon -avug

        => quotacheck 명령은 quotaon 상태에서 실행하면 안된다.

        => /etc/fatab에 quota 옵션이 적용된 경우 부팅시 자동으로 quotaon 된다.

 

      - Quota 프로그램 실행 취소

       ]# quotaoff -avug

  2. Quota 프로그램 사용


    1) 제한정보 변경


       ]# edquota -u 소유자명(계정명)   =>  소유자 제한(그룹제한은 -g를 사용)

         => vi 편집기를 이용하여 제한

         => 변경 후 저장하면 제한 적용


       ]# edquota -ut     =>  모든 소유자의 유예기간 변경


       ]# edquota -up 기준계정 계정 계정 계정   =>  제한정보를 복사


       ex) ]# edquota -u scott


           Disk quotas for user scott (uid 509):

           Filesystem                   blocks       soft       hard     inodes     soft     hard

           /dev/sda7                        40         60         70         10        0        0

                                                        --         --       

                                                       └   변경  ┘               


           ※ blocks : 현재 소유자의 사용 용량 정보(kbyte)

              inodes : 현재 소유자의 소유파일의 갯수

              soft  : 경고 제한 => 경고제한을 넘을 경우의 데이타는 유예기간동안 사용 가능 

              hard  : 실제 제한

 

         ]# edquota -ut



          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/sda7                  10minutes                 7days

                               ----------

                                    └ 변경



     2) 제한정보 확인

      ]# quota -u 계정명   =>  계정에 대한 사용정보 및 제한정보 확인          

      ]# repquota -ua      =>  모든 계정에 대한 사용정보 및 제한정보를 확인


      ※ 일반계정은 로그인 후 quota 명령을 이용하여 자신의 사용정보 및 제한정보 확인

         ]$ quota 


         ]# edquota -up scott james john

- scott의 설정을 james와 john 에게도 동일하게 적용

          ]# repquota -ua    - 모든 정보 확인


scott 계정에 파일을 directory를 생성할 수록 블럭이 4씩 증가.  60을 넘기면 경고메시가 출력되고, limit-70을 넘기게 되면 더 이상 만들 수 없는 경우 발생