스왑은 실제 RAM 메모리의 양이 가득 찰 때 사용되는 디스크의 공간입니다. Linux 시스템에 RAM이 부족하면 비활성 페이지가 RAM에서 스왑 공간으로 이동합니다.
스왑 공간은 전용 스왑 파티션 또는 스왑 파일 형식을 취할 수 있습니다. 일반적으로 CentOS를 실행할 때 사용합니다.가상 시스템의 스왑 파티션이 없으므로 유일한 옵션은 스왑 파일을 만드는 것입니다.
이 문서에서는 CentOS 8에서 스왑 파일을 추가하는 단계를 설명합니다.
스왑 파일을 만들고 활성화
다음 단계를 루트 또는 sudo 권한이 있는 사용자로 수행하여 CentOS 8에 스왑 공간을 추가합니다.
스왑 공간 역할을 할 파일을 만드는 것부터 시작합니다.
sudo fallocate -l 1G /swapfile
이 예에서는 1G 크기의 스왑 파일을 만들고 있습니다. 더 많은 스왑이 필요한 경우 원하는 크기로 1G를 교체합니다.
시스템에서 오류 발생 유틸리티를 사용할 수 없거나 오류 발생 실패라는 오류 메시지가 나타날 경우: 작업이 지원되지 않습니다. dd 명령을 사용하여 스왑 파일을 만듭니다.
sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
루트 사용자만 스왑 파일을 읽고 쓸 수 있도록 파일 사용 권한을 설정합니다.
sudo chmod 600 /swapfile
그런 다음 파일에 Linux 스왑 영역을 설정합니다.
sudo mkswap /swapfile
# Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes)
# no label, UUID=0abdb8ba-57d6-4435-8fd8-5db9fc705045
다음 명령을 실행하여 스왑을 활성화합니다.
sudo swapon /swapfile
아래와 같이 스왑온 또는 자유 명령을 사용하여 스왑이 활성 상태인지 확인합니다.
sudo swapon --show
# NAME TYPE SIZE USED PRIO
# /swapfile file 1024M 507.4M -1
sudo free -h
# total used free shared buff/cache available
# Mem: 488M 158M 83M 2.3M 246M 217M
# Swap: 1.0G 506M 517M
/etc/fstab 파일에 스왑 항목을 추가하여 영구적으로 변경합니다.
# /etc/fstab
/swapfile swap swap defaults 0 0
스와피니스 값을 조정
스와피스는 시스템에서 스왑 공간을 사용하는 빈도를 정의하는 Linux 커널 속성입니다. 스와피스는 0에서 100 사이의 값을 가질 수 있습니다. 값이 낮으면 커널은 가능하면 항상 스왑을 피하지만 값이 높을수록 스왑 공간을 더 적극적으로 사용하도록 됩니다.
CentOS 8의 기본 스와피니스 값은 30입니다. 다음 명령을 입력하여 현재 스와피니스 값을 확인할 수 있습니다.
cat /proc/sys/vm/swappiness
# 30
데스크톱 및 개발 컴퓨터나 프로덕션 서버에서는 스와피니스 값 30이 괜찮지만, 더 낮은 값을 설정해야 할 수도 있습니다.
예를 들어 스와피니스 값을 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
스왑 파일을 생성하고 CentOS 8 시스템에서 스왑 공간을 활성화 및 구성하는 방법을 보여드렸습니다.
'SW > 리눅스' 카테고리의 다른 글
Linux : CentOS 8 : MariaDB 설치 방법, 예제, 명령어 (0) | 2022.05.13 |
---|---|
Linux : Debian 10 : MongoDB 설치 방법, 예제, 명령어 (0) | 2022.05.12 |
Linux : Raspberry Pi : Xrdp 서버 (원격 데스크톱) 설치 방법, 예제, 명령어 (0) | 2022.05.10 |
Linux : Nginx 시작, 중지, 재시작 방법, 예제, 명령어 (0) | 2022.05.09 |
Linux : Time Zone 설정, 변경 방법, 예제, 명령어 (0) | 2022.05.08 |