본문 바로가기

단축키

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 5305 2024.04.14
공지 1000P를 모으면 다이소 상품권 1000원을 신청할 수 있습니다. file Private 5283 2024.02.14
4773 일반 노트북 랜선과 와이파이중 어느쪽이 더 전력소비가 심할까?? 😀익명666 4540 2023.01.25
4772 일반 usb 메모리 수명 관련 질문입니다 3 😀익명510 4133 2023.01.24
4771 일반 USB는 외장하드보다 수명이 짧나요? 😀익명404 4086 2023.01.24
4770 일반 HDD 어느 회사 것으로 사야 하나요?? 1 😀익명942 3986 2023.01.24
4769 일반 USB 꽂아두고 작업해도 괜찮나요? 2 😀익명010 3748 2023.01.24
4768 일반 저사양컴퓨터에 최적화 되어 있는 OS 윈도우 11 X Lite file 😀58852953 3489 2022.09.23
4767 일반 리눅스마스터 1급 자격증 딴 사람 있어? 😀55308247 3367 2022.09.21
4766 일반 라자 코두리의 AI 기업, 인텔의 엔드게임 라이센스를 계약 😀컴덕171 3201 2023.10.22
4765 일반 영상작업용은 7800x3d vs 13700k ?? 2 😀익명968 3193 2023.05.01
4764 일반 지포스 RTX 4070 슈퍼, AD!03+16GB 조합 😀컴덕084 3132 2023.10.22
4763 일반 Phytium, 제재에도 불구하고 데이터 센터용 64코어 프로세서 공개 😀컴덕747 3076 2023.10.22
4762 일반 i9-14900K 뚜따 후 온도 file 😀컴덕421 2991 2023.10.22
4761 일반 노트북 CPU i5-1235U vs i5-1240P 차이 있을까요? 2 😀익명617 2935 2023.02.16
4760 일반 Best Practices for MySQL with SSD,NVME innodb file 😀익명167 2807 2023.01.09
4759 일반 추천 가성비 마우스 정리글 😀익명035 2683 2023.01.16
4758 일반 토렌트 사용시 ip차단해놔 file 😀컴덕627 2569 2023.10.19
4757 일반 14900K 게이밍 벤치마크 file 😀컴덕697 2394 2023.10.18
4756 일반 해외직구 할인 세일기간을 알아봅시다 file 😀익명161 2377 2023.01.10
4755 일반 VMware 리믹스 OS 설치 방법 😀익명630 2278 2016.02.08
4754 일반 14900K 공식 프레젠테이션 게임 성능 file 😀컴덕577 2228 2023.10.18
목록
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 239 Next
/ 239