Làm cách nào để theo dõi hoạt động của đĩa trên một ổ đĩa cụ thể?


35

Tôi muốn xem hoạt động của đĩa trên ổ cứng ngoài USB của tôi. Tôi biết rằng tôi có thể sử dụng iotopđể theo dõi I / O của đĩa cho mỗi quy trình đang chạy, nhưng có cách nào để lấy số đo cho mỗi hệ thống tệp không?

Câu trả lời:


19

dstat tốt hơn iostat để theo dõi chặt chẽ hoạt động của đĩa.

Tôi đang chạy lệnh sau trong khi di chuyển tệp từ ổ cứng này sang ổ cứng khác

dstat -D sda,sdc

để biết thêm thông tin, hãy xem trang này

https://help.ubfox.com/community/DiskPerformance


1
Rất đẹp. Tuy nhiên theo cách này tôi không thể thấy quá trình nào gây ra IO. Vì vậy, tôi bị mắc kẹt với việc xem quá trình nào (với iotop) hoặc thiết bị nào (với dstat), nhưng không phải cả hai.
jlh

Tôi ước chúng ta cũng có thể giới hạn sự giám sát của nó trong một quy trình cụ thể
matt

23

Tôi không có kỹ năng về lĩnh vực này, nhưng iostat nói đến cái tâm. Bạn có thể cài đặt nó với gói sysstat . Chúc may mắn!


6
sử dụng ví dụ: iostat -d 10 /dev/sdasẽ cung cấp cho bạn việc sử dụng io trong khoảng thời gian 10 giây /dev/sda. Tôi gần như sử dụng watch iostat -d /dev/sdatùy chọn khoảng thời gian của nó. Chỉnh sửa: đánh bại tôi trong khi tôi đang gõ :)
aperson

1
Tôi chỉ đọc rằng bộ giá trị đầu tiên được báo cáo là số liệu thống kê từ những gì đã xảy ra kể từ khi khởi động hệ thống, vì vậy hóa ra nó không có ý nghĩa nhiều để sử dụng watch. Báo cáo liên tục với một cái gì đó như iostat -dk 10trả về những con số có ý nghĩa hơn.
ændrük

Hmm ... tôi chỉ không thích nó lấp đầy toàn bộ cuộn lại của tôi.
aperson

Crank mở một thiết bị đầu cuối mới và thực hiện sau đó
adampski

10

Sử dụng iostattừ sysstatgói cung cấp một ảnh chụp nhanh kết quả kể từ khi khởi động. Việc sử dụng tham số khoảng sẽ nối các kết quả chỉ trong khoảng thời gian cuối cùng với đầu ra. Ví dụ, iostat 10trước tiên sẽ hiển thị các giá trị "kể từ khi khởi động", sau đó tiếp tục thêm 10 giây thống kê cuối cùng vào đầu ra, cứ sau 10 giây. Bao gồm -ytùy chọn bỏ qua màn hình thống kê đầu tiên kể từ khi khởi động nhưng hiểu rằng lệnh sẽ xuất hiện ở chế độ chờ trong khoảng thời gian được chỉ định trong khi hệ thống thu thập ảnh chụp nhanh đầu tiên.

Tôi đã thấy điều này hiệu quả nhất khi kết hợp với watchlệnh và chỉ ra rằng chỉ thu thập trong một khoảng thời gian thống kê. Ví dụ: watch -t -n 0.1 iostat -d -t -y 5 1 cung cấp làm mới cứ sau 5,1 giây thống kê hoạt động trong 5 giây cuối cùng. Để chia nhỏ các tùy chọn và tham số ...

  • Đầu tiên -tcho biết xem bỏ qua tiêu đề. Điều này là để tránh nhầm lẫn rằng nếu không thì tiêu đề sẽ bao gồm "Mỗi 0,1 giây" không đại diện cho ảnh chụp nhanh của dữ liệu.
  • Đồng -n 0.1hồ báo cho biết để chạy lệnh sau mỗi 0,1 giây. Đây là khoảng thời gian nhỏ nhất cho đồng hồ (Procps-ng 3.3.9) nhưng đừng lo lắng, nó không thực sự chạy lệnh sau mỗi 0,1 giây. Nó sẽ chạy lệnh 0,1 giây sau khi phiên bản trước hoàn thành.
  • Thông báo -dcho iuler chỉ hiển thị việc sử dụng thiết bị, có liên quan vì câu hỏi liên quan đến hoạt động của đĩa. Thay phiên để theo dõi một đĩa cụ thể, tên thiết bị có thể được chèn trước các tham số khoảng.
  • Công -ttắc thứ hai báo cho iostat bao gồm thời gian làm mới trong các số liệu thống kê. Điều này rất hữu ích vì thiếu sót trước đó của tiêu đề đồng hồ đã loại bỏ hiển thị thời gian sẽ có ở đó.
  • Công -ytắc bỏ qua màn hình đầu tiên của thống kê "kể từ khi khởi động" từ màn hình hiển thị. Nếu không có điều này, kết quả sẽ hiển thị các số liệu thống kê kể từ khi cập nhật khởi động ở khoảng thời gian của lệnh xem.
  • Các 5 1tham số khoảng iter. Trong trường hợp này, chụp 5 giây số liệu thống kê một lần (1). Bởi vì công tắc -y đã được sử dụng nên nó sẽ chỉ hiển thị một màn hình dữ liệu duy nhất.

Sẽ mất 5 giây để iuler thu thập dữ liệu, sau đó nó sẽ được hiển thị trong đồng hồ và 0,1 giây sau, đồng hồ sẽ kích hoạt lại lệnh i bổ sung. 5 giây sau dữ liệu mới sẽ thay thế dữ liệu cũ, đồng hồ sẽ đợi 0,1 giây, rửa, rửa, lặp lại ...


9

Thử với nmon

sudo apt-get install nmon

Thử:

nmon

Đầu ra Giống như dưới đây:

nhập mô tả hình ảnh ở đây

Nhấn d = Đĩa Nhấn c = CPU Nhấn r = RAM, nhấn v = Bộ nhớ ảo, Trạng thái Kernal nhấn K, nhấn N = mạng và nhấn q hoặc x để thoát

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.