Dưới đây là giải thích chi tiết về các bước tạo swap RAM bằng file swap trên Linux theo nội dung script của bạn:
1. Tạo file swap
-
Lệnh:
Giải thích:
Lệnh trên tạo một file có kích thước 4GB tại đường dẫn/swap.img
. File này sẽ được dùng như một vùng swap. -
Kiểm tra file:
Giải thích:
Lệnh này liệt kê thông tin file theo định dạng “human readable” để bạn kiểm tra kích thước và trạng thái file đã tạo.
2. Thiết lập quyền truy cập
-
Lệnh:
Giải thích:
Lệnh này thay đổi quyền của file/swap.img
thành 600, tức chỉ có chủ (root) mới có quyền đọc và ghi. Điều này giúp bảo mật file swap của bạn. -
Xác nhận lại quyền:
Giải thích:
Kiểm tra lại quyền của file sau khi đã thay đổi.
3. Chuyển file thành vùng swap
-
Tạo swap trên file:
Giải thích:
Lệnhmkswap
định dạng file/swap.img
thành vùng swap, chuẩn bị cho việc sử dụng nó như một bộ nhớ ảo. -
Kích hoạt swap:
Giải thích:
Lệnhswapon
bật file swap vừa tạo, cho phép hệ thống sử dụng nó khi cần thiết.
4. Cấu hình tự động kích hoạt swap khi khởi động
-
Thêm mục vào fstab:
Giải thích:
Dòng này ghi vào file/etc/fstab
để tự động kích hoạt file swap mỗi khi hệ thống khởi động. Mục nhập gồm:/swap.img
: file swap.none
: không gán mountpoint cụ thể.swap
: kiểu mount là swap.sw
: các tùy chọn mặc định cho swap.0 0
: các tham số dùng cho dump và fsck.
-
Xem lại nội dung fstab:
Giải thích:
Xem lại file cấu hình để đảm bảo dòng cấu hình swap đã được thêm vào đúng cách.
5. Điều chỉnh tham số swappiness
Tham số swappiness xác định mức độ ưu tiên của hệ thống khi sử dụng swap so với RAM vật lý. Giá trị thấp (ví dụ 10) nghĩa là hệ thống ưu tiên sử dụng RAM và chỉ chuyển dữ liệu sang swap khi thực sự cần thiết.
-
Kiểm tra giá trị hiện tại:
Giải thích:
Lệnh này hiển thị giá trị swappiness hiện tại của hệ thống. -
Thay đổi giá trị tạm thời:
Giải thích:
Lệnh này thay đổi giá trị swappiness của kernel thành 10, nhưng thay đổi này chỉ có hiệu lực cho phiên làm việc hiện tại. -
Lưu thay đổi vĩnh viễn:
Giải thích:
Dòng lệnh này thêm cấu hìnhvm.swappiness=10
vào file/etc/sysctl.conf
để khi khởi động lại hệ thống, giá trị này được áp dụng tự động.
Lưu ý: Trong một số trường hợp, do vấn đề về quyền của lệnhecho
kết hợp với redirection, bạn có thể dùng cách thay thế sau để đảm bảo ghi file với quyền root:
Tổng kết
Script trên thực hiện các bước sau:
- Tạo một file swap có kích thước 4GB.
- Đảm bảo quyền truy cập của file chỉ dành cho root.
- Định dạng file thành vùng swap và kích hoạt nó.
- Cấu hình hệ thống tự động sử dụng file swap khi khởi động.
- Điều chỉnh tham số swappiness để tối ưu hiệu năng sử dụng bộ nhớ.
Quá trình này giúp hệ thống Linux có thêm bộ nhớ ảo hỗ trợ cho các tác vụ khi bộ nhớ vật lý cạn kiệt, từ đó cải thiện hiệu năng tổng thể.