On Saturday 05 March 2005 10:57, Martin Deppe wrote:
Hi friends,
after having had this discussion some time ago I installed "locate" (hint from and thanks to Randall) and use it now from time to time.
At the time we had this discussion here before I had a quite strange setup regarding my filesystems and symbolic links from within one filesystem to within another one. Therefor I didn't inspect this problem further.
But now I experienced the following again:
"locate" today didn't show me a file which IS there and definitely should have been in its database so I tried "find" which resulted in me putting this issue up again. The situation is as follows:
OS: SuSE Linux 9.2 (and still up to date)
Relevant filesystems: /dev/hdc7 mounted on / (maybe even not relevant) /dev/hdc8 mounted on /home
Directories: /home/martin /home/martin/Win95/Business/Wolfgang Stoeger/Recherchen
Symbolic links: /home/martin/2Wolfgang Stoeger -> Win95/Business/Wolfgang Stoeger
File(s): /home/martin/Win95/Business/Wolfgang Stoeger/Recherchen/TJ1961_02.pdf
While I wrote this "updatedb" updated "/var/lib/locatedb". After that: still the same.
While being in "/home/martin" the following commands gave the following results:
martin@martin4:~> find . -name TJ1961_02.pdf -ls 64515 204 -rw------- 1 martin users 205597 Dec 27 12:00 ./Win95/Business/Wolfgang\ Stoeger/Recherchen/TJ1961_02.pdf
martin@martin4:~> find . -follow -name TJ1961_02.pdf -ls find: ./.wine/dosdevices/a:: No medium found find: ./.wine/dosdevices/d:: No medium found find: . changed during execution of find
As far as I am concerned "find" in the second case should have found TWO files, which are: 64515 204 -rw------- 1 martin users 205597 Dec 27 12:00 ./Win95/Business/Wolfgang\ Stoeger/Recherchen/TJ1961_02.pdf 64515 204 -rw------- 1 martin users 205597 Dec 27 12:00 ./2Wolfgang\ Stoeger/Recherchen/TJ1961_02.pdf
The problem is with subfs. When you run 'find' with the -follow parameter it will follow symbolic links, and one of those symbolic links is to your CD drive, which is mounted using subfs. When find enters this directory, subfs tries to mount the CD, which changes the contents of the directory, which find doesn't like so it aborts the search. The 'solution', short of an actual fix to the find utility, is to unmount the CD completely, or to use some flag to find such as -xdev or '! -fstype subfs'