Computer >> Máy Tính >  >> Điện thoại thông minh >> Linux

Cách lấy danh sách các tệp, ổ cắm và đường ống đang mở trong Linux

Hướng dẫn này sẽ giải thích cách lấy danh sách các tệp, ổ cắm và đường ống đang mở trong Linux bằng lệnh lsof.

lsof là một công cụ dòng lệnh Linux rất mạnh mẽ. Nó đi kèm với mọi bản phân phối Linux và cung cấp cho bạn danh sách các tệp, ổ cắm và đường dẫn đang mở.

Cách sử dụng cơ bản nhất của công cụ là nhập tên lệnh, theo sau là phím Return, # lsof . Lệnh này sẽ trả về một danh sách khá dài. Cách tốt hơn để chạy lệnh này là với less lệnh - # lsof | ít hơn

Cách lấy danh sách các tệp, ổ cắm và đường ống đang mở trong Linux
nhấp để phóng to

Sử dụng lsof cùng với ít hơn cho phép bạn cuộn qua đầu ra cả lên và xuống, giúp bạn đọc dễ dàng hơn. Tất nhiên, lệnh có thể làm được nhiều việc hơn là chỉ cung cấp cho bạn kết quả chung của tất cả các tệp đang mở. Nó có thể là một cứu cánh trong những tình huống mà bạn đang khắc phục sự cố.

Ví dụ:bạn có thể yêu cầu cung cấp cho bạn danh sách tất cả các tệp đang mở đã được mở bằng một quy trình cụ thể. Đầu tiên, lấy ID quy trình bằng cách sử dụng # ps -ef yêu cầu. Sau đó, chạy lệnh # lsof -p 30646 . -p là viết tắt của ID quy trình và 30646 là một Id quy trình mẫu mà bạn nên thay thế bằng ID quy trình của mình.

Cách lấy danh sách các tệp, ổ cắm và đường ống đang mở trong Linux
nhấp để phóng to

Bạn cũng có thể tìm kiếm tất cả các tệp đang mở, ổ cắm, v.v. từ một phần nhất định của hệ thống của bạn. Vì vậy, nếu bạn muốn xem tất cả các tệp từ / mnt thư mục, chạy lệnh # lsof / mnt . Hoặc, nếu bạn muốn tìm tất cả quá trình được mở bằng một lệnh cụ thể, hãy thực thi một dòng như # lsof -c mysql , ở đâu -c là viết tắt của “command” và bạn có thể thay thế mysql bằng lệnh bạn có tệp bạn muốn kiểm tra:

Cách lấy danh sách các tệp, ổ cắm và đường ống đang mở trong Linux
nhấp để phóng to

Linux xử lý các cổng, ổ cắm và thiết bị dưới dạng tệp. Bạn cũng có thể tìm kiếm tất cả các kết nối bằng một giao thức nhất định hoặc thậm chí một cổng. Bạn có thể tìm kiếm tất cả các kết nối SSH hiện đang chạy với máy của mình bằng lệnh # lsof -i:22 . Hoặc nếu bạn muốn xem tất cả các kết nối tcp trên máy tính của mình, hãy chạy lệnh # lsof -i TCP :

Cách lấy danh sách các tệp, ổ cắm và đường ống đang mở trong Linux
nhấp để phóng to

lsof là một lệnh khá thông minh với một số tùy chọn khác. Hãy xem trang người của công cụ để biết thêm thông tin về cách tối đa hóa công dụng của nó.