본문 바로가기
Develop/Server

[Linux] 쿼터를 활용한 사용자 공간 할당하기(1)

by 코딩의성지 2020. 10. 23.

리눅스는 보통 구축해놓으면 서버로 사용하기에 한명의 사용자가 아닌 여러명의 사용자가 사용한다. 그래서 모두가 root 를 바라보고 파일시스템을 사용하면 하드디스크가 꽉차버려서 시스템 전체가 동작하지 않을 수 있다. 또한 여러명이 동시에 하드디스크를 읽고 쓴다면 이는 성능저하를 야기할 수 있다. 이런 상황을 대비해서 사용자별로 사용할 수 있는 용량을 제한해야 한다. 

 

쿼터

 

쿼터는 파일 시스템마다 사용자나 그룹이 생성할 수 있는 파일의 용량과 갯수를 제한하는 기술이다. 각 사용자마다 별도의 파일 시스템을 지정해주고 지정한 부분만 사용하게 하면 파일시스템에서 발생하는 문제를 예방할 수 있다.

 

개인별 쿼터 설정은

1) /etc/fstab 수정 (/etc/fstab 옵션 부분에 쿼터 관련 부분을 추가)

2) 재부팅 or 리마운팅

3) 쿼터 db 생성 ( quotacheck, guotaon, guotaoff 명령어 사용)

4) 개인별 쿼터 설정 (edquota 명령어 사용)

 

의 프로세스로 진행한다.

 

먼저 새로운 디스크를 하나 장착하자. 크기는 1GB 짜리로 SCSI 형태로 장착하면 자동으로 SCSI 0:1이 장착될것이다.

 

이제 부팅하고 root 사용자로 로그인한 후에 터미널을 열고 /dev/sdb의 파티션을 생성하고 포맷한 뒤에 /userDev 디렉토리에 마운트하자. 아래 내용을 터미널에 입력하면된다.

# fdisk /dev/sdb
Command : n
Select : p
Partition number (1-4) : 1
First cylinder : (Enter)
Last cylinder : (Enter)
Command : p
Command : w

 

# mkfs.ext4 /dev/sdb1

 

# mkdir /userDev
# mount /dev/sdb1 /userDev

 

자 다음은 재부팅해도 인식이 되도록 /etc/fstab 가장 아래쪽에 다음과 같은 내용을 추가하자.

 

다음은 쿼터를 이용해 사용자 kang을 한번 만들어보자.

아래 명령어를 쳐서 사용자 이름과 비밀번호를 만들어주자.

useradd -d /userDev/kang kang
passwd kang

 

위에서 사용한 명령어중 -d 옵션은 사용자의 홈 디렉터리를 임의로 저장해주는 옵션이다. 잘기억하셨으면 한다.

 

다음은 /etc/fstab 파일을 다시 편집해보자. 글자가 틀리지 않게 아래처럼 defaults 옆에 아래의 내용을 잘 추가해보자.

,usrjquota=aquota.user,jqfmt=vfsv0

 

자 다음은 재부팅하듯 아래 멸령어를 입력해 다시 마운트를 해보자.

mount --options remount /userDev

 

그러고나서 mount 명령어를 입력해보면 이제 쿼터용으로 마운트된 /dev/sdb1 디렉토리를 확인할 수 있다.

 

이제 쿼터를 사용하기 위해선 쿼터 db를 생성 해줘야하는데 ... 여기서부터는 내용이 너무 길어질듯 하여 다음 포스팅에 하도록 하겠다 ㅎㅎ

반응형

댓글