[리눅스] 리눅스 스왑 관리

리눅스 운영 체제는 시스템의 메모리가 부족한 경우를 대비해 스왑 공간을 사용합니다. 이번 포스트에서는 리눅스에서 스왑을 어떻게 관리하는지에 대해 알아보도록 하겠습니다.

1. 스왑이란 무엇인가요?

스왑(Swap)은 RAM이 부족한 상황에서 디스크 공간을 임시 메모리로 사용하는 것을 의미합니다. 리눅스에서는 실제 메모리가 가득 차게 되면 적절한 프로세스들을 스왑 공간으로 이동시켜 메모리 부족 문제를 해결합니다.

2. 스왑의 크기 조절

스왑의 크기는 운영체제 설치 시에 자동으로 할당되지만, 필요에 따라 수동으로 조절할 수도 있습니다. 스왑의 크기를 늘리거나 줄이는 방법은 다양하며, dd 명령어를 사용하여 스왑 파일을 생성하거나 제거할 수 있습니다.

# 1GB 크기의 스왑 파일 생성
sudo dd if=/dev/zero of=/swapfile bs=1G count=1

# 스왑 파일 포맷
sudo mkswap /swapfile

# 스왑 파일 활성화
sudo swapon /swapfile

# 스왑 파일 비활성화
sudo swapoff /swapfile

3. 스왑 관리

리눅스에서는 스왑을 관리하기 위해 swappiness 값을 설정할 수 있습니다. 이 값은 스왑 사용을 얼마나 선호하는지를 나타내며, 0부터 100까지의 범위를 갖습니다. 0일 경우 스왑을 최대한 피하고, 100일 경우 스왑을 최대한 활용하게 됩니다.

# swappiness 값 확인
cat /proc/sys/vm/swappiness

# swappiness 값 변경
sudo sysctl vm.swappiness=10

4. 결론

리눅스에서 스왑을 적절히 관리함으로써 메모리 부족 상황에서의 성능 저하를 최소화할 수 있습니다. 스왑의 크기와 swappiness 값 등을 조절하여 시스템의 성능을 최적화하는 것이 중요합니다.

이상으로 리눅스에서의 스왑 관리에 대해 알아보았습니다.

참고 자료: Red Hat Enterprise Linux 7 - Managing Swap Space