locate should include system files (if you enable database creation -- it's turned off by default, at least in Snow Leopard -- with the command
sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist).
Spotlight does index system files, but normally leaves them out of the search results because most users want to search their files, not the OS internals. If you want to see system files in the results, you have to enable them:
- Start a Spotlight search by entering something in the search field in a Finder window toolbar.
- Add an additional search criterion by clicking the "+" button on the right.
- The new criterion selector will start saying something like
(Kind) is (Any). Select "Other" from the attribute ("Kind") pop-up menu.
- This'll open a dialog with a huge list of searchable attributes, with checkboxes to control whether they appear in the standard criterion pop-up. Enable the "System Files" and "File invisible" attributes.
- Now select "System Files" from the attribute pop-up, and "are included" from the next one. If you want/need to, you can also add another search criterion to include/exclude invisible items (this doesn't seem to be necessary to search /private, even though it's invisible).
- You should now see system files in the listed results.
Note that including these options in the pop-up menu is permanent, but actually selecting them has to be re-done for each search (i.e. next time you search, you only get to skip steps 3 and 4).