Hướng dẫn tạo swap trên centos 6/7/8

Cách đơn giản nhất để tăng bộ nhớ cho hệ điều hành centos là sử dụng swap file. Swap là một vùng lưu trữ trên đĩa cứng nơi mà hệ điều hành có thể lưu tạm dữ liệu cái mà không thể giữ lâu được ở trên bộ nhớ của máy (RAM).

Điều này cung cấp cho bạn khả năng tăng lượng thông tin mà máy chủ của bạn có thể lưu giữ trong bộ nhớ hoạt động của nó. Đọc từ swap và ghi vào swap chậm hơn so với sử dụng bộ nhớ, nhưng nó có thể mang lại an toàn tốt khi máy chủ của bạn sắp hết bộ nhớ.

Nếu không sử dụng Swap, ứng dụng của bạn có thể bị ngắt bởi hệ điều hành khi bộ nhớ không còn trống. Việc này có thể làm cho dịch vụ bạn đang cung cấp bị gián đoạn.

Sau đây là hướng dẫn chi tiết làm thể nào để tạo swap file.

Điều kiện tiên quyết

Trước khi bắt đầu thực hiện các bước theo hướng dẫn, bạn phải làm một số việc sau đây:

Bạn cần cài hệ điều hành Centos 7 với user bình thường nhưng phải được cấp quyền sudo.

Kiển tra thông tin hệ thống

Kiểm tra xem hệ thống có tồn tại file swap từ trước.

swapon -s

Nếu không có kết quả nào trả về thì có nghĩa là swap file không tồn tại

Bạn cũng có thể dùng lệnh sau để kiểm tra

free -m

Kết quả

             total       used       free     shared    buffers     cached
Mem:          3953        315       3637          8         11        107
-/+ buffers/cache:        196       3756
Swap:            0          0       4095

Swap có giá trị bằng 0 có nghĩa là chưa có swap file.

Kiểm tra dung lượng khả dụng của đĩa cứng

Để kiểm tra dung lượng khả dụng của đĩa cứng bạn dùng lênh sau

df -h

Kết quả

Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1        59G  1.5G   55G   3% /
devtmpfs        2.0G     0  2.0G   0% /dev
tmpfs           2.0G     0  2.0G   0% /dev/shm
tmpfs           2.0G  8.3M  2.0G   1% /run
tmpfs           2.0G     0  2.0G   0% /sys/fs/cgroup

Như vậy tại mục / dung lượng đãi cứng còn khoảng 55 Gigabyte.còn trống đến 97 %

Tạo một swap file

Bây giờ chúng ta đã biết được hệ thống đủ dung lượng để lưu được swap file. Chúng ta tạo swap file và đặt nó ở mục root (/). Cách tốt nhất là dùng công cụ “dd” để tạo swap file. Sau đây là lệnh mẫu để tạo swap file có dung lượng 4 GB

sudo dd if=/dev/zero of=/swapfile count=4096 bs=1MiB

Đợi một lúc cho đến khi hệ thống tạo xong file. Chúng ta hãy kiểm tra lại bằng lệnh sau

ls -lh /swapfile

Kết quả sẽ hiển thị như sau

-rw-r--r-- 1 root root 4.0G Oct 30 11:00 /swapfile

Bậy là đã xong bước tạo swap file.

Bật một Swap file

Bây giờ thì file swap của chúng ta đã được tạo. Nhưng hệ thống thì chưa biết file đó sẽ được sử dụng cho chức năng swap. Chúng ta cần cho hệ thống biết định dạng của file swap và bật nó lên.

Trước khi thực hiện việc bật swap, chúng ta cần chắc chắn là file swap chỉ có thể được đọc, ghi bằng tài khoản root. Nếu để cho user khác có thể đọc, ghi được file này sẽ là một nguy cơ rất lớn về bảo mật. Chúng ta có thể thực hiện việc khóa quyền truy cấp với công cụ “chmod” cụ thể như sau

sudo chmod 600 /swapfile

Kiểm tra lại kết quả một lần nữa cho chắc chắn là hệ thống của chúng ta sẽ được an toàn nào.

ls -lh /swapfile

Kết quả

-rw------- 1 root root 4.0G Oct 30 11:00 /swapfile

Nhìn có vẻ ổn rồi đây. Giờ thì tới bước tiếp theo, chúng ta sẽ báo cho hệ thống nhận file swap mới nhé.

sudo mkswap /swapfile

Kết quả

Setting up swapspace version 1, size = 4194300 KiB
no label, UUID=b99230bb-21af-47bc-8c37-de41129c39bf

Như vậy là swap file của chúng ta đã sẵn sàng để sử dụng rồi, hãy bật lên nào

sudo swapon /swapfile

Kiểm tra lại kết quả nhé

swapon -s

Kết quả

Filename                Type        Size    Used    Priority
/swapfile               file        4194300 0     -1

Kiểm tra lại bằng free -m cho ta kết quả như sau

             total       used       free     shared    buffers     cached
Mem:          3953        315       3637          8         11        107
-/+ buffers/cache:        196       3756
Swap:         4095          0       4095

Như vậy là chúng ta đã tạo được và bật file swap lên thành công rồi.

Để hệ thống luôn luôn sử dụng swap file

Cái file swap chúng ta vừa tạo ở bên trên chỉ dùng được trong thời điểm đó thôi, sau khi hệ điều hành khởi động lại thì nó không tự tạo swap file đâu nhé. Vậy làm thế nào để hệ điều hành tự tạo swap file sau khi khởi động lại nhỉ? Việc này cũng đơn giả thôi!

Hãy mở file /etc/fstab bằng cách sau

vim /etc/fstab

Nhấn phím i để bắt đầu thêm dòng sau vào cuối file

/swapfile   swap    swap    sw  0   0

Sau đó lưu lại bằng cách nhấn phím : sau đó nhập wq để lưu file.

Vậy là đã xong rồi, chúc các bạn thành công.

About the author

Trả lời