Quota (쿼터)
리눅스에서 쿼터(Quota)는 사용자 또는 그룹이 사용할 수 있는 디스크 공간 및 파일 개수를 제한하는 시스템 관리 도구
디스크 자원을 효율적으로 관리하고, 특정 사용자가 시스템 디스크 자원을 과도하게 사용하는 것을 방지
파일 시스템을 “/” (root) 로 지정하는 것보다는, 별도의 파일시스템을 지정해서 해당 부분을 쓰도록 하는 것이 좋음
“/” (root)을 동시에 여러 사용자가 사용하게되면, 우분투 서버를 운영하기 위해서
디스크를 읽고 쓰는 작업과 일반 사용자가 디스크를 읽고 쓰는 작업이 동시에 발생하므로 전반적으로 시스템의 성능이 저하됨
Quota 기능
- 디스크 용량 제한
- 사용자별 또는 그룹별 디스크 사용량 제한 설정
- 파일 개수 제한
- 사용자가 생성할 수 있는 파일(인오드)의 최대 개수 제한
- 경고 및 강제 조치
- 사용량이 한도를 초과하면 경고 메시지 출력
- 설정에 따라 일정 시간을 초과하면 파일 생성/쓰기 제한
Quota 개념
- 하드 한도 (Hard Limit)
- 사용자가 절대 초과할 수 없는 디스크 용량이나 파일 개수 한도
- 소프트 한도 (Soft Limit)
- 사용자가 초과할 수 있지만, 제한된 기간(그레이스 기간) 동안만 허용되는 한도
- 그레이스 기간 (Grace Period)
- 소프트 한도를 초과했을 때, 허용되는 유예 기간
- 유예 기간 내에 사용량을 줄이지 않으면 하드 한도가 적용됨
Quota 실습

# 파티션 생성 fdisk /dev/sdb # 파일시스템 생성 및 포맷 mkfs.ext4 /dev/sdb1


# 사용자의 홈 폴더를 이곳으로 설정 # 폴더 생성 후 마운트 mkdir /userHome # 재부팅 후 자동 마운트 등록 gedit /etc/fstab /dev/sdb1 /userhome ext4 defaults 0 0 # daemon reload systemctl daemon-reload

# sdb1을 quota로 사용 준비 tune2fs -O quota /dev/sdb1


# 사용자 추가 karina, winter adduser --home /userHome/karina karina adduser --home /userHome/winter winter


# quota 패키지 설치 sudo apt update sudo apt install quota

# quota 시작 quotaon -va

# karina / soft 한도 40MB / Hard 한도 50MB edquota -u karina

# karina에서 확인 su - karina # 테스트용 더미 파일 생성 fallocate -l 10M /userHome/karina/dummyfile.txt

# quota 명령어로 확인 가능 quota

# root su root # quota 확인 repquota /userHome/

# karina의 기준은 winter 에게 적용 edquota -p karina winter # quota 확인 repquota /userHome/
