Oracle Cloud와 같은 클라우드 무료 티어나 저가형 서버를 쓰다 보면 당황스러운 순간이 온다. Docker를 올리거나 Nginx 설정을 바꾸는데 갑자기 터미널이 멈추고 서버 접속이 끊겨버리는 경우가 있다.
원인은 명확하다. 1GB라는 미니미한 RAM 용량 때문입니다. 서버가 처리할 데이터는 많은데 담을 그릇이 부족하니 결국 서버가 '기절'해버리는 것이다. 오늘은 이 좁은 그릇을 대신해 하드디스크의 일부를 메모리처럼 사용하는 Swap(스왑) 설정으로 서버에 8GB급 맷집을 키워보자.
🛠️ 1GB RAM 서버 심폐소생술 (Swap 7GB 설정)
1. 7GB 크기의 빈 공간 확보하기
서버 안에 7GB짜리 거대한 빈 파일을 만든다. 약 10~20초 정도 소요
sudo fallocate -l 7G /swapfile
2. "나만 볼 거야" 권한 설정
이 파일은 메모리 대용이라 보안이 중요합니다. 다른 사용자가 함부로 읽지 못하도록 권한을 제한
sudo chmod 600 /swapfile
3. 파일을 '스왑용'으로 변신시키기
그냥 빈 파일이었던 것을 리눅스 시스템이 메모리처럼 인식할 수 있게 포맷하는 과정
sudo mkswap /swapfile
4. 스왑 엔진 가동
이제 실제로 리눅스 시스템이 이 공간을 메모리처럼 사용 시작
sudo swapon /swapfile
5. 재부팅해도 유지되도록 영구 저장
위의 설정들은 서버를 껐다 켜면 사라집니다. 재부팅 시에도 자동으로 적용되도록 설정 파일(fstab)에 내용을 기록
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
✅ 제대로 됐는지 검사하기
모든 명령어를 입력했다면, 아래 명령어로 최종 확인을 하면 다음과 같이 뜨는 것을 볼 수 있다.
free -h

'코딩 > Linux' 카테고리의 다른 글
| [Linux] Journalctl의 진정한 분석 기능 (0) | 2025.12.14 |
|---|---|
| [Linux] Systemd & Journalctl (0) | 2025.12.14 |