본문 바로가기

OS(Operating system)

(Ubuntu 22) - Ubuntu 잘못 설치해 swap size가 적을 때 멈춤 현상 해결

반응형

🍳머리말

아 개발할 때 computer 자꾸 멈춰요


📕설명

📔 Ubuntu에서 RAM 크기 확인하기

개발을 하다가 새 desktop임에도 계속 멈춰서 미동도 하지 않았습니다. 이것저것 하다가 문득 애초에 깔때부터 무심코 넘겼던 option들이 생각나면서 swap size를 작게 설정했음을 기억해 해결했습니다.

  📑 free -h

사용 가능한 RAM과 사용 중인 RAM을 표시하는 명령어 입니다. -h option으로 MB 또는 GB가 보이게 가독성을 챙겨줍니다.

저는 16G인데 swap이 1000Mi네요 터질 수 밖에 없겠죠?

 

📔 Java 개발을 위한 적정 swap 영역 크기

Swap 영역은 system의 RAM이 부족할 때 hard drive의 일부를 가상 memory로 사용해 system memory를 보충하는 역할을 합니다. 주로 RAM크기에 따라 다른데요, 주로 다음 3가지의 경우가 있다고 합니다.

📑 4GB 이하의 RAM

RAM의 최소 2배 크기의 Swap 영역을 설정하는 것이 좋습니다. 예를 들어, 2GB의 RAM이 있는 경우 4GB의 Swap을 권장합니다.

📑 4GB에서 16GB 사이의 RAM

RAM과 동일한 크기의 Swap 영역을 설정합니다. 예를 들어, 8GB의 RAM이 있을 경우, 8GB의 Swap을 설정하는 것이 일반적입니다.

📑 16GB 이상의 RAM

Java 개발과 같은 memory 집약적인 작업을 위해 RAM 크기의 약 50% 정도의 Swap을 설정하는 것이 좋습니다. 예를 들어, 32GB의 RAM이 있는 경우에는 약 16GB의 Swap을 설정할 수 있습니다.

 

📔 어떻게 만든 개발환경인데 밀기 싫어

깔끔한걸 선호하시는 분이라면 운영체제를 깔끔히 정리 후 정상적인 swap size를 정해 진행하시면 됩니다. 하지만 저는 잃을게 많아 최대한 가벼운 수정으로 해결했습니다.

📔 Swap file 생성 및 설정

📑 현재 Swap 상태 확인

sudo swapon --show
free -h

system의 각 partition swap 상태를 확인해보니 심지어 절반으로 나뉘어 있네요. 수정이 시급해보입니다.

📑 Swap file 생성

sudo fallocate -l {설정하고 싶은 swap크기} /swapfile

 

저는 16G RAM이므로 8GM의 swap file을 생성하려고 합니다.

sudo fallocate -l 8G /swapfile

📑 file 권한 설정

해당 swap file의 권한을 설정해 system 보안 유지해줍니다.

sudo chmod 600 /swapfile

📑 Swap file format

생성된 file을 swap으로 format합니다.

sudo mkswap /swapfile

📑 Swap file 활성화

system에서 바로 사용할 수 있게 합니다.

sudo swapon /swapfile

 

다음 booting시에도 활성화되도록  fstab file을 수정해 저장합니다.

sudo nano /etc/fstab
또는
sudo vi /etc/fstab

 

fstab file 내 최하단에 다음 줄 추가

/swapfile none swap sw 0 0

 

📑 변경 사항 확인

sudo swapon --show
free -h

 

새로운 swapfile 생성해 8G로 할당된 모습


📕참조

https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-22-04

 

How To Add Swap Space on Ubuntu 22.04 | DigitalOcean

Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.

www.digitalocean.com


*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.

'OS(Operating system)' 카테고리의 다른 글

(OS) - Caching  (1) 2022.07.08