pdumpfs omits extra files when --exclude is used on certian large directory trees
Binary package hint: pdumpfs
I hit together a small "script" to test this behaviour:
SRC=/home; mkdir -p /tmp/dump/; pdumpfs -n --exclude 'fjhrqwphfeuiqwph' $SRC /tmp/dump/ |cut -c14- | sort > /tmp/1 ; find $SRC | sort | diff - /tmp/1|less
The output should be empty, except if you do have a file called 'fjhrqwphfeuiqwph'. :)
You can test that by removing the --exclude option, the difference disappears.
Interestingly, the error is produced for /home and /proc (for proc, not only the since ended and started processes account for the difference), but it is not produced for /usr, /lib, /var, /dev and /sys. I am yet to find a small directory tree that produces the error, it is maybe due to some special kinds of files, or some files changing during the pdumpfs process, etc.
Upon inserting some debug messages into the recursive_copy function (see below), it seems that the files are not excluded, but are not in the internal list of files at all (there was no output beginning with 'excluding:').
I got somewhat stuck, as I am not familiar with ruby. I may investigate further if I will have the time, but any help would be welcome (e.g. results of running the above script at your machines, etc.).
Description: Ubuntu 9.10
*** 1.3-3 0
Date: Thu Feb 4 08:44:09 2010
DistroRelease: Ubuntu 9.10
Package: pdumpfs 1.3-3
Uname: Linux 2.6.31-17-generic i686
(nautilus:4131): Eel-CRITICAL **: eel_preferences