Tôi cần nhận mức sử dụng bộ nhớ theo% từ vmstat, nhưng tôi không hiểu lắm về một số con số liên quan đến bộ nhớ được hiển thị trong vmstat.
Đặc biệt, đưa ra một đầu ra như thế này
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 139728 45396 199128 1236360 1 2 4 622 3 1 51 4 43 2 0
Số lượng tổng bộ nhớ của hệ thống là gì? Có phải là 'swpd' + 'miễn phí' + 'buff' + 'cache', tổng cộng là 1620612 không?
Dung lượng bộ nhớ miễn phí của hệ thống là bao nhiêu? Có phải 45394, như được hiển thị trong cột 'miễn phí' không?
Vấn đề là họ không thêm hoặc thậm chí nhìn gần với những gì 'top' đã báo cáo. Đầu ra của 'top' mà tôi mất cùng thời gian với 'vmstat' ở trên là:
[...]
Mem: 4059616k total, 3965504k used, 94112k free, 200020k buffers
[...]
Vì vậy, ... tôi giả sử phải có các số / tùy chọn ẩn trong 'vmstat' mà tôi không biết?
Tôi cần sử dụng 'vmstat' cho mục đích này chứ không phải các lệnh khác vì đây là những gì yêu cầu đã nêu.
Rất lý tưởng, điều tôi muốn đạt được từ 'vmstat' là mức sử dụng% bộ nhớ, như trong:
<used_memory>/<total_memory> * 100%.
Cảm ơn!