본문 바로가기

단축키

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 5306 2024.04.14
공지 1000P를 모으면 다이소 상품권 1000원을 신청할 수 있습니다. file Private 5283 2024.02.14
4773 일반 밑에 견적문의글 file 😀컴덕306 31 2022.01.04
4772 일반 AMD가 FSR 2.0을 3월 17일에 발표? 😀익명393 209 2022.12.31
4771 일반 코로나 후유증 😀익명086 511 2022.12.31
4770 일반 주식투자와 관련된 주식명언 😀익명023 914 2016.02.22
4769 일반 결론은 이거지? 😀컴덕960 33 2022.01.08
4768 일반 스마일게이트 '테일즈런너', 새로운 승부가 시작된다..'언더월드 리그' 실시 😀컴덕후502 74 2023.03.27
4767 일반 레이드몹의 신작 RPG '루디엘' 영상 😀컴덕후989 40 2023.03.27
4766 일반 윈도우 10 ‘블랙 스크린’ 문제 해결하기 😀컴덕308 50 2023.03.27
4765 일반 윈도우 11 디펜더(Windows 보안) 비활성화 먹통 문제 해결 😀컴덕886 43 2023.03.27
4764 일반 까다롭고 예민한 코골이에게💤AI 베개 제레마 프리뷰 [4K] file 😀컴덕443 45 2023.03.27
4763 일반 이정도는 돼야 카피캣이지 😀익명641 1084 2023.03.27
4762 일반 1년반만에 포맷했습니다 😀05584658 348 2022.04.02
4761 일반 블루스크린 오류코드 해석방법 😀컴덕326 571 2023.08.31
4760 일반 맥과 윈도우를 고민하는 사람들에게 알맞는 조언 file 😀무명의컴덕475 431 2023.09.06
4759 일반 자자 선생님들 😀77511180 460 2022.05.12
4758 일반 RARBG TORRENT 운영진 투표로 셧다운. 😀익명710 409 2023.06.02
4757 일반 AMD Ryzen 5 8600G 내장그래 벤치마크 😀컴덕572 286 2024.02.07
4756 일반 ASUS GT-AX6000과 TP-LINK XDR6086 간의 무선 비교 테스트 file 😀컴덕387 312 2024.02.08
4755 일반 핸드폰 번호만 남겨둘 때 0원요금제 없어졌음 😀컴덕816 39 2022.01.04
4754 일반 이거 60이면 가격 좋은거같네 file 😀컴덕607 26 2022.01.05
목록
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 239 Next
/ 239