Installation of sendmail
        
        
          Before building sendmail, create
          the required user, group and directory with the following commands
          issued as the root user:
        
        
groupadd -g 26 smmsp                               &&
useradd -c "Sendmail Daemon" -g smmsp -d /dev/null \
        -s /bin/false -u 26 smmsp                  &&
chmod -v 1777 /var/mail                            &&
install -v -m700 -d /var/spool/mqueue
        
          
          
            Note
          
          
            See the source tree sendmail/README
            file for information on linking optional packages into the build.
            Use the example below, which adds support for SASL, StartTLS
            (OpenSSL) and OpenLDAP, as a starting point. Of course,
            modify it to suit your particular needs.
          
         
        
cat >> devtools/Site/site.config.m4 << "EOF"
APPENDDEF(`confENVDEF',`-DSTARTTLS -DSASL -DLDAPMAP')
APPENDDEF(`confLIBS', `-lssl -lcrypto -lsasl2 -lldap -llber -ldb')
APPENDDEF(`confINCDIRS', `-I/usr/include/sasl')
EOF
        
          Install sendmail with the
          following commands:
        
        
cat >> devtools/Site/site.config.m4 << "EOF"
define(`confMANGRP',`root')
define(`confMANOWN',`root')
define(`confSBINGRP',`root')
define(`confUBINGRP',`root')
define(`confUBINOWN',`root')
EOF
sed -i 's|/usr/man/man|/usr/share/man/man|' \
    devtools/OS/Linux           &&
cd sendmail                     &&
sh Build                        &&
cd ../cf/cf                     &&
cp generic-linux.mc sendmail.mc &&
sh Build sendmail.cf
        
          This package does not come with a test suite.
        
        
          Now, as the root user:
        
        
install -v -d -m755 /etc/mail &&
sh Build install-cf &&
cd ../..            &&
sh Build install    &&
install -v -m644 cf/cf/{submit,sendmail}.mc /etc/mail &&
cp -v -R cf/* /etc/mail                               &&
install -v -m755 -d /usr/share/doc/sendmail-8.15.2/{cf,sendmail} &&
install -v -m644 CACerts FAQ KNOWNBUGS LICENSE PGPKEYS README RELEASE_NOTES \
        /usr/share/doc/sendmail-8.15.2 &&
install -v -m644 sendmail/{README,SECURITY,TRACEFLAGS,TUNING} \
        /usr/share/doc/sendmail-8.15.2/sendmail &&
install -v -m644 cf/README /usr/share/doc/sendmail-8.15.2/cf &&
for manpage in sendmail editmap mailstats makemap praliases smrsh
do
    install -v -m644 $manpage/$manpage.8 /usr/share/man/man8
done &&
install -v -m644 sendmail/aliases.5    /usr/share/man/man5 &&
install -v -m644 sendmail/mailq.1      /usr/share/man/man1 &&
install -v -m644 sendmail/newaliases.1 /usr/share/man/man1 &&
install -v -m644 vacation/vacation.1   /usr/share/man/man1
        
          Install the sendmail Installation
          and Operations Guide with the following commands:
        
        
          
          
            Note
          
          
            Remove op.pdf from the make and install commands below if you
            don't have Ghostscript
            installed.
          
         
        
cd doc/op                                       &&
sed -i 's/groff/GROFF_NO_SGR=1 groff/' Makefile &&
make op.txt op.pdf
        
          Now, as the root user:
        
        
install -v -d -m755 /usr/share/doc/sendmail-8.15.2 &&
install -v -m644 op.ps op.txt op.pdf /usr/share/doc/sendmail-8.15.2 &&
cd ../..
       
      
        
          Command Explanations
        
        
          cat > devtools/Site/site.config.m4
          << "EOF": This creates a configuration file
          changing some of the default settings.
        
        
          sed ...
          devtools/OS/Linux: The site.config.m4 does not
          honor a change to the man directory, so fix it in the OS
          definitions.
        
        
          sed ...
          include/sm/bdb.h: This allows sendmail to build
          properly with Berkeley DB-6.1.26 versions 5 and above.
        
        
          sh Build; sh Build sendmail.cf; sh
          Build install-cf; sh Build install: sendmail uses an m4 based build script to create the various
          Makefiles. These commands build and
          install the package.
        
        
          for manpage in...;do...;done; install
          ...: The man pages are installed already formatted
          and man displays them
          somewhat garbled. These commands replace the formatted pages with
          pages man can display
          properly.
        
       
      
        
          Configuring sendmail
        
        
        
          
            Configuration Information
          
          
            
            
              Note
            
            
              Ensure you have a fully qualified domain name defined in
              /etc/hosts for your system before
              proceeding.
            
           
          
            Create the /etc/mail/local-host-names and /etc/mail/aliases files using the following
            commands as the root user:
          
          
echo $(hostname) > /etc/mail/local-host-names
cat > /etc/mail/aliases << "EOF"
postmaster: root
MAILER-DAEMON: root
EOF
newaliases
          
            sendmail's primary configuration
            file, /etc/mail/sendmail.cf, is
            complex and not meant to be directly edited. The recommended
            method for changing it is to modify /etc/mail/sendmail.mc and various m4 files, then run the m4 macro processor from within
            /etc/mail as follows:
          
          
cd /etc/mail &&
m4 m4/cf.m4 sendmail.mc > sendmail.cf
          
            A full explanation of the files to modify, and the available
            parameters can be found in /etc/mail/README.
          
         
        
          
            Boot Script
          
          
            To automate the running of sendmail at startup, install the
            /etc/rc.d/init.d/sendmail init
            script included in the blfs-bootscripts-20150924 package.
          
          
make install-sendmail
          
            
            
              Note
            
            
              The -qNm option to sendmail, where N is number
              of minutes, controls how often sendmail will process the mail queue. A
              default of 5 minutes is used in the init script. Individual
              workstation users may want to set this as low as 1 minute,
              large installations handling more mail may want to set it
              higher.