콘텐츠로 건너뛰기

리눅스 Swap 메모리 설정 방법 정리

리눅스 시스템에서 RAM 용량이 부족하게 되면 Swap 메모리 공간을 활용하여 프로그램을 구동하게 됩니다. RAM 용량이 부족해서 프로그램이 강제로 종료되거나 매우 느려지는 상황을 해결할 수 있는 방법입니다.

RAM
RAM

하지만 디스크 공간을 메모리 처럼 활용하는 방식이라 RAM을 사용하는 것 보다 훨씬 느린 단점이 있습니다. 가장 좋은 방법은 RAM 용량을 증설하는 것이지만 용량 증설이 어려운 상황에서는 Swap 메모리 설정을 고민해 볼 수 있습니다.

Swap 메모리 설정

설정 방법은 우분투 리눅스를 기준으로 Swap 설정 방법을 설명합니다.

free 명령어로 현재 시스템의 메모리와 설정 되어있는 Swap 용양을 확인합니다.

free -h
현재 Swap 메모리 0B​
현재 Swap 메모리 0B

Mem 항목에 현재 시스템의 메모리 용량이 표시되고, Swap 항목에는 설정된 Swap 메모리 용량이 표시됩니다. 아직 설정한게 없으니 total, used, free에 0B로 표시됩니다.

fallocate 명령어로 4GB 용량의 Swap 으로 사용할 파일을 생성합니다.

sudo fallocate -l 4GB /swapfile

생성한 Swap 파일에 접근할 수 있도록 권한을 설정 해 줍니다.

sudo chmod 600 /swapfile

mkswap 명령어로 Swap 영역을 생성 합니다.

sudo mkswap /swapfile
mkswap 결과​
mkswap 결과

Swap 파일을 Swap 공간으로 등록합니다.

sudo swapon /swapfile

다시 free 명령어로 Swap 공간이 잘 등록 되었는지 확인합니다.

free -h
Swap 용량이 3814로 바뀌었다.​
Swap 용량이 3814로 바뀌었다.

이제 시스템을 재부팅해도 Swap 공간이 자동으로 등록되도록 /etc/fatab 파일을 편집합니다.

sudo nano /etc/fstab

편집기를 열어서 아래 내용을 추가해 줍니다.

/swapfile    none    swap    sw    0    0
이렇게 추가하고 저장​
이렇게 추가하고 저장

Swap 메모리 해제

swapoff 명령어로 등록된 Swap 공간을 해제합니다.

sudo swapoff swapfile

Swap 등록을 위해 만들었던 /swapfile 파일을 삭제합니다.

sudo rm /swapfile

마지막으로 에디터를 열어서 /etc/fstab 파일에 등록했던 내용도 지워주면 됩니다.

sudo nano /etc/fstab

Swap 권장 용량

설치된 RAM 용량에 따라 권장되는 Swap 용량이 다릅니다.

설치된 RAM 용량권장되는 스왑 용량
2GB or lessRAM 용량의 2배
> 2GB – 8GBRAM 용량
> 8GB – 64GB적어도 4GB ~ RAM 용량의 1 / 2 배
> 64GB or more적어도 4GB

참고 : Red Hat Enterprise Linux 권장 swap 크기는 어떻게 되나요?

답글 남기기

이메일 주소는 공개되지 않습니다.