[리눅스] 스왚 파일을 만들어 시스템 메모리에 붙이기

(1) 스왚 메모리로 쓸 파일을 디스크에 할당하기

$ sudo dd if=/dev/zero of=/swapfile bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 7.27556 s, 148 MB/s
  1GB(1MB × 1024) 크기로 스왚(swap) 파일이 만들어진다. 블록 크기(bs=1M)와 개수(count=1024)를 아래처럼 바꾸어 만들어도 결과는 같다.
$ sudo dd if=/dev/zero of=/swapfile bs=1024K count=1024
$ sudo dd if=/dev/zero of=/swapfile bs=1K count=1048576
$ sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
※ 스왚 파일의 크기는 적어도 40KiB(40960바이트)는 되어야 한다.

(2) 파일 접근 권한 설정

$ sudo chmod 600 /swapfile
  파일 접근 권한을 바꾸지 않으면 스왚 파일을 시스템 메모리에 붙이는 단계(4)에서 오류가 난다.

(3) 스왚 파일 초기화

$ sudo mkswap /swapfile
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=d09c4955-c28d-4a01-9987-7dfe9d00f490
  여기에서 나오는 UUID 값이 /etc/fstab에 등록할 때에 필요할 수도 있다.

  아래처럼 스왚 파일 정보를 확인해 볼 수 있다.

$ sudo file /swapfile
/swapfile: Linux/i386 swap file (new style), version 1 (4K pages), size 262143 pages, no label, UUID=d09c4955-c28d-4a01-9987-7dfe9d00f490

(4) 스왚 파일을 시스템 메모리에 붙이기

$ sudo swapon /swapfile

  "swapoff /swapfile" 또는 "swapoff -a"로 스왚 파일(/swapfile) 또는 스왚 파일들을 시스템 메모리에서 뗄 수 있다.

  (2)에서 스왚 파일의 접근 권한을 600으로 바꾸지 않았다면 아래와 같이 오류가 난다.

$ swapon /swapfile
swapon: /swapfile: insecure permissions 0644, 0600 suggested.
swapon: /swapfile: swapon failed: Operation not permitted

  스왚 파일이 잘 쓰이고 있는지를 아래처럼 확인해 볼 수 있다.

$ swapon -s
Filename                                Type            Size    Used    Priority
/swapfile                               file            1048572 0       -2
$ free -m
              total        used        free      shared  buff/cache   available
Mem:            485         265           7          32         212         173
Swap:          1023           0        1023

(5) 영구 등록

 이렇게 하고 운영체제를 다시 시작하면, 새로 만든 스왚 파일은 사라지지 않지만 스왚 메모리에 붙지 않은 상태로 돌아간다. 운영체제를 다시 시작해도 스왚 파일이 가상 메모리로 쓰이게 하려면, /etc/fstab 파일의 아래에 다음 내용을 넣는다.

/swapfile swap swap defaults 0 0

※ 리눅스 종류에 따라 스왚 파일 이름(/swapfile) 자리에 앞에서 mkswap 명령을 썼을 때에 나온 UUID 값(UUID=d09c4955-c28d-4a01-9987-7dfe9d00f490)을 넣어 주어야 할 수도 있다.
※ 스왚 파일을 /etc/fstab에 등록하면 "swapon -a"로 시스템 메모리에 한꺼번에 붙일 수 있다.

2022/08/11 18:46 2022/08/11 18:46
글 걸기 주소 : 이 글에는 글을 걸 수 없습니다.

덧글을 달아 주세요