Linux

[Ubuntu 20.04 LTS] Swap 설정 활성화 및 삭제

비번변경 2021. 11. 26. 21:26

 

SWAP
리눅스에서 물리적 메모리(RAM)의 용량이 가득 차는 경우 사용하는 여유 공간으로, 당장 필요하지 않은 프로그램의 데이터를 하드 디스크의 옮겨두는 방식으로 메모리 공간을 확보한다.
하드 디스크의 일부 공간을 메모리처럼 사용할 수 있지만, RAM보다 속도가 느리다.

 

이 글에서는 swap을 설정하고, 삭제하는 방법에 대해 정리한다.

버전을 크게 타지는 않는 것 같지만, Ubuntu 20.04를 기준으로 정리했음을 밝힌다.

 

SWAP 확인

아래의 명령어 중 하나로, 기존에 swap 설정이 있는지 확인한다.

free -h
swapon -s
# -s : --summary. 장치 별 swap 사용량을 요약하여 표시

swapon --show

swap 설정 확인

이 서버에는 swap 설정을 해두지 않아, 용량이 free 명령에서 용량이 0으로 표시된다.

 

SWAP 활성화

서버 설정 변경이기 때문에 root 권한이 필요하다.

 

1. swapfile 생성

적당한 디스크에 필요한 만큼의 용량을 할당하여 swapfile을 생성한다.

/root 또는 /home에 생성해야 한다면, 용량이 충분한지 검토한다.

fallocate -l <용량> /<PATH>/swapfile

# 예시
fallocate -l 8G /data1/swapfile

 

2. swapfile 권한 변경

root 사용자만 swapfile을 읽고 쓸 수 있어야 한다.

chmod 600 /<PATH>/swapfile

# 예시
chmod 600 /data1/swapfile

 

3. swap 영역으로 설정

mkswap /<PATH>/swapfile

# 예시
mkswap /data1/swapfile

swap 영역 설정

 

4. swap 활성화

swapon /<PATH>/swapfile

# 예시
swapon /data1/swapfile

 

이제 free 등의 명령어로 swap 설정을 확인할 수 있다.

swap 활성화

 

SWAP 설정 유지

swapon으로 활성화한 swap 영역은 휘발성이기 때문에 재부팅 등의 동작이 있을 시 초기화된다. 재부팅 이후에도 swap 설정을 유지하고 싶다면 /etc/fstab 파일 수정이 필요하다.

 

방법

vi /etc/fstab

#############추가 내용###############
/<PATH>/swapfile	swap	swap	defaults	0	0

# 예시
/data1/swapfile	swap	swap	defaults	0	0

 

SWAP 설정 삭제

더 이상 swap을 사용하지 않으면 swap 비활성화 한 후, swapfile을 삭제하면 된다.

 

1. swap 비활성화

swapoff -v /<PATH>/swapfile

# 예시
swapoff -v /data1/swapfile

swap 설정 삭제

 

2. (선택) /etc/fstab 수정

기존에 swap으로 추가했던 행을 삭제한다.

 

3. swapfile 삭제

rm /<PATH>/swapfile

# 예시
rm /data1/swapfile