스왑 공간은 리눅스 시스템에서 물리적 메모리(RAM)가 부족할 때, 디스크의 일부를 임시 메모리로 사용하는 공간이다. 시스템의 RAM이 가득 차면 사용하지 않는 데이터나 프로그램의 일부를 스왑 공간으로 옮겨 RAM을 확보하게 된다. 이 과정을 스왑아웃(swap out)이라고 하며, 스왑 공간에서 다시 RAM으로 데이터를 가져오는 과정은 스왑인(swap in)이라고 한다.
스왑은 크게 두 가지 형태로 존재할 수 있다:
- 스왑 파티션: 디스크의 일부를 스왑 전용 파티션으로 할당한 것.
- 스왑 파일: 일반 파일 시스템에서 파일로 존재하는 스왑 공간.
스왑 공간의 역할
- 메모리 부족 시 도움: RAM이 부족해지면 스왑 공간을 활용하여 시스템의 안정성을 유지할 수 있다.
- 대용량 작업 지원: 스왑 공간을 활용하면 대규모 데이터 처리나 메모리 집약적 작업을 할 때 시스템이 더 잘 대응할 수 있다.
- 시스템 성능 보조: 스왑 공간이 활성화되어 있으면, 메모리가 부족한 상황에서도 시스템이 멈추지 않고 작동할 수 있다.
스왑 공간 관리 명령어
스왑 공간 확인
free
명령어: 현재 시스템에서 사용 중인 메모리와 스왑 공간의 상태를 확인할 수 있다.free -h
swapon --show
명령어: 현재 활성화된 스왑 파티션과 파일의 목록과 사용량을 확인할 수 있다.swapon --show
스왑 공간 활성화와 비활성화
- 스왑 활성화 (
swapon
): 특정 스왑 파티션 또는 파일을 활성화한다.sudo swapon /dev/sda3 # 스왑 파티션 활성화 sudo swapon /swapfile # 스왑 파일 활성화
- 스왑 비활성화 (
swapoff
): 특정 스왑 파티션이나 파일의 사용을 중단한다.sudo swapoff /dev/sda3 # 스왑 파티션 비활성화
- 모든 스왑 공간 비활성화: 시스템에서 모든 스왑 공간을 비활성화한다.
sudo swapoff -a
스왑 파일 생성 및 설정
- 스왑 파일 생성: 스왑 파일을 생성하려면
dd
명령어를 사용한다. 아래 명령어는 4GB 크기의 스왑 파일을 생성하는 예시이다.sudo dd if=/dev/zero of=/swapfile bs=1G count=4
- 스왑 파일 설정: 생성된 파일을 스왑 공간으로 설정한다.
sudo mkswap /swapfile
- 스왑 파일 활성화: 설정한 스왑 파일을 활성화한다.
sudo swapon /swapfile
스왑 파일을 영구적으로 활성화
- /etc/fstab에 추가: 스왑 파일을 시스템 부팅 시 자동으로 활성화하려면
/etc/fstab
파일에 아래 라인을 추가한다./swapfile swap swap defaults 0 0
728x90
'CS' 카테고리의 다른 글
[Linux] 파일 시스템(/etc/fstab) (0) | 2024.08.26 |
---|---|
[Linux] 호스트네임 관리와 네트워크 설정 (0) | 2024.08.26 |
[CS] Blocking I/O & Non-Blocking I/O (0) | 2024.08.12 |
[CS] 스레드의 종류 (0) | 2024.08.12 |
[CS] 운영 체제의 모드와 시스템 콜 (1) | 2024.08.11 |