---
name: "bsmtp"
section: "1"
platform: "linux"
package: "bacula-common"
version: "15.0.3-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/bsmtp"
---

# bsmtp(1)

Bacula's SMTP client (mail submission program)

## NAME

 bsmtp - Bacula's SMTP client (mail submission program)

## SYNOPSIS

**bsmtp** \[*options*\] *\<recipient\> \<...\>*

## DESCRIPTION

**bsmtp** is a simple mail user agent designed to permit more flexibility than the standard mail programs typically found on Unix systems, and to ease portability. It can even run on Windows machines. It is used by the Director daemon to send notifications and requests to the operator.

## OPTIONS

- **-8**

  Encode the mail in UTF-8.

- **-c**

  Set the **Cc:** header.

- **-d** *nn*

  Set debug level to *nn*.

- **-dt**

  Print timestamp in debug output.

- **-f**

  Set the **From:** header. If not specified, **bsmtp** will try to use your username.

- **-h** *mailhost:port*

  Use mailhost:port as the SMTP server. (default port: 25)

- **-s**

  Set the **Subject:** header.

- **-r**

  Set the **Reply-To:**: header.

- **-l**

  Set the maximum number of lines to be sent. (default: unlimited)

- **-?**

  Show version and usage of program.

## USAGE

*recipients* is a space separated list of email addresses.

The body of the email message is read from standard input. Message is ended by sending the EOF character (Ctrl-D on many systems) on the start of a new line, much like many 'mail' commands.

The actual, automated behavior of **bsmtp** will depend on the mail-related configuration of the Director in the *Messages* resource of *bacula-dir.conf*.

Interactive use of **bsmtp** is pertinent to manually test and ensure these configuration bits are valid. This is highly recommended.

## CONFIGURATION

These commands should each appear on a single line in the configuration file.

Messages {\
   Name = Standard\
   mailcommand = "/home/bacula/bin/bsmtp -h mail.domain.com -f \\"\\(Bacula\\) \\\<%r\\\>\\"\
                            \-s \\"Bacula: %t %e of %c %l\\" %r"\
   operatorcommand = "/home/bacula/bin/bsmtp -h mail.domain.com -f \\"\\(Bacula\\) \\\<%r\\\>\\"\
                                  \-s \\"Bacula: Intervention needed for %j\\" %r"\
   mail = sysadmin@site.domain.com = all, !skipped\
   operator = sysop@site.domain.com = mount\
   console = all, !skipped, !saved\
  }

*home/bacula/bin* is replaced with the path to the Bacula binary directory, and mail.domain.com is replaced with the fully qualified name of an SMTP server, which usually listen on port 25.

## ENVIRONMENT

If the **-h** option is not specified, **bsmtp** will use environment variable **SMTPSERVER**, or 'localhost' if not set.

## NOTES

Since **bsmtp** always uses a TCP connection rather than writing to a spool file, you may find that your **From:** address is being rejected because it does not contain a valid domain, or because your message has gotten caught in spam filtering rules. Generally, you should specify a fully qualified domain name in the from field, and depending on whether your SMTP gateway is Exim or Sendmail, you may need to modify the syntax of the from part of the message.

If **bsmtp** cannot connect to the specified mail host, it will retry to connect to **localhost**.

## BUGS

If you are getting incorrect dates (e.g. 1970) and you are running with a non-English locale, you might try setting the **LANG="en\_US"** environment variable.

## AUTHOR

This manual page was written by Jose Luis Tallon \<jltallon@adv-solutions.net\>, revised and edited by Lucas B. Cohen \<lbc@members.fsf.org\>.

## SEE ALSO

[**bacula-dir**(8)](/bacula-dir/8.md)

## COPYRIGHT

This man page document is released under the BSD 2-Clause license.
