Tạo swapfile trên ext4 Filesystem

 



Trước khi bắt đầu

Swap không nên được coi là sự thay thế cho bộ nhớ vật lý, nó có tốc độ truy cập thấp hơn bộ nhớ vật lý. Nếu máy của bạn thường xuyên hết bộ nhớ RAM, bạn nên nâng cấp thêm ram RAM.

Thông thường sau khi cài hệ điều hành sẽ được tạo sẵn luôn file swap rồi, nên là nếu muốn xóa hoặc thay đổi kích thước thì cần phải xóa file swap hiện tại đi rồi tạo file mới với kích thước mong muốn nhé. Chuyển đến mục xóa swap.

Nhìn chung, kích thước của swap file phụ thụộc vào số RAM máy bạn có:

  • Ít hơn 2 GB RAM - gấp đôi số lượng RAM.
  • Từ 2 đến 8 GB RAM - bằng với số lượng RAM.
  • Nhiều hơn 8 GB RAM - tối thiểu 4 GB Swap.

Tạo Swap File

Trong ví dụ này, mình sẽ tạo 8GB swap file. Nếu bạn muốn thay đổi số lượng khác, chỉ cần thay 8G với số lượng swap bạn muốn.

Đầu tiên, tạo một file sử dụng cho swap:

sudo fallocate -l 8G /swapfile

Đặt file permissions bằng 600 để ngăn người dùng bình thường truy cập file swap:


sudo chmod 600 /swapfile

Tạo Linux swap area trên file đó:


sudo mkswap /swapfile

output

Setting up swapspace version 1, size = 8 GiB (8589930496 bytes) 

no label, UUID=fde7d2c8-06ea-400a-9027-fd731d8ab4c8


Kích hoạt swap file bằng cách chạy lệnh này:


sudo swapon /swapfile

Để áp dụng khi khởi động máy, mở file /etc/fstab:


sudo nano /etc/fstab
và dán dòng này vào nếu chưa có, có rồi thi bỏ qua:

/swapfile swap swap defaults 0 0

Để xem swap file được kích hoạt hay chưa, gõ lệnh sau:


sudo swapon --show

output

NAME      TYPE      SIZE  USED PRIO 

/swapfile file        2G    0B   -1

Hoặc gõ tiếp lệnh này cũng được

sudo free -h
output

              total        used        free      shared     buff/cache   available 

Mem:     15Gi   2,0Gi   11Gi   142Mi    1,8Gi       13

Swap:         8.0Gi       0B       8Gi



Điều chỉnh giá trị Swappiness

Swappiness là một thụộc tính của Linux kernel xác định tần suất hệ thống sẽ sử dụng swap space. Nó có thể có giá trị từ 0 đến 100. 

Trên Ubuntu, mặc định swappiness có giá tri 60. Bạn có thể kiểm tra giá trị hiện tại bằng cách gõ lệnh sau:

cat /proc/sys/vm/swappiness

Mặc dù giá trị swappiness là 60 là OK đối với hầu hết các hệ thống Linux, bạn có thể đặt giá trị thấp hơn

Ví dụ, để đặt giá trị swappiness bằng 10, chạy lệnh:

sudo sysctl vm.swappiness=10

Để áp dụng mỗi lần khởi động, thêm dòng này vào cuối file /etc/sysctl.conf:

vm.swappiness=10


Xóa Swap File

Để hủy kích hoạt và xóa swap file, thực hiện các bước:

Đầu tiên, hủy kích hoạt swap space:

sudo swapoff -v /swapfile

Sau đó, xóa mục /swapfile swap swap defaults 0 0 trong file  /etc/fstab, nhưng mà thôi đừng xóa, để dấu # đầu dòng là được, phòng trường hợp về sau lại thích để lại swap đỡ phải mất công tìm, trông nó thế này:

#/swapfile swap swap defaults 0 0

Cuối cùng, xóa tệp swapfile sử dụng lệnh rm:

sudo rm /swapfile

Nếu có vấn đề gì thì để lại bình luận bên dưới nhé <3


Đăng nhận xét

0 Nhận xét