-
리눅스 가상메모리 켜기각종 학습 요약/Web 2023. 7. 6. 13:19
내용
보통 aws 프리티어를 처음 사용해보게 되면 거기에 웹서버도 올리고, 어플리케이션 서버도 돌려보고, rdb도 돌려보고 이것저것 시도하게 된다. 여기까진 괜찮을 수도 있다.
하지만 프로젝트를 빌드하거나, 도커를 올리게 되면 100% 멈춰있는 터미널을 만나게 될 것이다.메모리 부족 문제다. 가상메모리(swap)를 설정해보자.
언제 가상메모리를 구성할까
부족할때 하면 된다. 그런데 메모리가 4G 미만이라면, 그냥 기본적으로 해두면 좋다고 생각하면 될 것 같다.
메모리 확인하기
다음과 같이 해본다
free -m
실 메모리 정보 밑에
swap 0 0 0
과 같이 나오면 스왑메모리가 없는 것이다. 만약에 있다면 또 만들 필요는 없다. 여러개의 스왑파일을 만들어놔도 동작하는 데에는 무방하지만, 보통은 그렇게 할 이유가 없기 때문이다.그럼에도 계속 진행해보고자 한다면 아래처럼 입력해서 가상메모리의 작동을 멈춰주자.
swapoff -a
swapfile 생성
아래와 같이 입력하면 된다.
fallocate -l 2G /swapfile
위의 구문은 2G 크기의 가상메모리 파일(
/swapfile
)을 생성하는 내용이다.
누구나 알고 있듯 가상메모리는 보조기억장치의 일부를 똑 떼어서 마치 주기억장치인 것처럼 활용하는 기술이다.그러다보니 마냥 커도 좋을게 없다. 왜냐면 현저히 느리고, 디스크 수명과도 연관이 있기 때문이다.
정답이 있는 건 아니다. 하지만 보통은 실 메모리의 2배 정도로 잡되, 4gb 미만이라면 2gb 정도는 기본으로 잡아주는 듯하다.
최소 256mb 이상으로 설정해야 한다. 당연히 디스크 크기보다 크게 잡을 수 없다.
리눅스 배포판마다 권고안이 있는 것 같으니 필요하다면 찾아보자.생성된 파일의 권한을 조정하자.
chmod 600 /swapfile mkswap /swapfile swapon /swapfile
시스템 리부팅 후에도 유지될 수 있도록 해주자.
vi /etc/fstab
기존의 내용에 추가해주자.
/swapfile swap swap 0 0
정리
끝이다. 삭제는 조립의 역순이다(?).
출처 및 참고문헌
'각종 학습 요약 > Web' 카테고리의 다른 글
프론트엔드(웹서버)와 백엔드(WAS)를 나눈 리버스 프록시 구성해보기(w/ubuntu, nginx) (0) 2023.06.20 Concept: REST API의 기본 개념 이해와 활용 (0) 2022.06.08 DNS의 작동 원리를 설명하는 9분 짜리 영상 (0) 2022.06.07 flex layout에 대한 간단한 이해 (3) 2022.04.30 HTML Page Layout : Flexbox로 레이아웃 잡기 (2) 2022.04.28 HTML Page Layout : 화면을 나누는 방법 (0) 2022.04.28