Skip to main content
리눅스

리눅스 스왑메모리 지정하기

By 3월 2nd, 2026No Comments

리눅스에서 fallocate 명령어를 사용하여 스왑(Swap) 파일을 생성하고 활성화하는 방법은 매우 직관적입니다. 하지만 실행 전 주의할 점이 하나 있는데, 일부 파일 시스템(예: Btrfs)에서는 fallocate로 만든 스왑 파일을 지원하지 않을 수 있다는 점입니다. 이 경우 dd 명령어를 사용해야 하지만, 일반적인 ext4 환경이라면 아래 순서를 따르시면 됩니다.


스왑 파일 생성 및 활성화 단계

1. 스왑 파일 생성

먼저 fallocate를 사용하여 원하는 크기의 파일을 생성합니다. (예: 4GB 스왑 파일을 /swapfile 경로에 생성)

Bash

sudo fallocate -l 4G /swapfile

2. 권한 설정

보안을 위해 루트(root) 사용자만 읽고 쓸 수 있도록 권한을 수정합니다. 이 단계를 건너뛰면 보안 경고가 발생하며 스왑이 활성화되지 않을 수 있습니다.

Bash

sudo chmod 600 /swapfile

3. 스왑 영역으로 포맷

생성한 파일을 리눅스 스왑 공간으로 변환합니다.

Bash

sudo mkswap /swapfile

4. 스왑 활성화

파일을 즉시 스왑 공간으로 사용하도록 설정합니다.

Bash

sudo swapon /swapfile

5. 설정 확인

스왑이 정상적으로 추가되었는지 확인합니다.

Bash

sudo swapon --show
# 또는
free -h

재부팅 후에도 유지하기 (영구 설정)

위 설정은 재부팅하면 초기화됩니다. 서버가 켜질 때마다 자동으로 적용되게 하려면 /etc/fstab 파일에 등록해야 합니다.

  1. 설정 파일을 엽니다: sudo nano /etc/fstab

  2. 파일 맨 아래에 다음 내용을 추가합니다:

    /swapfile swap swap defaults 0 0

  3. 저장 후 종료합니다.

 

—————————————————————

에러일때 대처

root@camelsystem-302179:/# sudo mkswap /swapfile
mkswap: /swapfile: insecure permissions 0644, fix with: chmod 0600 /swapfile
Setting up swapspace version 1, size = 16 GiB (17179865088 bytes)
no label, UUID=4a57978c-ed76-48fd-bd6e-639161f558ca

 

정상적으로 스왑 영역 포맷이 완료되었습니다! 하지만 출력된 메시지에서 알 수 있듯이 보안 설정이 권장 사항보다 느슨하게 되어 있습니다.

현재 /swapfile의 권한이 0644(누구나 읽을 수 있음)로 되어 있는데, 스왑 파일에는 메모리의 민감한 데이터가 담길 수 있으므로 반드시 루트 사용자만 접근할 수 있도록 수정해야 합니다.

아래 명령어를 순서대로 입력하여 마무리를 지어주세요.


보안 수정 및 활성화 단계

  1. 권한 수정 (필수) 메시지에서 권장한 대로 권한을 600으로 변경합니다.

    Bash

    sudo chmod 0600 /swapfile
    
  2. 스왑 활성화 이제 시스템이 이 파일을 스왑으로 사용하도록 명령합니다.

    Bash

    sudo swapon /swapfile
    
  3. 최종 확인 스왑이 제대로 잡혔는지, 크기는 맞는지 확인합니다.

    Bash

    swapon --show
    

추가 팁: 스왑 사용 성향(Swappiness) 조절

16GiB라는 넉넉한 스왑을 잡으셨는데, 리눅스가 얼마나 자주 스왑을 사용할지 결정하는 swappiness 값을 확인해보는 것이 좋습니다. (보통 0~100 사이이며, 낮을수록 실제 RAM을 선호합니다.)

  • 현재 값 확인: cat /proc/sys/vm/swappiness

  • 임시 변경 (예: 10으로 설정): sudo sysctl vm.swappiness=10

이제 재부팅 시에도 이 스왑이 자동으로 적용되도록 /etc/fstab 파일을 수정하는 단계로 넘어갈까요?

Leave a Reply