Ubuntu 22.04 - Swap 메모리 늘리기

우분투 20.04/22.04에서 Swap 메모리를 확인하고 용량을 늘리는 방법에 대해서 알아보겠습니다.

1. Swap 메모리?

Swap 메모리는 하드디스크 또는 SSD에 할당된 영역으로, RAM이 부족할 때 RAM 처럼 사용되는 공간입니다.

당연히 RAM 보다 느리기 때문에 처리 속도가 느릴 수 있는데요, RAM이 부족하면 프로그램이 종료되기 때문에 이런 상황에서 Swap 메모리를 사용하여 프로그램이 종료되지 않을 수 있습니다.

따라서, Swap 메모리는 평소에는 사용하지 않고 Out Of Memory 등으로 RAM이 부족할 때 Fallback으로 사용됩니다.

2. Swap 메모리 크기 확인

터미널에서 free -h 명령어를 입력하면 현재 메모리와 Swap 메모리의 상태를 볼 수 있습니다.

이 시스템에 설정된 Swap 메모리는 2GB이며, 사용되고 있는 크기는 0B입니다. 아직 RAM이 여유가 있기 때문에 사용되지 않고 있습니다. Swap이 사용되지 않는다면 total에 0B로 보입니다.

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           23Gi       4.7Gi        14Gi       337Mi       4.4Gi        17Gi
Swap:         2.0Gi          0B       2.0Gi

또는, sudo swapon --show 명령어로도 Swap 메모리를 확인할 수 있습니다. 아무것도 출력되지 않는다면 설정된 Swap 메모리가 없어서 입니다.

$ sudo swapon --show
NAME      TYPE SIZE USED PRIO
/swapfile file   2G   0B   -2

3. Swap 메모리 생성/늘리기

  • Swap을 처음 설정하는 경우, Swap 메모리 비활성화는 무시하시면 됩니다.
  • Swap이 설정되어있지만, 크기를 늘리고 싶으신 경우 Swap 메모리 비활성화를 참고하시어 Swap을 비활성해화야 합니다.

Swap 메모리 비활성화

Swap 메모리가 이미 설정되어있고 동작된다면, Swap 크기를 변경하기 전에 아래 명령어로 Swap을 비활성화해야 합니다.

$ sudo swapoff -v /swapfile

Swap이 비활성화된 상태에서 free 명령어로 확인해보면 설정된 Swap이 없다는 것을 볼 수 있습니다.

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           23Gi       4.6Gi        14Gi       322Mi       4.4Gi        18Gi
Swap:            0B          0B          0B

Swap 메모리 설정

이제 두가지 케이스 모두, fallocate 명령어를 사용하여 Swap 메모리 크기를 설정하시면 됩니다.

아래 명령어는 Swap을 4GB로 설정합니다. 1G, 2G, 4G, 8G 처럼 원하시는 크기를 입력하시면 됩니다.

$ sudo fallocate -l 4G /swapfile

Swap 메모리 활성화

Swap 메모리가 설정되었기 때문에, 이제 Swap을 활성화하기만 하면 됩니다.

Swap을 활성화하기 전에, Swap 파일은 Root만 사용할 수 있도록 아래와 같이 권한을 변경합니다.

$ sudo chmod 600 /swapfile

위에서 생성한 Swap 파일을 Swap으로 사용되도록 설정합니다.

$ sudo mkswap /swapfile

아래 명령어로 Swap을 활성화시킵니다.

$ sudo swapon /swapfile

free와 swapon 명령어를 사용하여 설정된 Swap 메모리 크기를 확인할 수 있습니다.

Swap 크기가 0B가 아니면 잘 동작하고 있는 것입니다. 추가로, 설정된 메모리와 할당된 메모리가 일치하는지 보시면 됩니다.

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           23Gi       4.6Gi        14Gi       306Mi       4.4Gi        18Gi
Swap:         4.0Gi          0B       4.0Gi

$ sudo swapon --show
NAME      TYPE SIZE USED PRIO
/swapfile file   4G   0B   -2
Loading script...

Related Posts

codechachaCopyright ©2019 codechacha