Tìm hiểu về tệp hoán đổi (swap file) trên Linux | Học trực tuyến CNTT, học lập trình từ cơ bản đến nâng cao

Tìm hiểu về tệp hoán đổi (swap file) trên Linux

Chia sẻ kiến thức 06/03/2022

Các tệp hoán đổi (swap file) rất quan trọng nếu bạn đang chạy một hệ thống có RAM thấp. Đây là mọi thứ bạn cần biết về các tệp hoán đổi.

 

Hướng dẫn này sẽ giới thiệu bạn làm quen với tệp hoán đổi (swap file) trong Linux bằng cách định nghĩa tệp hoán đổi là gì và vai trò của nó trong việc giữ cho hệ thống của bạn ổn định.

Tệp hoán đổi là gì?

Tệp hoán đổi trong Linux là tệp trên đĩa cứng (hard disk) mà nhân Linux sử dụng để lưu trữ dữ liệu biến đổi (variable data) của các ứng dụng đang chạy trên máy tính của bạn. Quá trình hoán đổi (swapping) chịu trách nhiệm chuyển dữ liệu sang tệp hoán đổi khi Bộ nhớ truy cập ngẫu nhiên (RAM) không đủ.

Hãy tưởng tượng bạn đang chạy một ứng dụng sử dụng nhiều bộ nhớ và hệ thống bắt đầu sử dụng 100% RAM. Lúc này hệ điều hành Linux sẽ sử dụng một tệp hoán đổi để tránh bộ nhớ RAM bị lấp đầy và làm cho hệ thống bị ‘đơ’ hoặc gặp sự cố.

Lưu ý : Đọc dữ liệu từ tệp hoán đổi chậm hơn một chút so với đọc trực tiếp từ RAM nhưng như thế còn tốt hơn là để hệ thống gặp sự cố.

Xem tệp hoán đổi bằng swapon

Để nhận thông tin về tệp hoán đổi trên hệ thống của bạn, hãy chạy lệnh sau:

swapon

Đầu ra của lệnh trên sẽ tương tự như ảnh bên dưới.

Các tệp hoán đổi (swap file) rất quan trọng nếu bạn đang chạy một hệ thống có RAM thấp. Đây là mọi thứ bạn cần biết về các tệp hoán đổi.

Kết quả trên hiển thị rằng thư mục /root chứa tệp hoán đổi của hệ thống của bạn, với tên gọi là swapfile. Ngoài ra, kích thước của tệp hoán đổi là 2GB và hiện tại, hệ thống đang sử dụng khoảng 41 megabyte trong số đó. 

Vì RAM và không gian hoán đổi (swap space) hoạt động cùng nhau để lưu trữ dữ liệu tạm thời, bạn có thể muốn có thông tin chi tiết về cả hai. Bạn có thể làm như vậy bằng cách sử dụng lệnh free:

free -h

Cách tạo tệp hoán đổi trên Linux

Nếu bạn đang gặp vấn đề về hiệu suất với RAM thì bạn nên cân nhắc việc tạo hoặc tăng kích thước tệp hoán đổi của mình.

Nếu bạn có một hệ thống có RAM thấp, ví dụ: 2GB, bạn nên tạo một tệp hoán đổi có kích thước gấp đôi RAM của bạn, tức là 4GB.

Mặt khác, nếu dung lượng RAM của bạn đã đủ, chẳng hạn như 8GB thì tệp hoán đổi của bạn có thể chiếm 25% RAM, tức là 2GB vì RAM của bạn có thể chứa nhiều dữ liệu biến đổi của ứng dụng hơn.

Trước khi bạn có thể tạo tệp hoán đổi mới, hãy đảm bảo tắt tệp hoán đổi hiện tại của bạn :

sudo swapoff /swapfile

Bây giờ, hãy tạo một tệp hoán đổi có kích thước 2GB bằng cách sử dụng lệnh fallocate .

sudo fallocate -l 2G /swapfile

Nếu bạn không có tệp hoán đổi, lệnh nói trên sẽ tạo một tệp cho bạn, nhưng trong trường hợp bạn đã có, nó sẽ ghi đè tệp hiện có.

Điều chỉnh Swappiness trên Linux

Swappiness là một giá trị mà nhân Linux sử dụng để xác định tần suất RAM sẽ sử dụng tệp hoán đổi. Theo mặc định, giá trị được đặt thành 60. Giá trị càng cao, RAM của bạn sẽ càng sử dụng tệp hoán đổi thường xuyên hơn, điều này rất tố cho những hệ thống có RAM thấp. Giá trị này có thể nằm trong khoảng từ 0 đến 100.

Để xem giá trị swappiness, hãy chạy lệnh sau:

cat /proc/sys/vm/swappiness

Để tạm thời thay đổi giá trị swappiness trên hệ thống, ví dụ: 20, hãy sử dụng lệnh sau:

sudo sysctl vm.swappiness=20

Lưu ý : Giá trị này sẽ được đặt lại về mặc định sau khi hệ thống khởi động lại.

Để giữ cho giá trị này không thay đổi, bạn nên thêm dòng vm.swappiness=20 ở cuối tệp cấu hình etc/sysctl.conf.

Khởi động lại hệ thống của bạn để các thay đổi có hiệu lực với lệnh:

reboot

Cách xóa tệp hoán đổi

Để xóa tệp hoán đổi mà bạn không cần nữa, trước tiên hãy tắt tệp đó bằng cách sử dụng swapoff, sau đó sử dụng lệnh rm để xóa tệp của bạn .

sudo swapoff /swapfile
sudo rm /swapfile

Sử dụng các phân vùng (partition) chuyên dụng để hoán đổi

Tệp hoán đổi giúp cho hệ thống có hiệu suất tốt hơn nhiều vì nó sẽ ngăn hệ thống gặp sự cố khi chạy các ứng dụng sử dụng nhiều bộ nhớ. Hy vọng bài viết này cung cấp những kiến thức cần thiết cho bạn về loại tệp quan trọng này. 

Dịch từ: https://www.makeuseof.com/swap-files-in-linux/

Vân Nguyễn

ĐĂNG KÝ TƯ VẤN HỌC LẬP TRÌNH TẠI FUNiX

Bình luận (
0
)

Bài liên quan

  • Tầng 0, tòa nhà FPT, 17 Duy Tân, Q. Cầu Giấy, Hà Nội
  • info@funix.edu.vn
  • 0782313602 (Zalo, Viber)        
Chat Button
Chat với FUNiX GPT ×

yêu cầu gọi lại

error: Content is protected !!