본문 바로가기
ETC/개발환경 설정

[Ubuntu]Swap메모리 설정하기

by heekng 2022. 4. 22.
반응형

Swap메모리 설정하기

AWS EC2나 라즈베리파이를 이용할 때 불가피하게 한번씩은 겪게되는 현상은 메모리가 부족하다는 알람이다.
실제로 프리티어 EC2 t2.micro는 1GB의 메모리를 제공하기에 조금이라도 메모리를 늘리고 싶을 때에는 swap 메모리를 활용할수밖에 없다.
Ubuntu의 swap메모리를 설정해보자.

제 환경은 라즈베리파이4 4GB, Ubuntu server 21.10입니다.

Ubuntu Swap memory setting

현재 기기의 메모리 확인

df -h

  • 현재 나의 기기에 하드디스크 용량을 확인한다.

Swap Memory 확인

free -h

  • 현재 물리적인 memory와 swap메모리 상태를 확인한다.
  • 이번 예시에서는 이미 8GB의 swap메모리를 할당한 상태이지만 설정되지 않았다는 가정 하에 진행하겠습니다.

Swapfile 생성

sudo fallocate -l [용량(숫자)]G /swapfile
sudo chmod 600 /swapfile
  • swap메모리로 설정할 용량을 입력한 더미파일을 생성한다.
  • 생성한 swapfile의 권한에 root권한만이 읽기/쓰기를 진행할 수 있도록 설정한다.

Swap Memory 활성화

sudo mkswap /swapfile
sudo swapon /swapfile
  • mkswap: swap 파티션이나 swap 파일을 생성한다.
  • swapon: swap 메모리를 활성화한다.

재부팅시 Swap Memory 활성화하도록 설정

sudo vi /etc/fstab

# 작성
/swapfile swap swap defaults 0 0
  • /etc/fstab: 파일시스템을 설정하는 파일

Swap Memory 설정 해제하기

# 스왑메모리 해제
sudo swapoff -v /swapfile

# 자동 활성화 해제
sudo vi /etc/fstab
# 삭제
/swapfile swap swap defaults 0 0

# 스왑파일 삭제
sudo rm /swapfile

마침

EC2 환경에서 몇번을 설정해보았지만 swap memory는 필수인 것 같다.
라즈베리파이는 4GB의 메모리를 가지고 있지만 SSD로 구동하는 환경에서 설정하지 않는것은 손해인것같다.

반응형