Câu trả lời:
Một cách khác để xem những gì được tải trong một quy trình là bằng cách xem /proc/PID/mapstệp. Điều này cho thấy mọi thứ được ánh xạ vào không gian địa chỉ của bạn, bao gồm các đối tượng được chia sẻ được ánh xạ.
sudo grep libcairo.so /proc/*/maps
là một cách hay để khám phá tất cả /proc/PID/maps được đề cập bởi Rich cùng một lúc. Đầu ra mẫu:
/proc/8390/maps:7f0a9afae000-7f0a9b0bc000 r-xp 00000000 fc:00 274690 /usr/lib/x86_64-linux-gnu/libcairo.so.2.11400.6
/proc/8390/maps:7f0a9b0bc000-7f0a9b2bc000 ---p 0010e000 fc:00 274690 /usr/lib/x86_64-linux-gnu/libcairo.so.2.11400.6
/proc/8390/maps:7f0a9b2bc000-7f0a9b2bf000 r--p 0010e000 fc:00 274690 /usr/lib/x86_64-linux-gnu/libcairo.so.2.11400.6
/proc/8390/maps:7f0a9b2bf000-7f0a9b2c0000 rw-p 00111000 fc:00 274690 /usr/lib/x86_64-linux-gnu/libcairo.so.2.11400.6
/proc/8466/maps:7f0a9afae000-7f0a9b0bc000 r-xp 00000000 fc:00 274690 /usr/lib/x86_64-linux-gnu/libcairo.so.2.11400.6
/proc/8466/maps:7f0a9b0bc000-7f0a9b2bc000 ---p 0010e000 fc:00 274690 /usr/lib/x86_64-linux-gnu/libcairo.so.2.11400.6
/proc/8466/maps:7f0a9b2bc000-7f0a9b2bf000 r--p 0010e000 fc:00 274690 /usr/lib/x86_64-linux-gnu/libcairo.so.2.11400.6
/proc/8466/maps:7f0a9b2bf000-7f0a9b2c0000 rw-p 00111000 fc:00 274690 /usr/lib/x86_64-linux-gnu/libcairo.so.2.11400.6
Hơn nữa awkvà bash-fu có thể tinh chỉnh đầu ra hơn nữa.
Phương pháp này cũng cho thấy các thư viện được mở bằng dlopen, được thử nghiệm với thiết lập tối thiểu này đã bị hack với sleep(1000)Ubuntu 18.04.
lsofkhông có chức năng cần thiết.