Lệnh swapon trong Linux

Giới thiệu

Trong lab này, bạn sẽ học cách quản lý swap space trong Linux bằng lệnh swapon. Swap space là một vùng được dành riêng trên ổ cứng mà hệ điều hành có thể sử dụng khi hệ thống hết RAM. Bạn sẽ bắt đầu bằng cách hiểu khái niệm về swap space, sau đó kiểm tra việc sử dụng và cấu hình swap space hiện tại, và cuối cùng là tạo và kích hoạt một swap file mới. Lab này bao gồm các ví dụ thực tế và cung cấp hướng dẫn từng bước để giúp bạn quản lý hiệu quả swap space trên hệ thống Linux của mình.

Hiểu khái niệm về Swap Space trong Linux

Trong bước này, bạn sẽ tìm hiểu về khái niệm swap space trong Linux. Swap space là một vùng được dành riêng trên ổ cứng mà hệ điều hành có thể sử dụng khi hệ thống hết RAM (Random Access Memory). Khi hệ thống yêu cầu nhiều bộ nhớ hơn RAM có sẵn, nó có thể tạm thời chuyển các trang không hoạt động từ RAM sang swap space, giải phóng RAM cho các tiến trình hoạt động hơn.

Swap space có thể là một phân vùng chuyên dụng trên ổ cứng hoặc một swap file. Swap partition thường được tạo trong quá trình cài đặt hệ điều hành, trong khi swap file có thể được tạo và quản lý sau.

Việc sử dụng swap space giúp ngăn hệ thống hết bộ nhớ, điều này có thể dẫn đến giảm hiệu suất hoặc thậm chí là treo hệ thống. Tuy nhiên, việc sử dụng quá nhiều swap space cũng có thể có tác động tiêu cực đến hiệu suất hệ thống, vì việc truy cập dữ liệu trên ổ cứng chậm hơn nhiều so với truy cập dữ liệu trong RAM.

Để kiểm tra việc sử dụng và cấu hình swap space hiện tại, bạn có thể sử dụng lệnh free:

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           1.9Gi       144Mi       1.6Gi       2.7Mi       141Mi       1.6Gi
Swap:          2.0Gi          0B       2.0Gi

Trong ví dụ đầu ra, hệ thống có 1.9 GiB RAM và 2.0 GiB swap space được cấu hình.

Kiểm tra việc sử dụng và cấu hình Swap Space hiện tại

Trong bước này, bạn sẽ học cách kiểm tra việc sử dụng và cấu hình swap space hiện tại trên hệ thống Linux của mình.

Đầu tiên, bạn có thể sử dụng lệnh free để hiển thị mức sử dụng bộ nhớ hiện tại, bao gồm cả swap space:

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           1.9Gi       144Mi       1.6Gi       2.7Mi       141Mi       1.6Gi
Swap:          2.0Gi          0B       2.0Gi

Đầu ra cho thấy hệ thống có 1.9 GiB RAM và 2.0 GiB swap space, và hiện tại, 0 byte swap space đang được sử dụng.

Bạn cũng có thể sử dụng lệnh swapon để biết thêm thông tin chi tiết về cấu hình swap space:

$ sudo swapon --show
NAME      TYPE SIZE USED PRIO
/dev/sda2 partition 2.0G 0B -2

Lệnh này hiển thị các thiết bị swap space, loại, kích thước, mức sử dụng hiện tại và mức độ ưu tiên của chúng. Trong ví dụ này, swap space được cấu hình dưới dạng một partition có kích thước 2.0 GB và độ ưu tiên là -2.

Để có được thông tin chi tiết hơn, bạn có thể sử dụng lệnh cat để đọc nội dung của file /proc/swaps:

$ cat /proc/swaps
Filename				Type		Size	Used	Priority
/dev/sda2                               partition	2097148	0	-2

File này cung cấp thông tin tương tự như lệnh swapon --show, nhưng ở một định dạng khác.

Tạo và kích hoạt một Swap File

Trong bước này, bạn sẽ học cách tạo và kích hoạt một swap file trên hệ thống Linux của mình.

Đầu tiên, hãy tạo một swap file với kích thước 1 GB:

$ sudo fallocate -l 1G /swapfile
$ sudo chmod 600 /swapfile

Lệnh fallocate được sử dụng để tạo một file có kích thước được chỉ định (1 GB trong trường hợp này), và lệnh chmod đặt các quyền thích hợp cho swap file.

Tiếp theo, bạn cần định dạng swap file và kích hoạt nó:

$ sudo mkswap /swapfile
$ sudo swapon /swapfile

Lệnh mkswap khởi tạo swap file, và lệnh swapon kích hoạt swap file.

Để xác minh rằng swap file hiện đang được sử dụng, bạn có thể sử dụng lại lệnh free:

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           1.9Gi       144Mi       1.6Gi       2.7Mi       141Mi       1.6Gi
Swap:          3.0Gi          0B       3.0Gi

Đầu ra cho thấy tổng swap space hiện là 3.0 GB, bao gồm swap file 1 GB mà bạn vừa tạo.

Để làm cho swap file tồn tại vĩnh viễn sau khi khởi động lại hệ thống, bạn cần thêm một mục cho nó vào file /etc/fstab:

$ echo '/swapfile swap swap defaults 0 0' | sudo tee -a /etc/fstab

Thao tác này thêm một dòng vào file /etc/fstab sẽ tự động kích hoạt swap file khi hệ thống khởi động.

Tóm tắt

Trong lab này, bạn đã học về khái niệm swap space trong Linux, là một vùng được dành riêng trên ổ cứng mà hệ điều hành có thể sử dụng khi hệ thống hết RAM. Bạn cũng đã học cách kiểm tra việc sử dụng và cấu hình swap space hiện tại bằng lệnh free. Cuối cùng, bạn đã học cách tạo và kích hoạt một swap file, điều này có thể hữu ích nếu bạn cần thêm swap space ngoài những gì được cung cấp bởi một swap partition.

400+ câu lệnh phổ biến trong Linux