3.5. GFS2 쿼터 관리
파일 시스템 쿼터는 사용자 또는 그룹이 사용할 수 있는 파일 시스템 공간을 제한하기 위해 사용됩니다. 사용자 또는 그룹은 쿼터가 설정될 때 까지 쿼터 제한을 갖지 않습니다. GFS2 파일 시스템이
quota=on
또는 quota=account
옵션으로 마운트될 때 공간 제한이 없을 경우에도 GFS2는 각각의 사용자 및 그룹에 의해 사용되는 공간을 추적합니다. GFS2는 트랜잭션 방식으로 쿼터 정보를 업데이트하므로 시스템 크래시 경우 재구성할 쿼터 사용량이 필요하지 않습니다.
실행 속도가 감소되지 않게 하기 위해, GFS2 노드는 주기적으로 쿼터 파일 업데이트를 동기화합니다. "fuzzy" 쿼터 계산은 사용자 또는 그룹이 설정 한계를 약간 초과하는 것을 허용합니다. 이를 최소화하려면, GFS2는 "hard" 쿼터 제한을 사용하여 동기화 주기를 동적으로 감소시킵니다.
참고
Red Hat Enterprise Linux 6.1 릴리즈에서 GFS2는 표준 Linux 쿼터 기능을 지원합니다. 이 기능을 사용하려면 quota RPM을 설치해야 합니다. 이는 GFS2에서 권장되는 쿼터 관리 방법이며 쿼터를 사용하는 모든 GFS2 배포에서 사용해야 합니다. 다음 부분에서는 이러한 기능을 사용하여 GFS2 쿼터 관리에 대해 설명합니다.
이전 Red Hat Enterprise Linux 릴리즈의 경우 GFS2는 쿼터를 관리하기 위해
gfs2_quota
명령이 필요했습니다. gfs2_quota
명령 사용에 대한 자세한 내용은 부록 A. gfs2_quota
명령을 사용하여 GFS2 쿼터 관리 에서 참조하십시오.
3.5.1. 디스크 쿼터 설정
디스크 쿼터를 구현하려면, 다음 단계를 사용합니다:
- 강제 또는 사용 계산 모드에서 쿼터를 설정합니다.
- 현재 블록 사용량 정보가 들어있는 쿼터 데이터베이스 파일을 초기화합니다.
- 쿼터 정책을 할당합니다. (사용 계산 모드에서 이러한 정책은 강제되지 않습니다.)
이러한 각 단계는 다음 부분에서 자세히 설명하고 있습니다.
3.5.1.1. 강제 또는 사용 계산 모드에서 쿼터 설정
GFS2 파일 시스템에서 기본값으로 쿼터는 비활성화되어 있습니다. 파일 시스템에 대한 쿼터를 활성화하려면,
quota=on
옵션을 지정하여 파일 시스템을 마운트합니다.
디스크 사용량을 추적하여 제한이나 경고 값을 강제하지 않고 모든 사용자 및 그룹에 대한 쿼터 사용 계산을 관리할 수 있습니다. 이를 실행하려면,
quota=account
옵션을 지정하여 파일 시스템을 마운트합니다.
3.5.1.1.1. 사용법
쿼터를 활성화하여 파일 시스템을 마운트하려면,
quota=on
옵션을 지정하여 파일 시스템을 마운트합니다.
mount -o quota=on BlockDevice MountPoint
쿼터 사용 계산 관리로 파일 시스템을 마운트하려면 쿼터 제한이 강제되어 있지 않아도
quota=account
옵션을 지정하여 파일 시스템을 마운트합니다.
mount -o quota=account BlockDevice MountPoint
쿼터를 비활성화하여 파일 시스템을 마운트하려면
quota=off
옵션을 지정하여 파일 시스템을 마운트합니다. 이는 기본값 설정입니다.
mount -o quota=off BlockDevice MountPoint
quota={on|off|account}
on
- 파일 시스템이 마운트되어 있을 경우 쿼터를 활성화로 지정합니다.off
- 파일 시스템이 마운트되어 있을 경우 쿼터를 활성화 또는 비활성화로 지정합니다.account
- 쿼터 제한이 강제되어 있지 않다라도 사용자 및 그룹 사용량 통계가 파일 시스템에 의해 관리되도록 지정합니다.BlockDevice
- GFS2 파일 시스템이 위치할 블록 장치를 지정합니다.
MountPoint
- GFS2 파일 시스템을 마운트할 디렉토리를 지정합니다.
3.5.1.1.2. 예시
예제에서
/dev/vg01/lvol0
에 있는 GFS2 파일 시스템은 쿼터를 활성화하여 /mygfs2
디렉토리에 마운트되어 있습니다.
mount -o quota=on /dev/vg01/lvol0 /mygfs2
예제에서
/dev/vg01/lvol0
에 있는 GFS2 파일 시스템은 쿼터 계산을 사용하여 /mygfs2
디렉토리에 마운트되어 있으나 강제되어 있지 않습니다.
mount -o quota=account /dev/vg01/lvol0 /mygfs2
3.5.1.2. 쿼터 데이터베이스 파일 생성
쿼터가 활성화된 각 파일 시스템이 마운트되면 시스템은 디스크 쿼터를 사용하여 작업 가능합니다. 하지만 파일 시스템 자체는 아직 쿼터를 지원할 준비가 되어 있지 않습니다. 다음 단계로
quotacheck
명령을 실행합니다.
quotacheck
명령은 쿼터가 활성화된 파일 시스템을 확인하고 파일 시스템 마다 현재 디스크 사용에 대한 표를 구축합니다. 이러한 표는 디스크 사용량의 운영 체제 복사본을 업데이트하는데 사용됩니다. 또한 파일 시스템은 디스크 쿼터 파일이 업데이트됩니다.
파일 시스템에 쿼터 파일을 생성하려면
quotacheck
명령의 -u
및 -g
옵션을 사용합니다. 사용자 및 그룹 쿼터를 초기화하려면 이러한 두 옵션을 지정해야 합니다. 예를 들어, 쿼터가 /home
파일 시스템에 대해 활성화되어 있는 경우 /home
디렉토리에 파일을 생성합니다:
quotacheck -ug /home
3.5.1.3. 사용자 마다 쿼터 할당
마지막 단계는
edquota
명령을 사용하여 디스크 쿼터를 지정합니다. 파일 시스템을 사용 계산 모드로 마운트한 경우 (quota=account
옵션을 지정), 쿼터는 강제되지 않음에 유의하십시오.
사용자에 대한 쿼터를 설정하려면 쉘 프롬프트에서 root로 다음 명령을 실행하십시오:
edquota username
쿼터를 필요로 하는 사용자에 대해 이 단계를 수행합니다. 예를 들어, 쿼터가
/home
파티션 (아래 예제에서는 /dev/VolGroup00/LogVol02
)의 /etc/fstab
에서 활성화되어 있는 경우 edquota testuser
명령을 실행하면 편집기에서 다음과 같은 시스템 기본 설정이 표시됩니다:
Disk quotas for user testuser (uid 501): Filesystem blocks soft hard inodes soft hard /dev/VolGroup00/LogVol02 440436 0 0
참고
edquota
는 EDITOR
환경 변수에 의해 정의된 텍스트 편집기를 사용합니다. 편집기를 변경하려면 ~/.bash_profile
파일에 EDITOR
환경 변수를 원하는 편집기의 전체 경로로 설정합니다.
첫 번째 열에는 쿼터가 활성화된 파일 시스템의 이름이 있습니다. 두 번째 열에서는 사용자가 현재 사용하고 있는 블록 수를 보여줍니다. 다음의 두 열은 파일 시스템에 있는 사용자의 소프트 및 하드 블록 제한을 설정하는데 사용됩니다.
소프트 블록 제한은 사용 가능한 최대 디스크 공간을 정의합니다.
하드 블록 제한은 사용자 또는 그룹이 사용할 수 있는 절대적인 최대 디스크 공간입니다. 이 제한에 도달하면 더 이상 디스크 공간을 사용할 수 없습니다.
GFS2 파일 시스템은 노드에 대한 쿼터를 유지 관리하지 않기 때문에 이 열은 GFS2 파일 시스템에는 해당하지 않아 빈 칸으로 되어 있습니다.
값이 0으로 설정되어 있는 경우, 제한이 설정되지 않은 것입니다. 텍스트 편집기에서 원하는 값으로 변경합니다. 예:
Disk quotas for user testuser (uid 501): Filesystem blocks soft hard inodes soft hard /dev/VolGroup00/LogVol02 440436 500000 550000
사용자에 대한 쿼터가 설정되어 있는지 확인하려면 다음 명령을 사용합니다:
quota testuser
3.5.1.4. 그룹 마다 쿼터 할당
쿼터는 그룹 별로 할당할 수 있습니다. 파일 시스템을 사용 계산 모드 (
account=on
옵션을 지정)로 마운트한 경우 쿼터는 강제되지 않는 점에 유의하십시오.
devel
그룹에 대해 그룹 쿼터를 설정하려면 (그룹 쿼터를 설정하기 전 그룹이 존재해야 함), 다음 명령을 사용합니다:
edquota -g devel
이 명령은 그룹의 기존 쿼터를 텍스터 편집기에 표시합니다:
Disk quotas for group devel (gid 505): Filesystem blocks soft hard inodes soft hard /dev/VolGroup00/LogVol02 440400 0 0
GFS2 파일 시스템은 노드에 대한 쿼터를 유지 관리하지 않기 때문에 이러한 열은 GFS2 파일 시스템에 적용되지 않으며 빈 칸으로 둡니다. 제한을 수정하여 파일을 저장합니다.
그룹 쿼터가 설정되었는지를 확인하려면 다음 명령을 사용합니다:
quota -g devel