1. quota
쿼터란, 파일 시스템마다 사용자나 그룹이 생성할 수 있는 파일의 용량과 개수를 제한하는 것입니다. 리눅스는 여러명의 사용자가 동시에 접속해서 사용할 수 있는데 만약 A라는 사용자가 시스템을 사용할 때, 루트(/) 파일 시스템에 큰 파일을 계속 생성해서 하드디스크가 꽉차면 시스템 전체가 가동되지 않게 됩니다. 이런상황을 대비하기 위해 각 사용자별로 사용할 수 있는 용량을 제한해야합니다.
#edquota : 쿼터를 설정하는 명령어입니다.
- u [사용자] : 사용자의 할당량을 수정
- g [그룹] : 그룹의 할당량을 수정
- p [복사대상] [적용대상] : [복사대상]에 설정된 할당량을 복사해서 [적용대상]에 적용함
- T : grace 유예기간값을 수정.
#quotacheck : 파일시스템에서 쿼터 관련 체크를 하는 명령어입니다.
- a : 모든 파일 시스템을 체크
- u : 사용자 쿼터 관련 체크
- g : 그룹 쿼터 관련 체크
- m : 재마운트 생략
- n : 첫 번째 검색된 것을 사용
- p : 처리 결과를 출력
- v : 파일 시스템의 상태를 보여줌
#repquota : 사용자별 현재 사용량을 확인할 수 있는 명령어입니다.
- a : /etc/filesystem 에 있는 모든 파일시스템에 관한 할당량을 출력
- c : 결과물을 콜론으로 분리하여 출력
- g : 그룹 할당량만 출력
- l : 긴 이름도 출력될 수 있게 설정. 디폴드는 9자에서 절단하는데 이 옵션을 사용하면 전체 사용자 이름을 볼 수 있다.
- u : 사용자 할당량만 출력
- v : 할당량 요약 앞에 해더행 출력
<실습>
사용자 b에 대해서 quota 설정 후 테스트
quo 디렉터리 생성 후 /dev/sdc1(ext4) mount
block 단위 quota 설정 soft 할당량 20, hard 할당량 30 유예기간 3일
먼저 quota에 필요한 파일을 ym 명령어를 사용하여 설치해줍니다
#yum install -y quota
sdc 파일을 파티셔닝 해줍니다.
#fdisk /dev/sdc
파일 시스템은 etx4로 설정해줍니다.
#mkfs.ext4 /dev/sdc1
mount를 진행해주고 재부팅을 해봅니다.
#mount /dev/sdc1 /quo
재부팅을 하고 mount를 확인하니 이전에 했던 mount 내용이 보이지 않는 것을 확인합니다.
이를 해결 하기 위해서 vi 편집기를 이용합니다. 다음과 같이 한 줄을 추가해주시면 됩니다.
#vi /etc/fstab
vi 편집기를 사용하기 전에 mount를 진행하였기 때문에 vi 편집기에서 나와 remount를 해줍니다.
#mount -o remount /quo
정상적으로 mount 된 것을 확인 할 수 있습니다.
/quo 디렉토리로 이동 후 quotacheck 명령어를 이용하여 quota database를 생성합니다.
#quotacheck -F vfsv0 -avum
edquota를 이용해 사용자 b의 quota를 설정해줍니다. 파일 사이즈는 soft 20M hard 20M으로 설정해줍니다.
#edquota -u b
edquota를 이용해 사용자 b의 유예기간을 설정해줍니다. 3일로 지정해줍니다.
#edquota -T -u b
quotaon 명령어를 이용해 quota를 실행시켜줍니다. 테스트를 위해 3M 용량의 b.txt 가짜 파일을 만들어줍니다
#quotaon /quo
#dd if=/dev/zero of=/home/b/b.txt bs=3M count=1
/quo 디렉토리에 대하여 일반 사용자의 쓰기 권한을 주기 위해 setfacl 명령어를 사용했습니다.
#setfacl -m u:b:rwx /quo
repquota 리포트quota를 활용하여 quota 내용을 확인해줍니다. user b에 대하여 soft hard 파일 제한이 잘 되어있는 모습입니다.
#repquota -avu
세션을 복제하여 user b로 로그인 후, 3M짜리 가짜파일 b.txt를 3개 생성했습니다. (현재 9M)
repqouta로 확인해보니 약 9M 정도 사용하고 있는 것을 확인할 수 있습니다.
한계치까지 파일을 생성해보고, 할당량이 초과된 것을 확인하였습니다.
한계치까지 생성 후 할당된 용량을 모두 사용하였고, 유예기간이 시작된 것을 확인할 수 있습니다.
'IT > Linux' 카테고리의 다른 글
리눅스_패키지, Local repository (0) | 2022.03.29 |
---|---|
리눅스_quota_group_실습 (0) | 2022.03.25 |
리눅스_디스크관리_02_LVM, PV, VG, LV (0) | 2022.03.23 |
리눅스_디스크관리_01_partition,file system, mount (0) | 2022.03.23 |
리눅스_DAS, NAS, SAN (0) | 2022.03.22 |