This is common on shared hosting.
Some reasons this error could crop up are:
- php_mail() is disabled.
- The user that php_mail() is run as (and apache is run as - usually `nobody') does not have permission to send mail on the server.
- There is no mail server program running on the server.
There may be other reasons that I'm not aware of yet.
Generally, a quick fix (and the best one for shared hosting environments) is to bypass the php_mail() entirely using the smtp.module (http://drupal.org/project/smtp). You can then configure your site to use an external email account, for example, Gmail.
There may be other ways, depending on the reason, to rectify this by editing or adding php.ini settings.