1) dd 명령어
sudo dd if=/dev/zero of=/swapfile bs=128M count=16
위 명령을 수행하면 null 문자로 채워진 2G의 swapfile을 루트 밑에 만든다.
나는 AWS에서 권장하는 스왑 용량으로 설정을 하였고, bs는 한번에 읽을 블록 크기인데 인스턴스에서 사용 가능한 메모리보다 크다면 오류가 발생한다고 하니 알맞게 설정하자.
2) fallocate 명령어
sudo fallocate -l 2G /swapfile
위 명령어도 dd 명령어와 같이 루트 밑에 2G의 스왑 파일을 만든다.
time sudo fallocate -l 2G /swapfile
명령어를 통해 속도차이를 비교할 수 있다.
최초에 설정한다면 권한이없다고 나온다.
sudo chmod 600 /swapfile
권한 설정 후에
sudo mkswap /swapfile
mkswap 명령어는 지정한 파일이나 파티션에 스왑 공간을 설정하도록 해주는 명령어다.
sudo swapon /swapfile
이전에 mkswap 명령어로 설정한 스왑 공간을 swapon 명령어로 활성화 시켜 사용할 수 있게 한다.
재부팅시에 자동으로 활성화 되지 않는다고 하여 인스턴스를 재부팅 시켜보았더니 스왑 공간은 설정되어 있는데 활성화가 되어 있지 않다.
만약에 재부팅을 해도 자동으로 활성화 되길 원한다면 /etc/fstab파일에 다음을 추가 해주어야 한다.
/swapfile swap swap defaults 0 0