Information Communication Technology/LINUX

Linux SWAP(스왑)과 QUOTA(쿼터) 정리

반응형

SWAP(스왑)과 QUOTA(쿼터) 정리

▶SWAP(스왑)이란

스왑을 정확하게 알기 위해서는 컴퓨터 구조에 대해 먼저 공부를 하고 아는 것이 이해하는데 좋다.
메모리가 부족할 때 하드디스크 혹은 저장장치 공간의 일부를 가상화 하여 swap 장치로 만드는 것인데 이를 가상화 메모리라고 한다.
프로세스들을 실행시킬려고 했는데 실제 메모리가 가득 찼으면 설정한 부분만큼 가상화메모리에 스왑 영역을 만들고 swap in과 swap out을 반복하며 프로세스들을 알고리즘에 맞혀 실행시킨다.
(알고리즘은 나중에 설명하도록 하겠다.)
스왑은 저장장치까지 접근해야 하기 때문에 메모리의 접근 속도에 비하면 매우 느리다.
따라서 스와핑이 자주 일어난다면 시스템을 다시 설계하거나 메모리 용량을 더 큰 것으로 바꾸는 것이 좋다.
(swaping=paging), (swap in = page in), (swap out = page out)

▷SWAP 관련 명령어

●mkswap

스왑 공간을 생성시키는 명령어이다.

mkswap [option] [device] [set size]

○mkswap option
[-c] : (check)스왑 공간을 만들어내기 전에 bad blocks를 체크한다.
[-f] : (force) device 보다 큰 공간 사이즈에 스왑을 만든다.
[-p] : 바이트 단위로 페이지 크기르 명시한다.
[-L] : label 사용
[-U] : 개인 고유 식별자 사용

●swapon/off

스왑 활성화/ 비활성화

swapon --show=free
메모리의 장치 타입, 크기, 사용중인 크기, 우선순위 확인 가능하다.

swapon --show와 free는 서로 볼 수 있는 필드가 비슷하다.

●sar -w l

(apt install sysstat 설치해주어야 된다.) 스와핑이 1초단위로 발생하는지 안하는지 (swapin과 swapout이 발생하는지) 확인하는 명령어이다.

●sar -S 1

(apt install sysstat 설치해주어야 된다.)
스와핑의 사용을 1초단위로 통계내주는 명령어이다.
일시적인지 아님 thrashing이 되어가고 있는지를 판단할 수 있다.


▶QUOTA(쿼터)란

사용자나 그룹에게 공간, 사이즈와 크기, 갯수를 정해주어 무분별한 데이터 낭비를 줄이고자 할 때 사용한다.
/etc/fstab 필드 file system/mount point/type/option/dump/pass에서 option 부분에 사용자 쿼터 설정이면 usrquota, 그룹 쿼터 설정이면 grpquota를 입력한다.
사용하려면 apt install -y quota를 입력하면 된다.

▷QUOTA 관련 명령어

●quota

쿼터의 디스크 사용량 또는 제한시킨 것을 출력시켜주는 명령어이다.

quota [option] [user/group]

○quota option
[-u], [--user] : user 쿼터 디스크를 확인한다.
[-g], [--group] : group 쿼터 디스크를 확인한다.
추가 옵션들이 많으니 man quota로 확인하도록 한다.

●repquota->출처:https://linux.die.net/man/8/repquota

quota [option] [directory]

○repquota option
[-u], [--user] : user 쿼터 디스크의 파티션을 확인한다.
[-g], [--group] : group 쿼터 디스크의 파티션을 확인한다.
[-a], [--all] : 모든 파티션의 quota 정보 요약

●quotacheck

파일 시스템을 검사하여 쿼터 파일을 modify/check/create/repair를 한다.

quotacheck [option] [directory]

○quotacheck option
[-a], [--all] :all file system check.
[-u], [--user] :해당 user quota check.
[-g], [--group] : 해당 group quota check.
[-v], [--verbose] : 자세하게 출력
[-m], [--no-remount] : remount 안될 경우 다시 체크

●edquota

쿼터를 vi 에디터로 설정할 때 사용하는 명령어이다.

edquota [option] [username or groupname or projectname]

○edquota option
[-u], [--user] : 해당 user 쿼터를 설정한다.
[-g], [--group] : 해당 group 쿼터를 설정한다.
[-P], [--project] : 해당 project 쿼터를 설정한다.
[-p], [--prototype=protoname] : ①의 쿼터를 ②의 쿼터에 복사한다.

edquota -p ① ②

●setquota

쿼터를 터미널에서 명령어로 설정할 때 사용하는 명령어이다.

setquota [option] [name] [blocksoftlimit] [blockhardlimit] [inodesoftlimit] [inodehardlimit] [filesystem]

●quotaon/off

쿼터 활성화 비활성화

반응형