Description of problem: /usr/sbin/makewhatis skips man directories if they're read-only, because it thinks the 'whatis' database files go there. In reality, the database is /var/cache/man/whatis . Version-Release number of selected component (if applicable): man-1.6f-11.fc10 How reproducible: Always Steps to Reproduce: 1. [Re-]mount /usr read-only 2. Run 'makewhatis -w -v' Actual results: Messages for virtually all man page directories, such as: skipping /usr/share/man - directory is readonly and the database file is not rebuilt. Expected results: Silence, with a new database file. Additional info:
The fix is simple -- the entire 'if' statement following this comment can be removed (it's completely superfluous; the 'whatis' files are no longer in the man dirs): # if $mandir is on a readonly partition, and the whatis file # is not a symlink, then let's skip trying to update it if ... ... fi This is a better description of what a user sees: On a freshly installed system (with no /var/cache/man/whatis database yet): % man -k man man: nothing appropriate If /usr is read-only, after running 'makewhatis', the same thing happens.
Thanks. Fixed in man-1.6f-16.fc11.