Swap file là gì?

Swap file là một không gian trên ổ cứng và được sử dụng như 1 virtrual memory (bộ nhớ ảo) trên máy chủ, cho phép các máy chủ có bộ nhớ thấp có thể hoạt động tốt mà không bị cảnh báo hết bộ nhớ hoặc làm cho máy chủ vượt qua các điều kiện kiểm tra về bộ nhớ đối với 1 số ứng dụng bắt buộc RAM phải cao hơn RAM hiện tại của Server của bạn (ví dụ Discourse yêu cầu ram phải từ 2Gb nhưng máy chủ của bạn chỉ có 1 GB).

Các thực hiện như sau:

Đầu tiên bạn tạo 1 Swapfile trống

sudo install -o root -g root -m 0600 /dev/null /swapfile

Tạo ra 1 file 1GB đặt tên là swapfile

dd if=/dev/zero of=/swapfile bs=1k count=1024k

Bạn có thể tạo ra swapfile 2GB hoặc 3GB tuỳ bạn, ở đây tôi tạo ra 1 swapfile 1GB
Tiếp theo bạn cần báo cho linux biết rằng đây là swapfile

mkswap /swapfile

kích hoạt swapfile

swapon /swapfile

Thêm swapfile vào bảng hệ thống, và nó sẽ thực hiện khi khởi động lại máy chủ.

echo "/swapfile       swap    swap    auto      0       0" | sudo tee -a /etc/fstab

Cuối cùng, chúng ta thiết lập swappiness là 10, điều này có nghĩa swapfile chỉ được sử dụng như 1 bộ nhớ đệm khẩn cấp.

sudo sysctl -w vm.swappiness=10
echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf