Ubuntu/Tips

우분투 가상 메모리 (swap) 설정

khslab 2024. 1. 24. 11:04

가상메모리란 하드디스크(또는 SSD) 일부를

메모리 영역으로 잡아서 사용가능한 메모리 양을 늘리는 것이다.

 

기본적으로 우분투를 설치할 때

Swap 영역을 잡을 경우 가상 메모리를 사용하게 된다.

우분투 내의 [Disks] 앱으로 확인할 수 있다.

 

나의 경우

총 78.4G 만큼 메모리가 장착되어 있고

가상 메모리는 29.8G 사용할 수 있다.

따라서 총 108.2G 메모리를 사용하는 것이다.


먼저 다음 명령어를 통해 swap 메모리가 설정돼있는지 확인한다.

sudo free -m

 

이때 Swap영역과 본 출력에서 나오는 영역이 다를 경우

위의 Ext4 파티션 내에 swap영역이 존재하는 것이다.


swap 파일을 삭제하는 법이다.

 

활성화된 swap 영역을 비활성화 한다.

sudo swapoff -v /swapfile

이제 swapfile을 삭제하면 끝이다.

sudo rm /swapfile

만약 swap mem을 사용하지 않을 것이라면, /etc/fstab에 추가했던 내용을 다음과 같이 주석(#)친다.

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


Swap파일을 생성하는 법이다.

 

먼저 다음 명령어를 입력하여 swapfile을 생성한다.

이름은 [swapfile]말고 다른것을 사용하는 것도 가능하다.

default 이름은 swapfile이다.

sudo fallocate -l 32G /swapfile

나의 경우 [32G]로 [swapfile] 이름으로 swap 영역을 만든다.

참고로 이것은 Ext4 타피션 내에 추가로 메모리를 설정하는 것이므로

위와 같은 명령어를 쓰면 기존 32G + 32G의 swap 영역이 생기는 것이다.

 

이후 파일 권한을 다음과 같이 수정한다.

sudo chmod 600 /swapfile

 

이제 mkswap 명령어를 통해 아까 생성한 영역을 swap으로 바꾼다.

sudo mkswap /swapfile

 

 

 

다음 명령어로 swap 영역을 활성화 한다.

sudo swapon /swapfile

 

이제 다음과 같이 swap 영역이 늘어난 것을 확인할 수 있다.

 

이제 재부팅시 바로 swap영역이 활성화 되도록

/etc/fstab 파일을 수정한다.

sudo vi /etc/fstab

 

파일 가장 아래에 다음 명령어를 추가하면 된다.

/swapfile swap swap defaults 0 0

 

위와같이 입력하면 된다.

 

이러면 재부팅시 자동으로 아까 생성한 swapfile이 활성화 된다.

 

만약에 위의 추가 과정을 하지 않았을 경우

부팅시마다 다음 명령어로 swap을 활성화 하면 된다.

sudo swapon /swapfile