OS/Linux

Swap Memory란? 스왑 메모리 설정하기 / 방법1. 스왑 파일 생성

yeit 2023. 12. 14. 11:27
728x90

Swap Memory란?

  • 주로 운영 체제에서 RAM(주 기억장치)가 부족할 때 사용되는 가상 메모리의 일종
  • 하드 디스크나 SSD와 같은 보조 저장 장치를 사용하여 메모리 부족 상황에서 추가적인 가상 메모리 공간을 제공
  • 메모리 부족(Out of Memory) 현상 또는 프로세스 종료 방지해 줌

 

권장되는 스왑 용량

  • RAM이 2GB 이하인 경우 : RAM 용량의 2배
  • RAM이 2GB ~ 8GB인 경우 : RAM 용량과 동일
  • RAM이 8GB ~64GB인 경우 : 최소 4GB ~ RAM 용량의 1/2배
  • RAM이 64GB 이상인 경우 : 최소 4GB

 

 

스왑 메모리를 설정하는 방법은 크게 2 가지가 있다.

 

방법1. 스왑 파일을 생성하는 방법

일반적인 파일 시스템에 존재하는 파일을 swapping영역 사용

 

1. 사전 확인

# free -h          => swap 0GB
# swapon -s        => 아직 설정한게 없으니 아무것도 안나옴

 

2. 2GB 스왑 파일 생성

루트 디스크가 아닌 따른 추가 디스크(/data)의 공간 할당하고 싶으면 swapfile 경로 바꿔주면 된다.
ex) dd if=/dev/zero of=/data/swapfile count=2048 bs=1M

# fallocate -l 2G /swapfile 

또는 
# dd if=/dev/zero of=/swapfile count=2048 bs=1M

참고)

# fallocate -l 2G /swapfile의 경우 swapon시, Invalid argument 에러가 발생할 수 있음

# dd if=/dev/zero of=/swapfile count=2048 bs=1M로 하는 것을 추천

 

3. swap 파일 권한 설정

# chmod 600 /swapfile
# ll /swapfile

 

4. 스왑 시스템 초기화

# mkswap /swapfile

 

5. 스왑 활성화

# swapon /swapfile

 

6. 재부팅시에도 스왑이 적용되도록 설정

# vi /etc/fstab
/swapfile swap swap defaults 0 0

 

7. 확인

루트파일시스템 용량 차지됨

# df -Th

 

추가 설정) swappiness 값 설정

30이 기본값이며, 값이 클수록 RAM보다 스왑 공간을 더 많이 쓴다는 의미

# sysctl vm.swappiness=10

 

삭제)

활성화된 swap을 비활성화한 후, 파일 삭제

# swapoff /swapfile

# rm /swapfile

 

 

 

방법2. 스왑 파티션을 생성하는 방법

디스크 파티션을 나눠서 그 중 한 공간에 sawpping영역 할당

👇

스왑 메모리 설정하기 / 방법2. 스왑 파티션 생성 (tistory.com)

 

스왑 메모리 설정하기 / 방법2. 스왑 파티션 생성

스왑 메모리를 설정하는 방법은 크게 2 가지가 있다. 방법1. 스왑 파일을 생성하는 방법 일반적인 파일 시스템에 존재하는 파일을 swapping영역 사용 https://yeit.tistory.com/22 Swap Memory란? 스왑 메모리

yeit.tistory.com

 

728x90