본문 바로가기

단축키

Prev이전 문서

Next다음 문서

단축키

Prev이전 문서

Next다음 문서

우분투 운영체제에 메모리가 충분한데도 스왑이 발생한다.

이것은 지극히 정상적인것이다.

 

자세한 내용은 아래에서 확인할 수 있다.

 

https://qastack.kr/server/420778/why-swap-is-used-when-plenty-of-free-memory-is-left

 

 

스왑메모리를 늘리는 방법은 다음과 같다.

 

시스템 감시: 메모리 부족 현상 모니터링 가능

 

 

Memory 부족 현상은 1) 실제 메모리와 2) SWAP 메모리를 모두 사용한 상태이다. 이 경우 리눅스 커널의  OOM(Out of Memory) killer가 실행 중인 프로그램을 우선 순위에 따라서 필요한 메모리를 확보할때 까지 하나씩 강제 종료 시킨다. 사용자에 메모리 부족 현상을 알려주는 팝업도 없이 백그라운드 프로그램부터 포그라운드 프로그램까지 강제 종료 시키기 때문에 사용자가 메모리 부족현상을 인지하지 못할 수 도 있다.  예를 들어,  8GB RAM의 우분투 환경에서 Android ASOP소스를 m -j8 (=thread 8개) 옵션으로 full build 하는데 ninja 프로그램이  에러 메시지 없이 종료해서 원인을 찾는데 한참 걸렸다.

 

메모리가 부족 현상은  근본적으로 RAM을 늘려서 해결해야 하지만,  일시적으로 메모리가 부족한 현상인 경우  SWAP 파일의 크기를 늘려 해결이 가능하다. 최근에 SSD가 빨라서 SWAP을 하더라도 사용성에는 큰 문제는 없다.

 

1. SWAP 파일 확인 방법

Ubuntu 18.04 부터는  swap 은  /swap parition으로 생성하는 것이 아니고 /swap file로 개선되어 parition 변경 없이 편하게 swap file의 크기를 조절할 수 있다. swapfile은 root 폴더 하위에 /swapfile 로 생성되며 사용 현항은 free 명령어로 확인할 수 있다.  (시스템 감시의 자원의 메모리와 Swap 현황과 동일). Ubuntu 20.04버전에서는 디폴트로 2GB의 스왑이 잡혀있다.

 

 

swapfile 은 / 하위에 생성된다

 

 

$ free -m 

 

 

free 명령어로 swap 의 사용 현형 확인

 

 

 

2. Swap file 크기 조정

Swap file 을 사용 중이라면 swap off 명령어로 비활성화 시켜야 한다. Swap file이 활성화된 상태에서는 "failed 메모리를 할당할 수 없습니다" 라는 에러 메시지와 함께 크기 조정이 안된다. 

# swap 비활성
$ sudo swapoff -v /swapfile

swap 메모리 크기 조정은 fallocate 명령어를 사용한다. 이후 권한을 설정하고 mkswap 명령어로 swapfile 을 만들고 swapon 으로 활성화 시킨다.

# swap 을 8GB 로 조정한 경우 
$ sudo fallocate -l 8G /swapfile

#권한 설정
$ sudo chmod 600 /swapfile

#swap file 만들기
$ sudo mkswap /swapfile

#swap file 활성화 : 리부티하지 않아도 swap file이 활성화 된다.
$ sudo swapon /swapfile

/etc/fstab 을 수정해서 swap file을 마운트 한다.

# /etc/fstab 을 열어서 내용 추가  
swapfile none swap sw 0 0

swap이 정상동작되는지 free 명령어로 확인하다.

 

 

 

참고 : https://psychoria.tistory.com/717

 



List of Articles
번호 분류 제목 글쓴이 조회 수 날짜
공지 덕질 공통 이용규칙 및 안내 (업데이트중+ 2024-04-13) 😀컴덕824 5222 2024.04.14
공지 1000P를 모으면 다이소 상품권 1000원을 신청할 수 있습니다. file Private 5208 2024.02.14
5309 일반 엔비디아는 RTX4천세대를 보호하기 위해 수십억 유로를 지불함. file 😀컴덕036 5 2022.01.01
5308 일반 에픽게임즈) 툼레이더 트릴로지 무료배포 ~ 1/7 01시까지 😀컴덕557 5 2022.01.01
5307 일반 새해가 밝았으니 😀컴덕181 5 2022.01.02
5306 일반 슬프다 연말인데.. 😀컴덕688 6 2022.01.01
5305 일반 새해복 많이 받으십시오~~~ 😀컴덕091 6 2022.01.02
5304 일반 nvme ssd 1tb 구매희망합니다. 😀컴덕759 7 2022.01.01
5303 일반 PCIe 3.0 지원 메인보드에선 gen4 ssd 필요없겠죠? 😀컴덕024 7 2022.01.01
5302 일반 요번 컴터 업글 쓰면서 3열 짭수 첨 써봤는데 😀컴덕619 7 2022.01.01
5301 일반 코인하는 애들 내꺼 3080 안 사주노 😀컴덕841 7 2022.01.01
5300 일반 새해복 많이 받으세요 😀컴덕411 7 2022.01.01
5299 일반 이 개같은 회사 상여를 준다는 거야 안준다는거야 모니터 째리고있는데 😀컴덕390 7 2022.01.01
5298 일반 디갤 순위 많이 떨어졌네 😀컴덕615 7 2022.01.02
5297 일반 니들 컴터 사서 부품박스 버림? 😀컴덕141 7 2022.01.02
5296 일반 키보드 ㅊㅊ좀 😀컴덕128 7 2022.01.02
5295 일반 갤럭시S22 노트 브랜딩은 취소 울트라 브랜딩 내부 확정 😀컴덕후084 7 2022.01.02
5294 일반 아 글구 맥 무선마우스 잘됨 😀컴덕553 7 2022.01.03
5293 일반 윈도우 10 home fpp 질문입니다 😀컴덕582 7 2022.01.03
5292 일반 마우스 싼마이로 로지텍 G304 무선 괜찮나요? 😀컴덕385 7 2022.01.03
5291 일반 ddr4 시금치 램 8기가(2666) 1개 구해봅니다 😀컴덕247 7 2022.01.03
5290 질문 100w 충전기로 문제 안생길까요?? 😀컴덕1842 7 2024.06.01
목록
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 266 Next
/ 266