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

리눅스 디스크 사용량관리하기(Quota강좌)

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

리눅스 디스크 사용량관리하기(Quota강좌)

 

 

요즘에는 반드시 필요한 설정이라고 보기는 어렵지만,  혹시 사용자별 또는 그룹별도 디스크사용량을 제한하여  효율적인 디스크 활용을 하려면 이번 강좌를 잘 보시기 바랍니다.  

 

 

사용자의 디스크 사용량제한을 위한 쿼타(quota) 개론

 

현재 리눅스의 거의 모든 배포판에서는 쿼타버전이 업그레이드 되어 있습니다.  

 

  

 

 이웹사이트(www.linux.co.kr)의 설명 또한 New Quota버전으로 설명하고 있으며 만약 Old Quota를 사용하실 분들은 다음을 참조하시기 바랍니다.  

 

 

 

[참고]OLD 쿼타사용자를 위하여

이전 버전의 Old Quota를 사용하시는 분들은 다음 사항을 참고하시기 바랍니다.  

 

 앞에서 간단히 언급하였듯이 쿼타(quota)를 사용하여 디스크사용량을 제한하고자 한다면 커널에서 쿼타(quota)를 지원해야합니다.  

 

  커널에서 쿼타(quota)를 지원하지 않은 상태에서 쿼타(quota)관련 설정을 한다면 쿼타(quota)는 정상적으로 동작하지 않습니다.  

 

 여기서는 커널 컴파일시에 쿼타(quota)지원을 위하여 어떤 부분에 설정을 해야하는가에 대해서 언급해 드리도록 하겠습니다.  

 

  아래의 그림은 “make menuconfig”라는 커널컴파일 단계에서 쿼타(quota)관련 설정을 하는 부분으로 “File System”항목내의 “Quota support”라는 부분입니다.  

 

  이 부분에서 아래와 같이 "Old quota format support"를 반드시 체크하신 후에 커널을 재컴파일해야 합니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659628_2588.png
 

 

quota는 파일시스템내에서 설정된 쿼타(quota)의 디스크사용량 제한설정내용을 확인할 수 있는 명령어입니다.  

 

  , 쿼타(quota)라고 하는 디스크용량제한을 하는 여러가지 명령어 가운데 하나입니다.  

 

 따라서 여기서 설명하는 quota명령어외에도 쿼타(quota)와 관련된 명령어들과 함께 알아두셔야 쿼타(quota)설정을 정확하게 알 수가 있습니다.  

 

 

 

, 쿼타(quota)와 관련하여 알아두셔야하는 것은 다음과 같습니다.  

 

 

 

- 커널쿼타지원여부 : 커널(kernel)에서 해당 파일시스템의 쿼타(quota)지원이 되는가?

 

- quota            : 설정된 각 사용자(그룹)의 쿼타(quota)를 확인한다.

 

- edquota          : 각 사용자(그룹)의 디스크 쿼타(quota)를 설정합니다.  

 

 

- quotaon          : 시스템에서 쿼타(quota)를 가동합니다.  

 

 

- quotaoff         : 시스템에서 가동중인 쿼타(quota)를 중지합니다.  

 

 

- quotacheck       : 시스템의 쿼타(quota) 상황을 확인합니다.  

 

 

- repquota         : 사용자들의 쿼타(quota)설정내역을 확인합니다.  

 

 

 

이번 절에서는 quota에 대한 설명만을 하겠습니다.  

 

 , 리눅스 시스템에서 쿼타(quota)를 적용하여 디스크사용량을 제한하려면 위의 내용을 충분히 숙지하고 있어야 합니다.  

 

 따라서 이번 장에서 설명하는 quota명령어 외에도 위의 명령어들을 반드시 함께 익혀두셔야한다는 것을 당부 드립니다.  

 

  그리고 쿼타(quota)적용을 위한 전제조건이 커널에서 쿼타(quota)설정을 지원하도록 컴파일되어 있어야 한다는 것입니다.  

 

 

 

참고로 레드햇리눅스 8.0이상 부터는 기본설치시에 쿼타(quota)지원이 되지않으므로 ext3이상의 파일시스템에서 쿼타(quota)를 적용하여 디스크사용량을 제한하고자 한다면 설치후에 커널을 컴파일하여 “Quota support”항목을 체크하여 쿼타(quota)를 지원하도록 설정한 후에 커널을 재컴파일해야합니다.  

 

 

 

단순히 위의 쿼타(quota)설정 관련된 명령어와 설정방법만을 알고 있다고 해서 쿼타(quota)가 제대로 작동되는 것이 아님을 분명히 알고 계셔야 할 것입니다.  

 

 

 

[참고]쿼타사용시 애로사항

이번 절에서 설명하는 쿼타에 대한 설명을 모두 보신다면 쿼타에 대하여 다음과 같은 의문을 가질 수 있습니다.  

 

 첫번째는 특정사용자(:bible)의 쿼타제한 용량까지 디스크용량을 모두 사용하였을 경우에 FTP접속으로는 쿼타 안내메시지를 볼 수 없다는 점입니다.  

 

 서버관리자가 아닌 일반 사용자들은 TELNET이나 SSH대신 FTP를 주로 사용하므로 쿼타에서 제한된 용량까지 모두 사용하였다는 안내문메시지를 볼 수 없다는 것은 다소 문제가 될 수 있습니다.  

 

  두번째는 특정 사용자의 홈디렉토리( : /home/bible)내에 존재하는 모든 파일들의 쿼타용량 체크에서 홈페이지의 자료실이나 파일업로드된 디렉토리들이 아파치프로세스 소유자인 nobody apache권한으로 되어있기 때문에 그 디렉토리들은 사용자의 사용용량으로 체크되지 않는다는 점입니다.  

 

 따라서 일반사용자들의 실제 사용하고 있는 용량이 쿼타제한용량 보다 더 많아 질 수 있다는 문제점이 있습니다.  

 

 

 

 

쿼타(quota)적용을 위한 파일시스템 수정사항

 

다음은 리눅스 시스템에 쿼타(quota)적용을 위하여 /etc/fstab파일내에 설정되어야하는 부분에 대한 예입니다.  

 

  먼저 쿼타(quota)를 적용할 파티션을 선택하셔야합니다.  

 

  대부분 사용자의 디스크용량을 제한하기 위한 것이 목적이기 때문에 사용자의 데이터가 저장되는 곳에 쿼타(quota)적용하는 것을 원할 것입니다.  

 

 

 

따라서 대부분의 리눅스 시스템에서는 /home파티션에 대한 쿼타설정을 하기 위하여 /home파티션의 파일시스템 마운트시에 usrquota라는 속성을 넣어서 마운트(mount)합니다.  

 

 

 

아래와 같이 /home파티션 부분에 usrquota라는 설정을 넣어두시면 부팅시 /home파티션을 마운트하면서 usrquota라는 쿼타(quota)속성을 지원하게 됩니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659645_4876.png
 

 

/etc/fstab파일에 대한 자세한 설명은 이번 장의 41절에서 설명하고 있는 "파일시스템 자동 마운트 정보파일 /etc/fstab"편을 참고하시기 바랍니다.  

 

 


시스템커널에서 쿼타(quota)지원여부 확인하기

 

커널(kernel)과 파일시스템에서 쿼타(quota)를 지원하고 설정이 정상적으로 되어 있다는 것을 확인하는 방법이 있습니다.  

 

 

 

- 커널에서 쿼타지원여부 확인하기

 

먼저 커널(kernel)에서 쿼타(quota)를 지원하는가에 대한 부분을 확인해 보셔야 합니다.  

 

  커널에서의 쿼타(quota)지원여부를 확인하고자 한다면 부팅메시지나 시스템로그메시지에서 확인해보시면 됩니다.  

 

 

 

, 아래와 같이 /var/log/messages파일과 dmesg라는 명령어로 쿼타(quota)관련 내용을 확인해 보는 방법입니다.  

 

  아래의 예는 시스템로그에서 쿼타관련로그를 확인하기 위하여 “grep quota /var/log/messages”라는 명령어를 사용한 것이며 두번째는 dmesg라는 부팅메시지 확인 명령어에서 quota설정관련 로그를 확인하기 위하여 “dmesg | grep quota”라는 명령어를 사용한 것입니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659659_2973.png
 

 

 

- 파일시스템에서 쿼타지원하도록 마운트되었는가를 확인하기

 

위의 예와 같이 커널에서 쿼타(quota)를 지원하는 설정을 확인하였다면 다음은 파일시스템에서 쿼타(quota)를 지원하도록 마운트(mount)가 되었는가를 확인하셔야 합니다.  

 

 

 

, /home 파일시스템에 쿼타(quota)설정이 정상적으로 되어 있다면 아래와 같이 mount라고 해보시기 바랍니다.  

 

  아래의 결과를 보시면 /home파일시스템의 마운트 옵션부분에 usrquota라는 속성이 들어가 있는 것이 보일 것입니다.  

 

 

 

이 부분은 앞의 예에서 보았듯이 /etc/fstab파일내의 설정으로 인하여 부팅시 마운트(mount)단계에서 쿼타(quota)관련 속성인 usrquota를 지원하도록 마운트한 것입니다.  

 

 

 

결론적으로 파일시스템에서 usrquota라는 속성으로 마운트가 되었다면 해당 파일시스템에서는 쿼타(quota)사용이 가능하다고 보시면 됩니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659673_7034.png
 

 


특정 사용자의 quota설정 내역을 확인하는 방법

 

 

root권한으로 일반사용자의 quota설정내역을 확인하고자 한다면 “quota -v 사용자ID”라고 하시면 됩니다.  

 

  아래의 예는 hanlim이라는 사용자의 쿼타(quota)설정내역을 확인한 것입니다.  

 

 cb7659c654fd99a396bca435184bb9c9_1649659687_3555.png 

 

위의 예에서 hanlim이라는 사용자는 /dev/sda6파일시스템내에서 50MB의 사용제한이 되어있음을 알 수 있습니다.  

 

 

 

여기서 참고로 알아두어야 할 용어에 대해 설명하도록 하겠습니다.  

 

 

 

쿼타(quota)에서 “Soft Limit”이란 일반적인 용량제한범위를 의미하는 것으로 여기서 설정된 용량을 넘기게 되면 일단은 유예기간(grace period)내에서는 허용은 하지만 경고를 받게 됩니다.  

 

  Soft Limit이란 일반적인 허용용량이라고 보시면 됩니다.  

 

 즉 해당 사용자에게 50MB의 용량제한이 되어있다고 말할때의 그 용량을 Soft Limit에 설정하시면 됩니다.  

 

 

 

쿼타(quota)에서 “Hard Limit”이란 절대적으로 넘을 수 없는 용량제한을 의미합니다.  

 

 필자의 경우에는 50MB사용자의 경우에는 55MB정도로 Hard Limit을 설정해 둡니다.  

 

 즉 사용자에게 허용된 용량의 10%정도를 추가로 저장할 수 있도록 설정합니다.  

 

 

 

쿼타(quota)에서 “Grace Period”란 유예기간으로서 해당 사용자의 용량이 “Soft Limit”을 넘기는 시점부터 적용되어 용량초과를 허용할 시간을 의미합니다.  

 

 

 

 

일반사용자의 자기자신의 쿼타(quota)설정내역 확인하는 방법

 

 

개별 계정사용자가 자기자신의 쿼타(quota)설정내역을 확인하고자 한다면 “quota -u 자기자신의ID”라고 하시면 됩니다.  

 

 

 

아래의 예는 sspark이라는 계정사용자가 자기자신의 쿼타(quota)설정 내역을 확인하기 위하여 “quota -u sspark”이라는 명령어를 사용한 것입니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659703_4892.png
 

 

 

 

특정 그룹의 디스크용량 설정내용 확인하기

 

개별 사용자뿐 아니라 특정그룹별로 디스크사용량을 제한할 수 있습니다.  

 

  그리고 그룹별로 제한된 디스크사용량을 확인할 수도 있습니다.  

 

  여기서는 개별 그룹별로 디스크용량제한 설정내역을 확인하는 방법에 대한 설명을 하겠습니다.  

 

 

 

먼저 현재 사용자가 소속되어 있는 모든 그룹의 디스크사용량제한 내역을 확인하는 예입니다.  

 

  , 아래의 예는 현재 root사용자가 속해 있는 모든 그룹의 디스크용량제한 내역을 확인하는 것입니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659718_0883.png
 

 

그리고 아래는 개별 사용자가 속해있는 그룹의 디스크사용량 제한에 대한 확인입니다.  

 

  ,  아래의 첫번째 예는 bible이라는 사용자가 속해있는 그룹의 쿼타(quota)설정 내역을 확인한 것이며 두번째 예는 sspark이라는 사용자가 속해있는 그룹의 쿼타(quota)설정 내역을 확인한 것입니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659730_4754.png
 

 

 

디스크사용량 제한 설정하는 edquota의 개론과 실무활용

 

edquota는 시스템 쿼타(quota)관련 명령어의 하나로서 개별 사용자에게 디스크사용량제한을 위한 쿼타(quota)설정 및 편집 명령어입니다.  

 

  , 개별사용자의 디스크사용량을 soft limit, hard limit, grace period에 대한 세부설정을 하는 명령어입니다.  

 

 

 

또한 edquota로 개별 사용자의 디스크사용량을 제한할 때에는 아래의 soft limit hard limit, 그리고 grace period에 대한 정확한 의미를 알고 있어야 합니다.  

 

 앞서 설명하였지만 다시한번 정리해서 설명해보겠습니다.  

 

 

 

“Soft Limit”이란 일반적인 의미의 디스크 사용제한용량으로서 여기서 설정된 용량을 넘기게 되면 일단은 유예기간(grace period)내에서는 허용은 하지만 경고를 받게 됩니다.  

 

  Soft Limit이란 일반적인 허용용량이라고 보시면 됩니다.  

 

 즉 해당 사용자에게 50MB의 용량제한이 되어있다고 할 때의 그 용량을 Soft Limit에 설정하시면 됩니다.  

 

 

 

“Hard Limit”이란 절대적으로 넘을 수 없는 하드웨어적인 용량제한을 의미합니다.  

 

 필자의 경우에는 50MB사용자의 경우에는 55MB정도로 Hard Limit을 설정해 둡니다.  

 

 즉 사용자에게 허용된 용량의 10%정도를 추가로 저장할 수 있도록 설정합니다.  

 

 (설정하는 사람에 따라서 이 부분은 다를 수 있으므로 참고만 하시기 바랍니다.  

 

 )

 

“Grace Period”이란 유예기간으로서 해당 사용자의 용량이 “Soft Limit”을 넘기는 시점부터 적용되어 용량초과를 허용할 시간을 의미합니다.  

 

 즉 개별 사용자가 현재 자기가 사용하고 있는 디스크사용량이 사용제한에 도달하였다고 인지하고 용량조절을 위한 기간을 주기 위해 설정하는 유예기간이라고 생각하시면 됩니다.  

 

 

 

 

개별 사용자에게 디스크 사용량 제한을 위한 쿼타(quota)설정 및 편집하기

 

 

edquota명령어로 시스템의 개별 사용자에게 디스크사용량 제한을 위한 쿼타(quota) 설정과 설정되어 있는 쿼타(quota)를 편집할 수 있습니다.  

 

 , edquota라는 명령어는 개별 사용자의 쿼타 설정과 편집을 하는 명령어로서 “edquota -u 사용자ID”와 같은 형식으로 사용합니다.  

 

 

아래의 예는 bible이라는 사용자의 쿼타를 설정을 하기 위하여 “edquota -u bible” 이라는 명령어를 실행한 것으로 쿼타 편집모드로 들어갑니다.  

 

  현재 쿼타가 설정되어있지 않은 사용자라면 새롭게 설정을 할 수 있으며 이미 쿼타가 설정되어 있는 사용자라면 현재 설정내용을 보여줍니다.  

 

 

여기서 쿼타를 설정하거나 편집하려면 vi모드에서 사용하는 것과 동일한 방법으로 입력을 하시면 됩니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659747_4607.png
 

 

 

쿼타의 설정 또는 편집이 모두 끝나면 vi에서 편집종료하고 쉘로 빠져나갈 때 사용하는 것과 동일하게“:wq!”와 같이 사용하시면 됩니다.  

 

  즉 해당 사용자에 대한 쿼타의 설정 및 편집을 마치고 저장한 후에 쿼타편집모드에서 빠져나가는 것입니다.  

 

 

설정에 있어서 중요한 부분은 soft hard 부분입니다.  

 

 soft limt hard limit에 대한 의미는 설명을 하였으므로 의미설명은 생략하고 설정하는 단위에 대해서 말씀드리겠습니다.  

 

   위의 예에서는 bible사용자에게 soft제한 51200, 그리고 hard제한 61440을 하였습니다.  

 

 

여기서 51200이란 50MB를 의미합니다.  

 

 즉 여기서 설정하는 단위는 kilobyte단위라는 것에 유념하시기 바랍니다.  

 

  , 1024KB 1MB이므로 1024KB*50이라고 하시면 50MB가 됩니다.  

 

 , 용량제한 범위를 50MB로 하고 절대 넘을 수 없는 용량제한을 60MB(1024kilobyte*60)를 위하여 hard limit값을 61440으로 설정한 것입니다.  

 

 

참고로 hard limit을 넘기게 되면 새롭게 저장되는 파일의 용량들이 차례대로 0로 변하게 되므로 사용자들의 주의를 요하게 됩니다.  

 

 

이와 같이 설정하셨다면 이제 쿼타를 적용할 파일시스템에서 다음과 같은 파일을 만들어 주시면 됩니다.  

 

 /home 파티션을 예로 들었으므로 /home 파티션의 디렉토리 /home으로 가서 aquota.user 이란 파일을 만들어주면 됩니다.  

 

 그리고 아래의 예에서 chmod로 파일 (aquota.user)의 퍼미션을 640으로 준 것은 root외에 누구도 이 파일에 대한 수정을 할 수 없도록 하기위한 것입니다.  

 

 
cb7659c654fd99a396bca435184bb9c9_1649659763_4352.png
 

 

 

 

특정 그룹에 대한 쿼타설정을 위해 설정해야 할 내용들

 

 

특정그룹에 대한 쿼타설정을 위해서는 먼저 몇가지 설정이 되어있어야만 합니다.  

 

 

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

 

 cb7659c654fd99a396bca435184bb9c9_1649659777_0524.png 

 

 

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

 

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

 

 

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

 

 

그리고 그룹에 대한 쿼타설정을 위해서는 다음과 같이 그룹쿼타설정을 저장할 파일을 생성해 주어야 합니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659790_1465.png
 

 


/home
파일시스템내에서 개별 그룹에 대한 설정내용을 저장하기 위한 파일(aquota.group)을 생성한 것입니다.  

 

  위와 같이 반드시 /home디렉토리내에 aquota.group이라는 파일을 생성하고 퍼미션은 root만 읽고, 변경가능하도록 640으로 설정을 해야합니다.  

 

 

이상과 같은 설정이 되어 있다면 개별 그룹에 대한 쿼타설정이 가능합니다.  

 

 
 

특정그룹에게 디스크 사용량 제한을 위한 쿼타(quota)설정 및 편집하기

 

 

앞의 예에서는 특정 계정사용자에 대한 쿼타(quota) 설정예를 보았습니다.  

 

  이번에는 특정그룹에 대한 디스크사용량 제한을 위한 쿼타(quota) 설정 및 편집에 대한 예에 대하여 알아보도록 하겠습니다.  

 

  그리고 특정 그룹에 대한 쿼타를 설정하려면 앞에서 보았듯이 /etc/fstab파일에 해당 파일시스템에 grpquota속성이 들어 있어야하며 그룹쿼타파일 (guota.group)도 생성이 되어 있어야합니다.  

 

 

그리고 특정 그룹에 대한 쿼타설정을 하려면 edquota명령어에 -g옵션을 사용하시면 됩니다.  

 

 , 특정 그룹에 대한 쿼타를 설정하려면 “edquota -g 그룹명과 같이 사용하시면 됩니다.  

 

 아래의 예는 bible이라는 그룹에 대한 쿼타를 설정한 예입니다.  

 

 cb7659c654fd99a396bca435184bb9c9_1649659805_9534.png 

 

 

설정하는 방법은 개별 사용자의 쿼타설정하는 방법과 동일하므로 설명은 생략합니다.  

 

 

 

 

현재 쿼타가 가동중인 파일시스템들을 점검하고 쿼타를 체크하는 quotacheck

 

시스템 쿼타(quota)관련 명령어의 하나로서 시스템의 디스크 사용량제한을 위한 파일시스템을 스캔(scan)하고 쿼타파일(quota files)을 체크하고 재적용하는 명령어입니다.  

 

 

 

현재 시스템에서 가동중인 쿼타에 대해 점검하는 명령어가 quotacheck입니다.  

 

  쿼타를 점검하기 위해서는 쿼타가 설정되어 있는 파일시스템 점검을 먼저 해야합니다.  

 

  quotacheck라는 명령어는 현재 쿼타가 적용중인 파일시스템을 점검하고 그 파일시스템내의 쿼타를 체크하여 보고하는 명령어입니다.  

 

  아래의 예는 현재 필자가 사용하고 있는 리눅스 시스템에서 쿼타를 점검하는 예입니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659821_3256.png
 

 

 

점검한 결과 /home에 마운트된 /dev/hda2파일시스템을 점검(scan)한 후에  20702개의 파일과 1762개의 디렉토리가 존재하고 있음을 알려주고 있습니다.  

 

 

 

 

쿼타 가동(quotaon)과 중지(quotaoff)하기

 

이번에는 쿼타를 가동하고 중지하기 위한 쿼타관련 명령어들에 대한 설명입니다.  

 

 리눅스 시스템에서 쿼타를 사용하기 위해서는 quotaon명령어를 이용하여 쿼타(quota)를 가동해야만 합니다.  

 

  그리고 quotaoff는 시스템 쿼타(quota)관련 명령어의 하나로서 시스템에서 가동되고 있는 쿼타(quota)를 중지하는 명령어입니다.  

 

 , 현재 시스템에서 가동중인 쿼타(quota)를 중지하려면 quotaoff라는 명령어를 사용합니다.  

 

 

  

아래의 예는 현재 필자가 관리하고 있는 리눅스시스템의 쿼타(quota)를 적용하기 위하여 quotaon명령어를 이용하여 쿼타(quota)를 가동한 것입니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659835_0512.png
 

 

위의 예에서 quotaon으로 쿼타(quota)를 가동할 때 사용한 몇가지 옵션이 있습니다.  

 

  quotaon-a, -v -u, -g옵션들에 대한 의미는 다음과 같습니다.  

 

 

 

-a : 쿼타(quota)옵션이 들어가 있는 파일시스템은 자동으로 가동합니다.  

 

 

-v : 쿼타(quota)가 가동된 각 파일시스템들의 메시지를 출력합니다.  

 

 

-u : 기본으로 적용되는 것으로 각 개별 사용자들의 쿼타(quota) 설정을 읽어 적용합니다.  

 

 

-g : 각 그룹별 쿼타(quota)설정을 읽어 적용합니다.  

 

 

 

위에서 말씀드렸듯이 quotaon은 시스템 쿼타(quota)관련 명령어의 하나로서 시스템에서 쿼타(quota)를 가동하는 명령어입니다.  

 

 이 명령어와 반대로 현재 가동중인 쿼타(quota)를 중지하기 위한 명령어는 quotaoff이므로 함께 익혀두시기 바랍니다.  

 

  또한 quotaon명령어 또한 커널(kernel)에서 쿼타(quota)를 지원해야하며 해당 파일시스템에서 쿼타(quota)관련 설정이 되어있어야만 정상적인 실행이 됩니다.  

 

 

다음은 quotaoff를 실행하여 가동중인 쿼타를 중지한 명령입니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659850_5662.png
 

 

위와 같이 가동중이던 쿼타(quota)를 중지하게 되면 디스크사용량을 제한할 수 없게 됩니다.  

 

 

 

참고로 시스템을 종료시키는 명령어인 halt에는 다음과 같은 내용이 있습니다.  

 

  아래의 내용은 /etc/rc.d/init.d/halt파일, 즉 시스템종료 스크립트인 halt스크립트 내용을 일부분입니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659863_6477.png
 

 

 

, quotaoff라는 명령어로 쿼타(quota)의 가동을 중지하는 내용으로서 시스템이 종료할 때에 현재 가동중인 쿼타를 중지하기 위한 설정입니다.  

 

 

 

 

현재 시스템의 파일시스템들에 대한 쿼타가동여부 및 상태 확인하기

 

시스템에는 한 개이상의 파일시스템들이 있습니다.  

 

  이들 파일시스템들에 대한 쿼타(quota) 가동여부와 상태를 확인할 수 있습니다.  

 

 

 

, 현재 시스템내에 존재하는 파일시스템을 대상으로 쿼타(quota)적용여부와 상태를 확인하려면 quotaon명령어에 -a옵션과 -p옵션을 함께 사용하시면 됩니다.  

 

 

 

아래의 예는 현재 필자가 사용하고 있는 리눅스 시스템의 모든 파일시스템을 대상으로 쿼타(quota)적용여부와 상태를 확인한 것입니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659877_6651.png
 

 

 

시스템 부팅과정에서 quota체크및 quota구동시키기

 

시스템 설치 후에 쿼타(quota)를 직접 설정하였다면 시스템부팅 후에 반드시 쿼타를 가동시켜 주어야 합니다.  

 

  시스템을 부팅한 후에 매번 쿼타(quota)를 직접 가동하기란 꽤 귀찮은 작업입니다.  

 

  따라서 시스템 부팅 후에 쿼타(quota)를 자동으로 체크하고 가동하는 설정을 해두시면 매우 편리할 것입니다.  

 

 

/etc/rc.d/rc.local파일은 시스템이 부팅된 후에 이 파일에 설정된 내용들은 자동으로 실행이 되는 파일입니다.  

 

  즉 시스템 부팅 후에 실행해야 할 내용들을 넣어두면 자동으로 실행이 되는 것입니다.  

 

  따라서 이 파일내에 아래와 같은 설정을 해두시면 부팅 후에 직접 쿼타를 가동하지 않아도 자동실행이 됩니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659893_0745.png
 

 

, 위의 설정을 보시면 시스템이 부팅된 후에 quotacheck로 현재의 쿼타 설정내용을 모두 확인한 후에 quotaon으로 쿼타를 가동하는 것입니다.  

 

 

 

커널(kernel)에서 쿼타(quota)를 지원하지 않을 경우의 메시지

 

 

만약 quotaon으로 쿼타를 가동하였으나 커널(kernel)에서 쿼타를 지원하지 않는다면 다음과 같은 메시지가 나올 것입니다.  

 

 

 

아래의 예는 커널(kernel)에서 쿼타를 지원하지 않을 경우에 quotaon으로 쿼타를 가동한 예입니다.  

 

  “Quota format not supported in kernel”이란 메시지에서 알 수 있듯이 커널에서 쿼타를 지원하지 않기 때문에 quotaon으로 쿼타를 가동할 수 없다는 메시지입니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659908_041.png
 

 

현재 커널에서 쿼타를 지원하도록 설정하는 방법은 앞부분의 설명을 참조하시기 바랍니다.  

 

 

 

쿼타가 설정된 파티션의 쿼타설정 및 용량제한 내역 확인하기



repquota는 시스템 쿼타(quota)관련 명령어의 하나로서 파일시스템의 쿼타(quota)를 종합적으로 보고해주는 명령어입니다.  

 

  , 전체사용자들의 디스크사용량을 한번에 확인하고자 할 때에 사용하는 매우 편리한 명령어입니다.  

 

  주의하실 것은 repquota명령어는 /etc/fstab파일에 usrquota grpquota옵션이 설정되어 쿼타가 정상적으로 적용된 파일시스템만을 대상으로 quota보고서를 출력해 준다는 것을 아셔야합니다.  

 

 

말씀드린바와 같이 repquota는 현재 시스템 내에서 쿼타가 설정되어 있는 파일시스템을 대상으로 그 파일시스템 내에 설정된 쿼타의 전체내용을 출력해 줍니다.  

 

  , 특정 파일시스템 내의 각 사용자별 디스크사용량에 대한 내용을 확인하려면 “repquota -av”라는 명령어를 사용하시면 됩니다.  

 

 

아래의 예는 현재 필자가 사용하고 있는 리눅스 시스템에서 전체사용자의 디스크사용량을 확인하기 위하여 “repquota -av”라는 명령어를 사용한 결과입니다.  

 

 

cb7659c654fd99a396bca435184bb9c9_1649659931_3428.png
 

 

 

위의 결과를 보시면 개별 사용자들의 디스크사용량, 디스크제한설정(soft limit, hard limit, grace period)등의 내용을 모두 확인할 수 있습니다.  

 

 

 

다음은 repquota에서 사용하는 옵션에 대한 설명입니다.  

 

 

 

   -a : 보고할 파일시스템 대상을 지정하는 것으로 /etc/fstab에서 usrquota, grpquota가 설정된 모든 파일시스템을 대상으로 한다는 옵션입니다.  

 

 

   -v : 사용량이 없는 사용자들의 보고도 포함하게 됩니다.  

 

 

   -g : 그룹쿼타에 대한 보고를 합니다.  

 

 

   -u : 사용자의 쿼타에 대한 보고를 합니다.  

 

 (기본값)

이상과 같이 repquota를 이용하시면 서버관리자들이 주기적으로 점검해야하는 시스템쿼타(디스크 용량제한설정) 보고서를 손쉽게 작성할 수 있습니다.  

 

 


관련자료

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

공지사항


뉴스광장


  • 현재 회원수 :  60,033 명
  • 현재 강좌수 :  35,782 개
  • 현재 접속자 :  163 명