8 lệnh để giám sát sử dụng không gian trao đổi (swap) trong Linux

Quản lý bộ nhớ Linux là một khía cạnh cần thiết của mỗi quản trị hệ thống để cải thiện hiệu suất của hệ thống Linux. Luôn luôn là một thói quen tốt để giám sát việc sử dụng không gian trao đổi (swap) trong Linux để đảm bảo hệ thống hoạt động phù hợp với yêu cầu bộ nhớ của nó. Do đó, trong bài viết này, chúng ta sẽ tìm hiểu cách giám sát sử dụng không gian trao đổi (swap) trong hệ thống Linux.

Không gian trao đổi (Swap space) là gì?

Swap space là một lượng bộ nhớ vật lý hiếm hoi được cấp phát để sử dụng bởi hệ điều hành khi bộ nhớ khả dụng đã được sử dụng hết. Đó là quá trình quản lý bộ nhớ liên quan đến việc trao đổi các phần của bộ nhớ giữa bộ nhớ vật lý và lưu trữ.

Trên hầu hết các bản phân phối Linux đều khuyến nghị bạn thiết lập swap space khi cài đặt hệ điều hành. Số lượng swap space bạn có thể thiết lập cho hệ thống Linux của mình có thể phụ thuộc vào kiến trúc và phiên bản kernel.

Làm cách nào để kiểm tra mức sử dụng không gian hoán đổi trong Linux?

Sử dụng lệnh swapon để kiểm tra sử dụng swap trong Linux

Lệnh swapon giúp bạn xác định các thiết bị mà trên đó sẽ thực hiện phân trang và trao đổi. Dưới đây là một số tùy chọn quan trọng:

Để xem tất cả các thiết bị được đánh dấu là swap trong tệp /etc/fstab, bạn có thể sử dụng tùy chọn --all. Tuy nhiên, các thiết bị đã hoạt động như swap space sẽ bị bỏ qua.

# swapon --all

Nếu bạn muốn xem tổng kết về việc sử dụng swap space theo thiết bị, hãy sử dụng tùy chọn --summary như sau:

# swapon --summary

Filename Type Size Used Priority
/dev/sda10                              partition 8282108 0 -1

Sử dụng tùy chọn --help để xem thông tin trợ giúp hoặc mở trang manpage để biết thêm tùy chọn sử dụng.

8 lệnh Linux để giám sát sử dụng không gian trao đổi

Kiểm tra mức sử dụng hoán đổi trong Linux

Sử dụng /proc/swaps - Đo lường không gian trao đổi (swap space)

Hệ thống tệp /proc là một hệ thống tệp ảo đặc biệt trong Linux, còn được gọi là hệ thống tệp pseudo thông tin quá trình.

Thực chất, nó không chứa các tệp 'thực' mà chứa thông tin hệ thống chạy, ví dụ như bộ nhớ hệ thống, thiết bị được gắn kết, cấu hình phần cứng và nhiều hơn nữa. Do đó, bạn cũng có thể coi nó như một cơ sở kiểm soát và thông tin cho kernel.

Để hiểu thêm về hệ thống tệp này, hãy đọc bài viết của chúng tôi: Hiểu hệ thống tệp /proc trong Linux.

Để kiểm tra thông tin sử dụng swap, bạn có thể xem tệp /proc/swaps bằng lệnh cat.

# cat /proc/swaps

Filename Type Size Used Priority
/dev/sda10                              partition 8282108 0 -1

Sử dụng lệnh free để hiển thị thông tin sử dụng swap

Lệnh 'free' được sử dụng để hiển thị thông tin về lượng bộ nhớ hệ thống còn trống và đã sử dụng. Bằng cách sử dụng lệnh 'free' với tùy chọn '-h', bạn có thể hiển thị đầu ra dưới dạng dễ đọc cho con người.

# free -h

             total       used       free     shared    buffers     cached
Mem:          7.7G       4.7G       3.0G       408M       182M       1.8G
-/+ buffers/cache:       2.7G       5.0G
Swap:         7.9G         0B       7.9G

Từ đầu ra ở trên, bạn có thể thấy rằng dòng cuối cung cấp thông tin về không gian swap của hệ thống.

Sử dụng lệnh top

Lệnh top hiển thị hoạt động của bộ xử lý trên hệ thống Linux của bạn và các tác vụ được quản lý bởi kernel theo thời gian thực. Để kiểm tra việc sử dụng không gian swap bằng cách sử dụng lệnh 'top', hãy chạy lệnh sau:

# top

8 lệnh Linux để giám sát sử dụng không gian trao đổi

Kiểm tra không gian hoán đổi bằng lệnh top

Sử dụng lệnh atop

Lệnh atop là một công cụ giám sát hệ thống thông báo về hoạt động của các tiến trình khác nhau. Tuy nhiên, điều quan trọng là nó cũng hiển thị thông tin về không gian bộ nhớ trống và đã sử dụng.

# atop

8 lệnh Linux để giám sát sử dụng không gian trao đổi

Atop Kiểm tra sử dụng hoán đổi

Sử dụng lệnh htop 

Lệnh htop được sử dụng để xem các tiến trình trong chế độ tương tác và cũng hiển thị thông tin về việc sử dụng bộ nhớ.

# htop

8 lệnh Linux để giám sát sử dụng không gian trao đổi

Sử dụng lệnh htop để xem tiến trình ở chế độ tương tác

Sử dụng lệnh Glances

Đây là một công cụ giám sát hệ thống đa nền tảng, hiển thị thông tin về các tiến trình đang chạy, tải CPU, sử dụng không gian lưu trữ, sử dụng bộ nhớ, sử dụng không gian swap và nhiều thông tin khác.

# glances

8 lệnh Linux để giám sát sử dụng không gian trao đổi

Lệnh glances dùng để kiểm tra việc sử dụng không gian swap

Sử dụng lệnh vmstat 

Lệnh vmstat được sử dụng để hiển thị thông tin về thống kê bộ nhớ ảo, thông tin về các tiến trình đang chạy, sử dụng bộ nhớ, hoạt động CPU, trang trí,...

Để cài đặt vmstat trên hệ thống Linux của bạn, chạy lệnh sau:

$ sudo apt install vmstat          [On Debian, Ubuntu and Mint]
$ sudo yum install vmstat          [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
$ sudo emerge -a sys-apps/vmstat   [On Gentoo Linux]
$ sudo apk add vmstat              [On Alpine Linux]
$ sudo pacman -S vmstat            [On Arch Linux]
$ sudo zypper install vmstat       [On OpenSUSE]  

Sau khi cài đặt vmstat, chạy lệnh sau:

# vmstat

8 lệnh Linux để giám sát sử dụng không gian trao đổi

Kiểm tra sử dụng swap bằng lệnh vmStat

Bạn cần lưu ý các thông số sau trong trường "swap" từ đầu ra của lệnh này:

  • si: Số lượng bộ nhớ được ghi vào từ đĩa swap (s).
  • so: Số lượng bộ nhớ được ghi ra đĩa swap (s).

Đây là những phương pháp dễ dàng mà bạn có thể sử dụng và thực hiện để theo dõi việc sử dụng không gian swap trên Linux. Hy vọng bài viết này sẽ mang đến những thông tin hữu ích cho bạn trong công việc.