Tạo Swap trên CentOS 7 – Swap là một khoảng trống trên đĩa được sử dụng khi dung lượng bộ nhớ RAM vật lý đầy. Khi hệ thống Linux hết RAM, nó sẽ sử dụng Swap để thay thế.
Swap có thể ở dạng phân vùng trao đổi chuyên dụng hoặc swapfile. Trong hầu hết các trường hợp khi chạy CentOS trên máy ảo, không có phân vùng trao đổi, vì vậy tùy chọn duy nhất là tạoswapfile.
Trong bài viết này HOSTVN sẽ hướng dẫn các bạn cách tạo Swap trên CentOS 7.
Tạo Swap trên CentOS 7
1. Kiểm tra Swap
Việc đầu tiên cần làm là kiểm tra xem hệ thống của các bạn đã có Swap hay chưa bằng cách chạy lệnh sau:
swapon --show
Nếu bạn không thấy kết quả nào được trả về, điều đó có nghĩa là hệ thống của bạn chưa có swap. Ngược lại nếu bạn thấy kết quả như ảnh dưới đây nghĩa là hệ thống của bạn đã có Swap và bạn không cần làm gì thêm
2. Tạo Swap
Trong hướng dẫn này, HOSTVN sẽ thêm 2G swap, lưu ý rằng chỉ nên tạo swap tối đa gấp đôi dung lượng của Ram thật.
2.1. Bước 1: Tạo swapfile
Chạy lệnh sau để tạo swapfile trên hệ thống CentOS 7.
dd if=/dev/zero of=/swapfile bs=1024 count=2048k
Bạn có thể thay thế 2048k bằng dung lượng swapfile muốn tạo, ví dụ: 1024K sẽ là 1GB
2.2. Bước 2: Phân quyền cho swapfile
Để đảm bảo rằng chỉ người dùng root mới có thể đọc và ghi vào swap các bạn chạy lần lượt hai lệnh dưới đây
chown root:root /swapfile chmod 600 /swapfile
2.3. Bước 3: Kích hoạt swap
Tiếp theo, các bạn chạy lệnh sau để tạo phân vùng swap:
mkswap /swapfile
Chạy lệnh sau để kích hoạt swap:
swapon /swapfile
2.4. Bước 4: Thiết lập tự kích hoạt swapfile mỗi khi khởi động lại hệ thống
Để phân vùng swap không bị mất mỗi khi khởi động lại hệ thống các bạn cần chỉnh sửa file /etc/fstab bằng cách chạy lệnh sau:
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
Để kiểm tra xem swap đã được kích hoạt hay chưa hãy dùng lệnh sau:
free -h
3. Điều chỉnh giá trị Swappiness
Swappiness là một thuộc tính nhân Linux xác định tần suất hệ thống sẽ sử dụng swap. Swappiness có thể có giá trị từ 0 đến 100.
Giá trị Swappiness mặc định trên CentOS 7 là 30. Bạn có thể kiểm tra giá trị Swappiness hiện tại bằng cách nhập lệnh sau:
cat /proc/sys/vm/swappiness
Điều này có nghĩa hệ thống sẽ bắt đầu sử dụng swap khi Ram thật chỉ còn trống 30%. Để đặt giá trị swappiness thành 10, hãy chạy lệnh sau:
sysctl vm.swappiness=10
Để tham số này không bị thay đổi mỗi khi khởi động lại, hãy mở file /etc/sysctl.conf
nano /etc/sysctl.conf
Thêm dòng sau vào cuối file và lưu lại
vm.swappiness=10
Tiếp theo các bạn mở file /usr/lib/tuned/virtual-guest/tuned.conf tìm và sửa vm.swappiness
nano /usr/lib/tuned/virtual-guest/tuned.conf
4. Xoá Swap
Để hủy kích hoạt và xóa tệp hoán đổi, hãy làm theo các bước sau:
- Đầu tiên để hủy kích hoạt swap các bạn chạy lệnh sau:
swapoff -v /swapfile
- Tiếp theo mở file /etc/fstab và xoá dòng dưới đây
/swapfile none swap sw 0 0
- Cuối cùng, xóa swapfile
rm /swapfile
5. Kết luận
Qua bài viết này HOSTVN đã hướng dẫn các bạn cách tạo Swap trên CentOS 7. Nếu có bất kỳ ý kiến đóng góp nào các bạn có thể để lại bình luận ở bên dưới. Ngoài ra các bạn có thể xem thêm Hướng dẫn cách cài đặt LEMP trên Centos 7.