Tương đương với SysIternals FileMon cho Linux?


Câu trả lời:


7

Bạn đang tìm kiếm bước đi. Hãy xem tại đây: https://wiki.ubfox.com/Strace


2
Theo tôi hiểu, chạy filemon cho phép người dùng xem tất cả các truy cập tệp. mặt khác, yêu cầu bạn chỉ định ứng dụng nào sẽ mở trước. Điều này đòi hỏi bạn phải biết trước, ứng dụng đang truy cập các tệp đó. Điều gì xảy ra nếu bạn không biết ứng dụng nào đang truy cập vào các tệp mà bạn quan tâm?
chuacw

8

Nó phụ thuộc vào những gì bạn muốn:

  • Nhìn chung, bạn muốn nhìn vào inotify để xem tất cả các quyền truy cập tệp mà bất kỳ quá trình nào thực hiện.

  • Trong nhỏ, strace sẽ cho phép bạn xem các tòa nhà cao tầng mà một quá trình cụ thể thực hiện. Strace là khá tuyệt vời. strace -f -eopen $cmdChẳng hạn, bạn có thể theo dõi các cuộc gọi của một quá trình để 'mở' . Các trang người đàn ông có đầy đủ chi tiết về cú pháp, tất nhiên.


Cảm ơn pjz. Rất cụ thể - tôi gặp một số rắc rối khi bắt đầu với Ogre3d trên Ubuntu. Ứng dụng thử nghiệm của tôi dường như đang tìm kiếm một số tệp .cfg trong quá trình khởi động. Tôi muốn lắng nghe tất cả các nỗ lực để mở tệp để tôi có thể đảm bảo các tệp chính xác có sẵn và có quyền chính xác.
bánh quy gà

strace -e mở ./app
Justin

2

straceở phía trước của một ứng dụng bắt đầu là tốt để xem những gì ứng dụng đang làm.
lsofthật tuyệt khi thấy những tập tin mà ứng dụng đang chạy đang sử dụng.

BTW:
lsof -ni:22 hiển thị quá trình nào đang sử dụng Cổng 22.



1

Dưới đây là một ví dụ về việc sử dụng strace để theo dõi các thay đổi của tệp:

strace -f -e trace=file -p7546 -o /tmp/outputfile

-fđảm bảo rằng các sự kiện từ các tiến trình con được ghi lại.
-e trace=filenói rằng chúng ta nên nắm bắt syscalls tập tin có liên quan (ví dụ như stat, open, futexvv)
-plà quá trình ID (lấy từ ps -auxhoặc các phương tiện khác) -oquy định các outputfile (có thể có rất nhiều dữ liệu và bạn có thể sử dụng thay vì grep như một bộ lọc.




0

Điều này là cũ, nhưng tôi nghĩ rằng đó là một ý tưởng tốt để cập nhật nó cho thực tế ngày nay.

Đối với gỡ lỗi chỉ là một quá trình và con cái của họ, strace vẫn là cách tốt nhất. Nó có thể dễ dàng hiển thị tất cả các tập tin, ngay cả trên các tập tin bị thiếu.

Đối với gỡ lỗi hệ thống chung, tính năng kiểm toán trong kernel có thể làm điều đó và là cách được đề xuất. Nó không cần bất kỳ bản vá nào trên các hạt nhân gần đây, chỉ cần cài đặt gói kiểm toán

Đây là một gui đơn giản để sử dụng nó:

kiểm toán-gui

Điều này sao chép các tập tin windows, giám sát tập tin cho tất cả các địa điểm, quá trình, vv

cũng kiểm tra bài này


0

Đây là những gì làm việc tốt cho tôi (Linux Mint 19.1):

sudo lsof 2>&1 | grep programnamehere

Không chắc tại sao 2>&1lại cần thiết, nhưng nó không lọc trừ khi tôi sử dụng nó.

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.