본문 바로가기

리눅스

ubuntu 22.04 스왑 메모리(swap memory)

728x90

ubuntu 22.04 스왑 메모리(swap memory)

Ubuntu 22.04에서는 기본적으로 스왑 파일을 자동으로 생성하도록 설정되어 있습니다. 그러나 기본 스왑 파일 크기는 일반적으로 시스템의 물리적 메모리 크기에 따라 자동으로 조정됩니다. 일반적으로 Ubuntu 22.04에서는 물리적 메모리 크기의 약 50%에서 66% 정도를 기본 스왑 파일 크기로 설정합니다.

 

예를 들어, 시스템이 4GB RAM을 가지고 있다면 기본 스왑 파일 크기는 약 2GB에서 2.7GB 정도로 설정될 수 있습니다. 이렇게 작은 기본 스왑 파일은 일반적으로 일상적인 작업 및 가벼운 서버 운영에는 충분하지만, 메모리 집약적인 작업이나 대규모 애플리케이션을 실행할 때에는 스왑 공간이 부족할 수 있습니다. 따라서 필요에 따라 스왑 파일 크기를 조정해야 할 수 있습니다.

 

스왑 공간 확인

swapon --show
$ swapon --show
NAME      TYPE      SIZE USED PRIO
/swap.img file        8G   0B   -2
/dev/sda3 partition  32G   0B   -3

메모리 및 스왑 공간 확인

free -h
$ free -h
               total        used        free      shared  buff/cache   available
Mem:            62Gi       2.5Gi        52Gi       8.0Mi       7.5Gi        59Gi
Swap:           39Gi          0B        39Gi

swap.img 용량 및 퍼미션 확인

$ ls -lh /swap.img
-rw------- 1 root root 8.0G May 18 12:33 /swap.img

fstab(/etc/fstab) 편집

$ vim /etc/fstab | egrep swap.img
/swap.img	none	swap	sw	0	0

swap file 크기 조정

swap memory 비활성화

swapoff -v /swap.img
728x90

스왑 파일 생성(fallocate 명령어)

fallocate -l 16G /swapfile

스왑 파일의 권한을 변경

chmod 600 /swapfile

스왑 영역으로 설정

mkswap /swapfile

스왑 파일을 활성화

swapon /swapfile

fstab(/etc/fstab) 편집

echo "/swapfile swap swap default 0 0" >> /etc/fstab

swappiness, vfs_cache_pressure 확인

swappiness

cat /proc/sys/vm/swappiness
$ cat /proc/sys/vm/swappiness
60

vfs_cache_pressure

cat /proc/sys/vm/vfs_cache_pressure
$ cat /proc/sys/vm/vfs_cache_pressure
100

swappiness, vfs_cache_pressure 변경

sysctl vm.swappiness=10
sysctl vm.vfs_cache_pressure=50

또는

echo "vm.swappiness = 10" >> /etc/sysctl.conf
echo "vm.vfs_cache_pressure = 50" >> /etc/sysctl.conf

 

728x90