An alias file contains lines that associate an alias name with an address or group of addresses. The Message Handler (MH) package reads both personal alias files (customarily the $HOME/.mh_alias file) and a systemwide alias file, the /etc/mh/MailAliases file. Depending on the MH configuration, aliases may also be defined in the /etc/aliases file (see the sendmail command).
The alias file name is an argument to several MH commands. These commands can be set automatically by entries in the .mh_profile file. Personal alias files can have any name, but must follow the format described here. The /etc/mh/MailAliases file is the default alias file for systemwide aliases. This file is set up by a user with root user authority.
Specify your personal alias file in your .mh_profile file. Otherwise, you must use the -alias flag each time you use an MH command that requires this flag.
Each line of an .mh_alias file has one of the following formats:
The variables are described as
|Alias||Specifies a simple address.|
|Address||Specifies a simple Internet-style address.|
|Group||Specifies a group name (or number) from the /etc/group file.|
|Alias-File||Specifies a system file name. The MH package treats alias file names as case-sensitive. Alias expansion is case-sensitive as well.|
variable can be either of the following:
|AddressList||List of addresses that make up a group.|
|<Alias-File||System file to be read for more alias definitions.|
The addresses in the AddressList variable must be separated by commas.
Note: If there are references to aliases within an alias definition, those aliases must be defined in a following line of the alias file.
|\ (backslash)||You can continue an alias definition on the next line by ending the line to be continued with a \ (backslash) followed by a new-line character.|
|< (less than)||If a line starts with a < (less-than sign), MH reads the file
specified after the less-than sign for more alias definitions. The
reading is done recursively.
If an address group starts with a < (less-than sign), MH reads the file specified after the less-than sign and adds the contents of that file to the address list for the alias.
|= (equal)||If an address group starts with an = (equal sign), MH consults the /etc/group file for the group specified after an equal sign. The MH package adds each login name occurring as a member of the group to the address list for the alias.|
|+ (plus)||If an address group starts with a + (plus sign), MH consults the /etc/group file to determine the ID of the group. Each login name appearing in the /etc/passwd file that matches the address group is added to the address list for the alias.|
|* (asterisk)||If an address group is defined by an * (asterisk), MH consults the /etc/passwd file and adds all login names with a user number greater than 200 (or the value set for everyone in the /etc/mh/mtstailor file) to the address list for the alias.|
The following list explains how the system resolves aliases at posting time:
In pattern matching, a trailing * (asterisk) in an alias matches just about anything appropriate.
The following example of an .mh_alias file illustrates some of its features:
</home/sarah/morealiases systems:= systems staff:+ staff everyone:+* manager: harold@harold project:lance,mark@remote,peter,manager
The first line says that more aliases should be read from the /home/sarah/morealiases file. The systems alias is defined as all users listed as members of the group systems in the /etc/group file. The staff alias is defined as all users whose group ID in the /etc/passwd file is equivalent to the staff group. Finally, the everyone alias is defined as all users with a user ID in the /etc/passwd file greater than 200.
The manager alias is defined as an alias for user harold@harold. The project alias is defined as the users lance, mark@remote, peter, and manager.
This file format is part of Message Handler in the Base Operating System.
|/etc/aliases||Contains systemwide aliases for the sendmail command.|
|/etc/group||Contains basic group attributes.|
|/etc/passwd||Contains user authentication information.|
|/etc/mh/MailAliases||Contains the defaults alias file for systemwide aliases, which is set up by a user with root user authority.|
|/etc/mh/mtstailor||Tailors the Message Handler (MH) environment to the local environment.|
|.mh_profile||Customizes the Message Handler (MH) package.|
The aliases file, /etc/group file, /etc/passwd file, $HOME/.mh_profile file.
The ali command, conflict command, post command, sendmail command, whom command.