쿼터 (Quota) 사용자별 공간 할당
-파일 시스템 마다 사용자나 그룹이 생성할 수있는 파일의 용량 및 개수를 제한 하는것
쿼터 제한 영역
1. user hard limit
-사용자가 사용할 수 있는 최대 공간
2. user soft limit
-사용자가 soft limit 영역에 도달 할때 까지 데이터를 자유롭게 저장할수 있다.
3. group hard limit
4. group soft limit
5. grace(유예기간)
- 소프트 제한 영역을 넘어서면 사용자나 그룹은 유예기간에 접어들게 된다.
- 설정한 유예기간 시간동안 파일을 삭제하여 용량을 확보하지 않는경우에는 hardlimit로 변경된다.
quotacheck : quota설정파일이 존재하는지 설정은 이상없는지 등의 quota설정 체크
edquota : 디스크사용량제한(quota) 설정하기
quota : 현재 설정된 quota내용확인하기
quotaon : 설정된 quota 가동하기
quotaoff : 가동중인 quota 중지하기
repquota : 현재 사용중인 quota설정 및 용량제한내역 보기
------------------------------------------------------------------------------------------
quota [-u] [옵션] [사용자]
quota [-g] [옵션] [그룹]
- 사용자나 그룹의 제한량을 표시한다
- root만 -u 옵션을 통해 다른 사용자의 할당량을 확인 할 수 있다.
옵션 -q : 제한량의 설정값을 초과한 경우에만 간단한 메세지 출력
-v : 자세한 모드로 저장 공간이 할당되지 않은 경우에도 제한량의 정보를 보여준다.
ex) quota -uv [사용자] //해당 사용자의 모든 제한량을 점검
------------------------------------------------------------------------------------------
quotaon - 하나 이상의 파일시스템에 대해 설정된 제한량을 적용
quotaon [옵션] [파일시스템]
옵션
-a : /etc/fstab에 등록되고 읽기와 쓰기 쿼터 사용으로 표시된
모든 파일 시스템에대해 쿼터를 적용한다.
-g : 그룹 쿼터를 적용한다. -a 옵션을 사용할 경우 그룹 쿼터를
동시에 적용하므로 해당 옵션은 불필요하다.
-u : 기본 옵션으로, 사용자에게 쿼터를 적용한다.
-v : 상세하게 출력
ex) quotaon -av #/etc/fstab에 정의된 것에 쿼터를 모두 적용
quotaon -gv /home #파일시스템 /home 사용자에 쿼터 적용
------------------------------------------------------------------------------------------
quotaoff - 하나 이상의 파일시스템에 적용된 쿼터 사용을 중지
quotaoff [옵션] [파일시스템]
옵션
-a : /etc/fstab에 정의된 모든 파일시스템 대한 쿼터 적용 중지 한다.
-g : 그룹에 적용된 쿼터 사용을 중지
-a : 사용자 쿼터 적용을 중지
-v : 쿼터 적용이 중지되는 각 파일시스템에 대해 자세히 표시
ex) quotaoff -av #모든 쿼터 적용을 중지
------------------------------------------------------------------------------------------
quotacheck [옵션] [파일시스템]
- 파일시스템을 점검하고 쿼터 설정에 대한 데이터베이스를 컴파일
cron을 이용해서 주단위로 'quotacheck -a' 옵션 실행을 권장함
옵션 -a : /etc/fstab에 정의된 모든 쿼터 파일시스템을점검
usrqouta와 grpqouta 적용 시 모두 점검 가능
-g : 그룹에 대한 쿼터 정보만 컴파일한다.
-u : 기본값, 사용자에 쿼터 정보만 컴파일 한다.
-v : 실행결과를 자세하게 표시
-n :복제 된 구조체의 첫 번째 사본을 사용합니다.
-m: 파일 시스템을 읽기 전용으로 다시 마운트하지 않는다.
------------------------------------------------------------------------------------------
edquota - 사용자와 그룹 쿼터 설정을 수정한다.
옵션
-g : 그룹쿼터 수정 (-g 사용 시 -u 옵션도 따라와도 모두 그룹명으로 인식한다)
-t : 유예기간을 변경한다.
-u : 사용자 쿼터설정을 변경 (-g와 사용시 무시된다.)
ex) edquota -u [사용자] - 해당 사용자의 대한 쿼터 설정 변경
edquota -tu - 모든 파일 시스템의 사용자에대한 유예기간을 변경한다
------------------------------------------------------------------------------------------
repquota - 쿼터 운영 상황을 출력
-a : 모든 쿼터 파일시스템 정보 출력
-g : 그룹 설정을 요약
-u : 사용자 쿼터 설정 요약
-v : 요약정보를 자세하게 표시하며 출력결과에 머리말을 추가
제한여부
quota 제한을 받는지 여부를 나타내며 ' - ' 이면 제한에 걸리지 않았음을 의미하며, ' + ' 이면 제한에 걸려 있음을 의미함
첫 번째는 Block제한, 두 번째 파일제한을 뜻한다.
------------------------------------------------------------------------------------------
setquota [옵션] [이름] [Block soft limit] [Block hard limit]
[inode soft limit] [inode hard limit] [파티션 명]
-u : 사용자
-g : 그룹
-a : 해당 시스템의 모든 설정
--------------------------------------------------------------------------------------------------
실습 쿼터 설정
1.스냅샷 초기화
disk 2개(1GB)
reboot
2.디스크 추가 및 파티션 생성
fdisk -l 확인
fdisk [확인한 장치명]
n
p
1
enter
enter
w
3. 파일 시스템 생성
mkfs -t ext3 /dev/sdb1
mkfs -t ext3 /dev/sdc1
4. 마운트 포인트 생성, 마운트
mkdir /quota_user //사용자 쿼터
mkdir /quota_group //그룹 쿼터
mount /dev/sdb1 /quota_user
mount /dev/sdc1 /quota_group
mount -o remount /quota_group/ //강제
mount 확인
5. 마운트 적용 및 fstab등록
#df -h
/dev/sdb1 1004M 18M 936M 2% /quota_user_dir
/dev/sdc1 1004M 18M 936M 2% /quota_group_dir
UUID=e55ca0f2-e565-4c9c-94c2-370a4df76cd9 /quota_user_dir ext3 defaults,usrquota 0 0
UUID=04bd587d-3305-4ab5-951a-ffe5bbd4939a /quota_group_dir ext3 defaults,grpquota 0 0
사용자 쿼터 옵션 : usrquota
그룹 쿼터 옵션 : grpquota
mount 쿼터적용 확인
6.쿼터 사용자 계정 및 그룹
groupadd q-group
useradd -g q-group q-user1
useradd -g q-group q-user2
q-group그룹을 가진 q-user1 q-user2 계정 생성 확인
7.쿼터 적용을 위한 selinux 비활성
setenforce 0 //selinux 비활성(일시적)
vi /etc/sysconfig/selinux
7번째 줄 변경 SELINUX=enforcing ---> SELINUX=disabled //selinux 비활성 (영구적)
8.쿼터 지원 여부 확인
rpm -qa | grep quota //쿼터 설치여부 확인
yum -y install quota
rpm -qa | grep quota
9.쿼터 설정 파일 생성
cd /quota_user //쿼터를 적용시킬 파티션의 최상위 디렉토리로 이동
quotaoff /dev/sdb1 //쿼터 설정을 위해 설정 off
quotacheck -u /dev/sdb1
- 쿼터 설정 파일 확인하여 없으면 생성, 있으면 확인 명령어
-u 사용자 쿼터 확인
-g 그룹 쿼터 확인
ls //aquota,user 생성 확인
quotaon /dev/sdb1 //쿼터 시작
edquota -u [계정명]
edquota -u q-user1 //텍스트 편집기를 이용하여 q-user1 계정의 사용자 쿼터 설정
blocks 용량
inodes 파일개수
edquota -u q-user1 텍스트 편집기를 이용하여 유예기간 설정
repquota -u /dev/sdb1
chown q-user1:root /quota_user
q-user1 777권한
su - q-user1
cd /quota_user_dir
cp /boot/vm [tab] ./file1 //4.1M
ls
file1생성 확인
soft hard
20M 40M 이니까 소프트 초과
cp file1 file2
cp file1 file3
cp file1 file4
cp file1 file5 //20m 초과 경고(유예기간)
...
2분 경과후 (유예기간)
cp file1 file7 //hard limit까지 디스크 할달량 초과
rm -f file*
touch file{1..10}
softlimit 11개째 오류
유예기간 2분끝나면 12개 파일 못씀
repquota -u /dev/sdb1 //해당 파티션에 설정된 사용자 쿼터 현황 확인
-+ ?????
-quota 제한을 받는지 여부를 나타내며 ' - ' 이면 제한에 걸리지 않았음을 의미하며,
' + ' 이면 제한에 걸려 있음을 의미한다. 첫 번째는 Block제한, 두 번째 파일제한을 뜻한
그룹 쿼터 적용
쿼터 설정 파일 생성
cd /quota_group/ //그룹 쿼터를 적용시킬 파티션의 최상위로 이동
quotacheck -g /dev/sdc1
aquota.group //그룹 쿼터 DB 파일 생성 확인
쿼터 적용 방법
(1) #edquota //텍스트 편집기 이용
(2) #setquota //명령어를 이용한 설정변경
#setquota -g [그룹명] [인자값] [장치명]
인자값
[block soft limint] [block hard limit] [file soft limit] [file hard limit]
ex) setquota -g q-group 10M 20M 10 20 /dev/sdc1
유예기간 적용 방법
(1) edquota -t //텍스트 편집기 이용
(2) setquota -t //명령어를 이용하여 유예기간 설정
ex) setquota -tg [block grace sec] [file grace sec] [장치명]
setquota -tg 120 120 /dev/sdc1 //그룹에 대한 타입tg
확인 : repquota -g /dev/sdc1
chown root:q-group /quota_group
chmod 770 /quota_group
edquota -u q-user1
edquota -u q-user2
용량:10M/20M
파일:10/20
1번 세션 2번 세션
q-user1 q-user2
cd /quota_group cd /quota_group
파일19개 1개
파일19M 1M //초과 오류 워닝
quotaon /dev/sdc1
같은 룹(q-group)에 속한 사용자 (q-user1, q-user2)들은 쿼터 제한 설정을
공유 하므로 q-user1이 자원을 사용하면 q-user2 사용할수 없다.
'Server > Linux' 카테고리의 다른 글
xshell/ 부팅프로세스 (0) | 2017.04.19 |
---|---|
xshell/ LVM (0) | 2017.04.18 |
xshell/ 파일시스템 RAID (0) | 2017.04.16 |
xshell/ 파일시스템 데몬 파티션 (0) | 2017.04.15 |
xshell/ 프로세스 명령어 (0) | 2017.04.13 |