
스왑 파티션을 생성하고 사용하는 방법을 알고 있는데, 파일도 사용할 수 있나요?
Linux 시스템에서 스왑 파일을 만드는 방법은 무엇입니까?
답변1
꼭 확인해야 할 기본 정보부터 살펴볼까요?vm.swappiness
60(기본값)보다 더 허용 가능한 값으로 신중하게 설정하면 문제가 없습니다. 이 명령은 일반 사용자로 실행할 수 있습니다.
sysctl vm.swappiness
예를 들어 32GB RAM 서버와 32GB 스왑 파일이 있습니다.vm.swappiness
= 1. Wikipedia에서 인용:
vm.swappiness
= 1: 커널 버전 3.5 이상, Red Hat 커널 버전 2.6.32-303 이상: 완전히 비활성화하지 않은 최소 스왑 양입니다.
이 예에서는 스왑 파일을 만듭니다.
8GB 크기,
/
(루트 디렉터리) 에 위치합니다 .
필요에 따라 이 두 가지를 변경하십시오.
터미널을 열고
root
(su
);당신이 가지고 있다면sudo
활성화되면 다음을 수행할 수도 있습니다sudo -i
.man sudo
모든 옵션에 대해):sudo -i
스왑 파일을 위한 공간을 할당하십시오:
dd if=/dev/zero of=/swapfile bs=1G count=8
또는 시스템에서 지원하는 경우 status=progress
명령줄에 추가할 수 있습니다.
여기에 지정된 크기는 G
GiB(1024의 배수) 단위입니다.
답변2
$ sudo fallocate -l 1G /swapfile
$ sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
$ sudo chmod 600 /swapfile
$ sudo mkswap /swapfile
$ sudo swapon /swapfile
편집자 주: 1단계와 2단계는 서로 바꿔서 사용할 수 있습니다.
답변3
16GB SWAP 메모리를 생성하는 스크립트를 확인하십시오:
#!/bin/bash
#find Free
free -h
#Checking availability space
df -h
#swap Off
sudo swapoff /swapfile
#Allocate swap
sudo fallocate -l 16G /swapfile
#correct amount of space was reserved
ls -lh /swapfile
#file only accessible to root
sudo chmod 600 /swapfile
#amount of space was reserved for the root
ls -lh /swapfile
#now mark the file as swap space
sudo mkswap /swapfile
#Swap On
sudo swapon /swapfile
#swap Show
sudo swapon --show
#statment
echo -e "\n\n Swap 16Gb done"
exit 0