우분투 20.04/22.04에서 Swap 메모리를 확인하고 용량을 늘리는 방법에 대해서 알아보겠습니다.
1. Swap 메모리?
Swap 메모리는 하드디스크 또는 SSD에 할당된 영역으로, RAM이 부족할 때 RAM 처럼 사용되는 공간입니다.
당연히 RAM 보다 느리기 때문에 처리 속도가 느릴 수 있는데요, RAM이 부족하면 프로그램이 종료되기 때문에 이런 상황에서 Swap 메모리를 사용하여 프로그램이 종료되지 않을 수 있습니다.
따라서, Swap 메모리는 평소에는 사용하지 않고 Out Of Memory 등으로 RAM이 부족할 때 Fallback으로 사용됩니다.
2. Swap 메모리 크기 확인
터미널에서 free -h
명령어를 입력하면 현재 메모리와 Swap 메모리의 상태를 볼 수 있습니다.
이 시스템에 설정된 Swap 메모리는 2GB이며, 사용되고 있는 크기는 0B입니다. 아직 RAM이 여유가 있기 때문에 사용되지 않고 있습니다. Swap이 사용되지 않는다면 total에 0B로 보입니다.
$ free -h
total used free shared buff/cache available
Mem: 23Gi 4.7Gi 14Gi 337Mi 4.4Gi 17Gi
Swap: 2.0Gi 0B 2.0Gi
또는, sudo swapon --show
명령어로도 Swap 메모리를 확인할 수 있습니다. 아무것도 출력되지 않는다면 설정된 Swap 메모리가 없어서 입니다.
$ sudo swapon --show
NAME TYPE SIZE USED PRIO
/swapfile file 2G 0B -2
3. Swap 메모리 생성/늘리기
- Swap을 처음 설정하는 경우,
Swap 메모리 비활성화
는 무시하시면 됩니다. - Swap이 설정되어있지만, 크기를 늘리고 싶으신 경우
Swap 메모리 비활성화
를 참고하시어 Swap을 비활성해화야 합니다.
Swap 메모리 비활성화
Swap 메모리가 이미 설정되어있고 동작된다면, Swap 크기를 변경하기 전에 아래 명령어로 Swap을 비활성화해야 합니다.
$ sudo swapoff -v /swapfile
Swap이 비활성화된 상태에서 free 명령어로 확인해보면 설정된 Swap이 없다는 것을 볼 수 있습니다.
$ free -h
total used free shared buff/cache available
Mem: 23Gi 4.6Gi 14Gi 322Mi 4.4Gi 18Gi
Swap: 0B 0B 0B
Swap 메모리 설정
이제 두가지 케이스 모두, fallocate
명령어를 사용하여 Swap 메모리 크기를 설정하시면 됩니다.
아래 명령어는 Swap을 4GB로 설정합니다. 1G, 2G, 4G, 8G 처럼 원하시는 크기를 입력하시면 됩니다.
$ sudo fallocate -l 4G /swapfile
Swap 메모리 활성화
Swap 메모리가 설정되었기 때문에, 이제 Swap을 활성화하기만 하면 됩니다.
Swap을 활성화하기 전에, Swap 파일은 Root만 사용할 수 있도록 아래와 같이 권한을 변경합니다.
$ sudo chmod 600 /swapfile
위에서 생성한 Swap 파일을 Swap으로 사용되도록 설정합니다.
$ sudo mkswap /swapfile
아래 명령어로 Swap을 활성화시킵니다.
$ sudo swapon /swapfile
free와 swapon 명령어를 사용하여 설정된 Swap 메모리 크기를 확인할 수 있습니다.
Swap 크기가 0B가 아니면 잘 동작하고 있는 것입니다. 추가로, 설정된 메모리와 할당된 메모리가 일치하는지 보시면 됩니다.
$ free -h
total used free shared buff/cache available
Mem: 23Gi 4.6Gi 14Gi 306Mi 4.4Gi 18Gi
Swap: 4.0Gi 0B 4.0Gi
$ sudo swapon --show
NAME TYPE SIZE USED PRIO
/swapfile file 4G 0B -2
Related Posts
- Ubuntu/Linux - 특정 이름이 들어간 파일 모두 찾고 삭제하기
- Ubuntu/Linux - 특정 이름이 포함된 프로세스 모두 종료
- Ubuntu/Linux - 사용자 계정 이름 확인 (id, whoami)
- Ubuntu/Linux - E: unable to locate package 에러 해결
- Ubuntu 22.04/20.04 - Yarn 설치 방법
- Linux/Ubuntu - grep 명령어로 문자열 검색
- Linux/Ubuntu - 터미널에서 seq로 명령어 N회 반복
- Linux/Ubuntu - wc 명령어로 Line(줄) 개수 세기
- bash: pip: command not found 문제 해결 (Linux/Ubuntu)
- Ubuntu 22.04 - Swap 메모리 늘리기
- Linux - 파일이 수정된 날짜/시간 확인 방법
- Linux - 파일, 디렉토리 삭제 명령어(rm -rf, rmdir)
- 우분투 22.04 - deb 파일 설치하기
- Ubuntu 20.04 - OpenJDK 11 설치, 삭제
- Linux - ps 명령어로 실행 중인 프로세스(PID) 확인
- Ubuntu 20.04 - SSH 설치와 접속 방법
- Ubuntu에서 PPA 저장소 추가, 제거 방법
- Ubuntu 22.04 - Brave 브라우저 설치
- Ubuntu 22.04 - 프로스트와이어(FrostWire) 설치
- Ubuntu 22.04 - Remmina 설치 방법
- Ubuntu 22.04 - Rust 설치하기
- Ubuntu 22.04 - 텔레그램 설치하기
- Ubuntu - Deluge 토렌트 클라이언트 설치
- Ubuntu JDK 17 (OpenJDK) 설치, 삭제
- Ubuntu 20.04 스팀(Steam) 설치 방법
- Ubuntu에서 draw.io 설치하는 방법
- 우분투에 VMware 설치하기
- [Ubuntu] VMware에서 Windows 11 설치
- Vi/Vim에서 1줄 또는 여러줄 삭제 방법
- Vi/Vim에서 라인 번호 표시하 기
- 우분투에서 rar 압축, 압축 풀기
- Ubuntu에서 구글 드라이브 사용하기 (로컬 폴더에 마운트)
- [Ubuntu] apt-cache search, 설치 가능한 패키지 검색
- Ubuntu - DNS 캐시 삭제 방법
- Ubuntu에서 사용할 수 있는 Text Editor 소개