스왑은 실제 RAM 메모리가 가득 찼을 때 사용되는 Disk의 공간입니다. 리눅스 시스템의 RAM이 부족하면 비활성 페이지가 RAM에서 스왑 공간으로 이동합니다.
스왑 공간은 전용 스왑 파티션 또는 스왑 파일 형식을 취할 수 있습니다. 일반적으로 가상 시스템에서 Ubuntu를 실행할 때는 스왑 파티션이 없으며 유일한 옵션은 스왑 파일을 생성하는 것입니다.
이 튜토리얼에서는 Ubuntu 20.04에서 스왑 파일을 추가하는 방법을 설명합니다.
시작하기 전에
스왑은 물리적 메모리를 대체하는 것으로 간주해서는 안 됩니다. 스왑 공간은 하드 드라이브의 한 부분이기 때문에 물리적 메모리보다 액세스 시간이 느립니다. 시스템의 메모리가 계속 부족하면 RAM을 추가해야 합니다.
일반적으로 스왑 파일의 크기는 시스템의 RAM 크기에 따라 달라집니다.
RAM이 2GB 미만인 시스템 - RAM 크기의 2배입니다.
2~8GB RAM이 장착된 시스템 - RAM 크기와 동일합니다.
RAM이 8GB 이상인 시스템 - 스왑이 4GB 이상입니다.
루트 또는 sudo 권한이 있는 사용자만 스왑 파일을 활성화할 수 있습니다.
스왑 파일 생성
이 예에서는 2GB 스왑 파일을 생성하겠습니다. 스왑을 더 추가하려면 2G를 필요한 스왑 공간 크기로 교체합니다.
아래 단계를 완료하여 Ubuntu 20.04에 스왑 공간을 추가하십시오.
먼저 스왑으로 사용할 파일을 만듭니다.
sudo fallocate -l 2G /swapfile
시스템에 fallocate 유틸리티가 없거나 fallocate failed(fallocate 실패)라는 오류 메시지가 표시되는 경우: 작업이 지원되지 않습니다. 다음 명령을 사용하여 스왑 파일을 생성하십시오.
sudo dd if=/dev/zero of=/swapfile bs=1024 count=2097152
일반 사용자가 파일을 쓰고 읽지 못하도록 파일 사용 권한을 600으로 설정합니다.
sudo chmod 600 /swapfile
파일에 Linux 스왑 영역을 생성합니다.
sudo mkswap /swapfile
# Setting up swapspace version 1, size = 2 GiB (2147479552 bytes)
# no label, UUID=fde7d2c8-06ea-400a-9027-fd731d8ab4c8
다음 명령을 실행하여 스왑 파일을 활성화합니다.
sudo swapon /swapfile
변경을 영구적으로 수행하려면 /etc/fstab 파일을 엽니다.
sudo nano /etc/fstab
다음 줄을 붙여 넣습니다.
# /etc/fstab
/swapfile swap swap defaults 0 0
아래와 같이 swapon 또는 free 명령을 사용하여 스왑이 활성 상태인지 확인합니다.
sudo swapon --show
# NAME TYPE SIZE USED PRIO
# /swapfile file 2G 0B -1
sudo free -h
# total used free shared buff/cache available
# Mem: 981Mi 97Mi 68Mi 0.0Ki 814Mi 735Mi
# Swap: 2.0Gi 10Mi 1.9Gi
스와피시 값을 조정
스왑성은 시스템에서 스왑 공간을 사용하는 빈도를 정의하는 Linux 커널 속성입니다. 값은 0에서 100 사이일 수 있습니다. 값이 낮으면 커널이 가능한 한 스왑을 피하려고 하지만 값이 높을수록 커널이 스왑 공간을 더 적극적으로 사용하게 됩니다.
Ubuntu에서는 기본 swappiness 값이 60으로 설정됩니다. 다음 명령을 입력하여 현재 값을 확인할 수 있습니다.
cat /proc/sys/vm/swappiness
# 60
대부분의 리눅스 시스템에서는 swappiness 값 60이 정상이지만 프로덕션 서버의 경우 더 낮은 값을 설정해야 할 수 있습니다.
예를 들어 swappiness 값을 10으로 설정하려면 다음을 실행합니다.
sudo sysctl vm.swappiness=10
재부팅 후에도 이 매개 변수를 유지하려면 /etc/sysctl.conf 파일에 다음 줄을 추가하십시오.
# /etc/sysctl.conf
vm.swappiness=10
최적의 스와피시 값은 시스템 워크로드와 메모리 사용 방법에 따라 달라집니다. 최적의 값을 찾으려면 이 모수를 조금씩 조정해야 합니다.
스왑 파일을 제거
스왑 파일을 비활성화 및 삭제하려면 다음 단계를 수행하십시오.
먼저 스왑 공간을 비활성화합니다.
sudo swapoff -v /swapfile
그런 다음 /etc/fstab 파일에서 스왑 파일 항목 /swapfile 스왑 기본값 0을 제거합니다.
마지막으로 rm 명령을 사용하여 실제 스왑 파일 파일을 제거합니다.
sudo rm /swapfile
Ubuntu 20.04 시스템에서 스왑 파일을 생성하고 스왑 공간을 활성화 및 구성하는 방법을 보여드렸습니다.
참조
https://linuxize.com/post/how-to-add-swap-space-on-ubuntu-20-04/
'SW > 리눅스' 카테고리의 다른 글
Linux : Ubuntu 20.04 : Zoom 설치 방법, 예제, 명령어 (0) | 2022.09.16 |
---|---|
Linux : Grep : 여러 문자 및 패턴 검색 방법, 예제, 명령어 (0) | 2022.09.15 |
Linux : Ubuntu 20.04 : Node.js와 npm 설치 방법, 예제, 명령어 (0) | 2022.09.13 |
Linux : .bashrc 와 .bash_profile 개념, 차이, 설명 (0) | 2022.09.12 |
Linux : Ubuntu 20.04 : Apache 설치 방법, 예제, 명령어 (0) | 2022.09.11 |