There has recently been a (publicly unconfirmed) report that Skype is accessing files that it shouldn't be, without user intervention. I have no idea if this is the case with Skype on linux, but it would be good to be able to find out. Is there a way to keep track of all files accessed by a specific process?
Launch your process through
strace -fe open skype
You will see the list of each
open() syscall, that is every file (or connection) the processes opens during its life.
Looking at currently opened file descriptors will not provide a log but only a "snapshot" of what the process accesses right now.
Given the PID of the Skype process, you can do:
for fd in /proc/$skype_pid/fd/*;do echo -n "File descriptor $fd points to " readlink "$fd" done
For a given process,
/proc/$PID/fd contains symbolic links to all the files the process currently has open. The links are named after the file descriptor number. So, to find a out where a process is getting its stdin for example, you can
readlink /proc/$pid_of_process/fd/0. The above will tell you about all files opened by the Skype process.
If you're not sure about the PID of your process, try
$ pgrep skype
first to find out.
This will only work on systems that have a procfs, of which GNU/Linux is one.