Date: Wed, 7 Jun 2006 12:57:26 -0700 From: Michael Hall <mhall@riverside.org> To: freebsd-stable@freebsd.org Subject: Re: How can I know which files a proccess is accessing? Message-ID: <20060607195726.GD25975@riverside.org> In-Reply-To: <57d710000606070820j6291f74el6b6880e681899904@mail.gmail.com> References: <d3ea75b30606061339u55efbecemab0d3d0eb9adb636@mail.gmail.com> <4486574F.9040108@bitfreak.org> <57d710000606070820j6291f74el6b6880e681899904@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Jun 07, 2006 at 08:20:03AM -0700, pete wright wrote: > On 6/6/06, Darren Pilgrim <darren.pilgrim@bitfreak.org> wrote: > >Eduardo Meyer wrote: > >> Hello, > >> > >> I need to know which files under /var a proccess (httpd here) is > >> acessing. It is not logs because I have a different partition for > >> logs. > >> > >> gstat tells me that slice ad0s1h (my /var) is 100% frequently, and in > >> fact with fstat I can see a number of httpd proccesses running > >> accesing that. But fstat only shows me inodes and the mount point. > >> > >> I need to know which files the proccesses are acessing. > > > >find(1) can match inodes. A quick example: > > > > > fstat | grep 'httpd.*/var ' | awk '{print $6}' | xargs -n 1 sudo find > >-x /var -inum | sort -u > >/var/log/httpd-error.log > >/var/run/accept.lock.# > >/var/tmp/apr8530d5 > >/var/tmp/aprF2Zs0e > > > > Thanks for the oneliner Darren, that's going in my scripts dir right now ;) Yes, it does look handy, another new usage for 'find'. Typically a 'grep ... | awk ...' can be combined, resulting in a small improvement: fstat | awk '/httpd.*\/var/ { print $6 }' | xargs ... -- Why doesn't "Buick" rhyme with "quick"? Mike Hall San Juan Island, WA System Admin - Rock Island Communications <mikeh@rockisland.com> System Admin - riverside.org, ssdd.org <mhall@riverside.org>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060607195726.GD25975>