본문 바로가기

Linux

10. CentOS7 : Quota

1. Quota

사용자 및 그룹별로 디스크 사용량을 제한

 

1.1. 설치

  • yum install -y quota

1.2. 관련 명령어

  • quotacheck [-F 쿼터포맷[option] [그 외옵션] [마운트포인트]
    • 처음 quota를 설정 하거나, 변경된 설정 업데이트
옵션
-u (user) 사용자 파일 검사
-g (group) 그룹 파일 검사
-v (verbose) 추가 정보 출력
-m (no-remount) remount 하지 않음
-F (format=formatname) 특정 포맷의 쿼터 파일 검사
-a (all) 모든 파일 시스템 검사
포맷 종류
vfsold original 쿼터 포맷
vfsv0 표준 쿼터 포맷
vfsv1 64bit 제한이있는 쿼터 포맷
rpc RPC 호출 사용
xfs XFS 쿼터 포맷

 

1.3. Quota 설정 실습

※ selinux 모드 확인

  • getenforce 명령어로 selinux 모드가 Disabled 또는 Permissive인지 확인한다.

 

※ quota 설치 후 확인

  • rpm(Redhat Package Manager) : rpm 패키지 관리 도구

 

※ 파티션 생성 후 /quo 디렉토리에 마운트하기

 

08. CentOS7 : Disk관리/Partitioning/LVM

1. Storage 종류 크게 연결방식 3가지로 나뉨 1.1 DAS(Direct Attach Storage) IDE, SCSI, SATA 원격지 설치 불가능, 물리적인 Machine 내장 혹은 최대 1M 정도를 넘지 않는 곳에 설치 장점 안정적..

mh-itstudy.tistory.com

 

 

 

※ /etc/fstab (File System Table)파일 quota 설정 추가

  1. 장치명
  2. 마운트 포인트
  3. 파일시스템 종류
  4. 마운트 옵션
    • default : rw, nouser, auto, exec, suid속성을 모두 설정. 일반적인 파일 시스템에서 사용
    • usrjquota=aquota.user,jqfmt=vfsv0 : ext4 파일 시스템에서 사용자 quota를 설정하기 위한 옵션
    • auto : 부팅시 자동마운트
    • noauto : 부팅시 자동마운트를 하지 않음
    • exec : 실행파일이 실행되는 것을 허용
    • noexec : 실행파일이 실행되는 것을 불허용
    • suid : SetUID, SetGID 사용을 허용
    • nosuid : SetUID, SetGID 사용을 불허용
    • ro : 읽기 전용의 파일시스템으로 설정
    • rw : 읽시/쓰기 전용의 파일시스템으로 설정
    • user : 일반 사용자 마운트 가능
    • nouser : 일반 사용자 마운트불가능, root만 가능
    • quota : Quota설정이 가능
    • noquota : Quota설정이 불가능
    • userquota : 개별 계정 사용자의 Quota 설정이 가능하도록 함
    • grpquota : 그룹별 Quota설정이 가능하도록 함
  5. 디스크 복제 여부 (0=사용안함, 1=사용)
  6. 디스크 검사 순서 지정 (0=디스크검사 사용 안함, 1=첫 번째로 검사, 2=두 번쨰로 검사)

  • 명령어 입력 후 위와같은 메세지가 출력되면 /etc/fstab 파일에 오타가 발생한 것이니 확인해보셔요

 

※ /quo 리마운트 후 확인

    •  

 

※ /quo 디렉토리 이동 후 quotacheck 명령어 사용하여 Quota(Database) 파일 생성 및 체크

  • 에러 메세지 같지만 정상적인 것. 그냥 진행하시면 됩니다.

 

※ 사용자 a에 대해서  quota 설정

  • 블록단위 soft 20M, hard 30M 설정

soft 할당

  • 설정한 용량을 넘을 경우 유예기간동안 사용할 수 있음 (soft할당~hard할당 추가로 사용 가능)
  • 유예기간 종료될 경우 기존에 사용한 용량은 삭제되지 않지만, 사용하지 않은 용량은 삭제됨

hard 할당

  • 최대 사용할 수 있는 용량(유예기간과 상관 없음)

 

※ 유예기간 설정

 

※ Quota on, 확인

 

※ others에 대한 /quo 디렉토리 쓰기 권한이 없으므로 a 사용자에게 권한 부여

 

09. CentOS7 - ACL(Access Control List)

1. ACL(Access Control List) 접근제어목록(Access Control List)을 설정한 것으로, 파일이나 디렉토리에 특정 사용자나 그룹에게만 일정 권한을 부여하는 것이다. 2. 명령어 2.1. setfacl 파일/디렉토리의 추가적

mh-itstudy.tistory.com

 

※ 사용자 a의 홈 디렉토리 아래에 3MB 테스트용 파일 생성

 

※ 사용자 a로 로그인 후 /quo에 생성해놓은 파일 복사하여 테스트

  • a계정으로 파일 6개를 /quo디렉토리에 복사한 후 quota를 확인해보면 3MB*6=18MB 사용중인 것을 확인할 수 있다.

 

※ /quo에 파일 추가로 복사 (soft 할당 초과 테스트)

  • 3MB 파일을 하나 더 추가(총 21MB)하여 soft 할당량인 20MB 를 초과했기 때문에 경고 메세지가 출력된다. (But, 파일은 정상적으로 생성)
  • quota를 확인해보면 +기호로 바뀌었으며, 유예기간이 설정된 것을 확인할 수 있다.

 

※ /quo에 파일 추가로 복사 (hard 할당 초과 테스트)

  • 3MB 파일 4개를 더 추가(총 33MB)하면, hard 할당인 30MB를 넘었기 때문에마지막 파일 복사에서 오류가 발생한다.
  • /quo 디렉토리를 확인해 보면 a11.txt 파일의 크기가 0으로 생성된 것을 확인할 수 있다.

 

※ 유예기간 테스트를 위해 파일 삭제

 

※ 날짜 변경 후 파일 다시 추가 (soft 할당 유예기간 테스트)

  • 유예기간 이후로 날짜 변경
  • a8.txt 파일을 추가하면 오류 메세지 출력, 파일 크기 0
  • quota 확인해보면 사용용량은 그대로 21MB, 유예기간은 none으로 변경되어 있는 것을 확인할 수 있다.

 


1.4. Quota 설정 초기화

 

※ quota off, aquota 파일 삭제, umount

 

※ /etc/fstab 파일 설정 내용 삭제

 

※ 리마운트

 


 

1.5. Group Quota 해보기

 

※ group 생성 후 사용자 a, b 그룹 변경

 

※  파티션 및 디렉토리 생성 후 마운트

  • /deb/sdb1을 /groquo에 마운트

 

※  /etc/fstab 파일에 quota 설정 추가

 

※  리마운트 후 확인

 

※ /grpquo 디렉토리로 이동 후 quotacheck 명령어 사용하여 Quota(Database) 파일 생성 및 체크

 

※ edquota 명령어 이용하여 그룹 qgroup에 대해서 quota 사이즈 설정

 

※ edquota 명령어 -T 옵션 이용하여 그룹의 quota 유예기간 설정

  • -T (edit-times) : 사용자/그룹의 유예기간 편집

 

※ quotaon 명령어 이용하여 quota 실행

 

※ 사용자 a, b의 홈 디렉토리 아래에 7M 테스트용 파일 생성

 

※ acl로 /grpquo 디렉토리에 대해 qtest그룹의 권한 설정

 

※ putty로 a계정 로그인, 생성한 7M 파일 /grpquo 디렉토리 아래에 복사 후 quota 확인

 

※ putty로 b계정 로그인, 생성한 7M 파일 /grpquo 디렉토리 아래에 복사 후 quota 확인

 

※ 다시 a계정으로 파일 복사 후 quota 확인 (7M*3=21M, soft 할당 용량 초과)

  • 사용자 quota와 달리 soft 할당량을 초과해도 별다른 메세지가 출력되지는 않지만 유예기간은 시작된 것을 볼 수 있다.

※ 파일 두개를 추가로 복사한다. (7M*5=35M, hard 할당 용량 초과)

  • 마지막으로 복사한 a4파일이 생성되기는 하지만, hard 용량 최대치인 30M에 맞춰 2M로 파일의 크기가 줄어든 것을 확인할 수 있다.

 


ad.

※ ntp 서버에 시스템 시간 맞추기


Reference.

https://blog.daum.net/rayolla/806

 

/etc/fstab 각 필드 설명

참고: https://help.ubuntu.com/community/Fstab 출처: http://movenpick.tistory.com/34 1.FileSystem Device Name(파일시스템장치명) 파일시스템장치명은 곧 파티션들의 위치를 말합니다. 위에 fdisk -l를 처..

blog.daum.net

https://blog.naver.com/PostView.nhn?isHttpsRedirect=true&blogId=dudwo567890&logNo=130156449983 

 

Linux, 파일시스템테이블(/etc/fstab)

"/etc/fstab"파일은 리눅스에서 사용하는 파일시스템 정보를 정적으로 저장하고 있는 파일이며, 리눅스의 ...

blog.naver.com

https://neul-carpediem.tistory.com/112

 

[Linux] quota (쿼터) 설정

quota (쿼터) 사용자들에게 용량을 제한해서 제공해주는 기능을 quota라고 합니다. 여러분이 서버를 운영하고 사용자들이 FTP로 파일들을 업로드 합니다. 그런데 서버 컴퓨터에 하드 용량은 제한

neul-carpediem.tistory.com