Я намагаюся простежити якусь дивну поведінку кількох процесів і зіткнувся з моментом, я не знаю, як простежити минуле. Виснований процес, який я приєднав до використання, strace -p
показав це:
Process 7926 attached - interrupt to quit
read(3,
Гаразд, тому він чекає введення на fd 3, тому я пішов перевірити, що це:
$ ls -l /proc/7926/fd/3
lr-x------ 1 user grp 64 Mar 15 10:41 /proc/7926/fd/3 -> pipe:[20043922]
Гаразд, значить, це труба ... тепер питання - хто автор цієї труби? Я пам'ятаю, що в Linux є спеціальна функція для сокетів домену Unix, де ви можете запитувати шлях до файлу, який починається з байта NUL, щоб отримати доступ до "абстрактного простору імен сокета" (згадується тут: http://tkhanson.net/cgit.cgi /misc.git/plain/unixdomain/Unix_domain_sockets.html ). Я не впевнений, чи є щось подібне для труб, якими я міг би скористатися, але нічого не знайшов.
Я сподівався на інструмент, який подобається fuser
або lsof
може допомогти, але я ніде не дістався.
Якісь ідеї?