Last modified: 2013-06-03 13:47:05 UTC
PATH for interactive shells is $HOME/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games, for cron jobs it's set to /usr/bin:/bin. Fixing this would require patching cron. (BTW: Ubuntu ships the original ISC cron? In 2013? Really?) As for example $HOME/bin is added by ~/.profile, a good case could be made that instead of chasing cars^W^Wtrying to emulate the individual user's interactive environment in cron, it would be much more efficient to educate users to add "PATH=..." as the first line to their crontab.
I agree that an explicit PATH= in the crontab is the preferred solution. It is generally unwise to rely on an environment-provided PATH for a number of reasons, not least of which is the number of different ways in which an environment can be set up before a tool is invoked. Default-provided PATH should be seen as a convenience for interactive use.