How to get filename of an open file descriptor
rwatson at FreeBSD.org
Mon Nov 12 14:32:17 PST 2007
On Mon, 12 Nov 2007, Yuri wrote:
> Thank you for your response.
> I attempted to compile procstat but procstat.h seems to be missing in tgz.
Indeed -- looks like I forgot to p4 add on my development box. I've updated
the tarball to now include procstat.h. If there are any other problems, do
let me know.
Robert N M Watson
University of Cambridge
> Quoting Robert Watson <rwatson at FreeBSD.org>:
>> On Mon, 12 Nov 2007, Yuri wrote:
>>> I am looking for functionality similar to Linux's /proc/<PID>/fd/<FD>. I
>>> need to know what is the file name of an open file descriptor.
>>> /proc/<PID>/fd is missing on FreeBSD.
>>> There's something called 'fdescfs'. In /dev/fd/ it shows the list of file
>>> descriptors. But they don't seem to be symbolic links to open files. And
>>> also it only shows FDs of the current process.
>>> So why there's no /proc/<PID>/fd in FreeBSD? And how do I work around this?
>>> Or should I just invest time and write a kernel patch implementing
>> You can give these patches a try:
>> They reflect a work-in-progress procstat(1) tool, which inspects process
>> in various ways. They are developed against 8-CURRENT, but likely still
>> fairly easily to 7-STABLE. They suffer various deficiencies, such as relying
>> on the name cache in-kernel to generate file paths for mapped files and open
>> file descriptors, so don't currently work with devfs nodes (for example).
>> However, they may do what you need. Any feedback would be most welcome.
>> Robert N M Watson
>> Computer Laboratory
>> University of Cambridge
> freebsd-hackers at freebsd.org mailing list
> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe at freebsd.org"
More information about the freebsd-hackers