18.2. /etc: Host-specific system configuration

In addition to the requirements for /etc in the Filesystem Hierarchy Standard, an LSB conforming system shall also provide the following directories or symbolic links to directories:

/etc/cron.d 

A directory containing extended crontab files; see Cron Jobs.

/etc/cron.daily 

A directory containing shell scripts to be executed once a day; see Cron Jobs.

/etc/cron.hourly 

A directory containing shell scripts to be executed once per hour; see Cron Jobs.

/etc/cron.monthly 

A directory containing shell scripts to be executed once per month; see Cron Jobs.

/etc/cron.weekly 

A directory containing shell scripts to be executed once a week; see Cron Jobs.

/etc/init.d 

A directory containing system initialization scripts; see Installation and Removal of Init Scripts.

/etc/profile.d 

A directory containing shell scripts. Script names should follow the same conventions as specified for cron jobs (see Cron Jobs, but should have the suffix .sh. The behavior is unspecified if a script is installed in this directory that does not have the suffix .sh.

The sh utility shall read and execute commands in its current execution environment from all the shell scripts in this directory that have the suffix .sh when invoked as an interactive login shell, or if the -l (the letter ell) is specified (see Shell Invocation).

Future Directions: These directories are required at this version of the LSB since there is not yet an agreed method for abstracting the implementation so that applications need not be aware of these locations during installation.

18.2.1. File Naming Conventions

Conforming implementations and applications installing files into any of the above locations under /etc may only use filenames from the following managed namespaces:

Note: As this specification cannot enforce rules for applications which do not choose to conform to it, conforming applications need to be aware that the managed namespaces may have been polluted with unregistered filenames and should check for namespace collisions and take appropriate steps if they occur.

In general, if a package or system script is likely to be used on multiple systems, the package developers or the distribution should register the name through the LANANA, and distributions should strive to use the same name whenever possible. For applications which may not be essential or may not be commonly installed, the hierarchical namespace may be more appropriate. An advantage to the hierarchical namespace is that there is no need to consult with the LANANA before using a specific name.

Short names are highly desirable, since system administrators may wish to manually start and stop services. Given this, they should be standardized on a per-package basis. This is the rationale behind having the LANANA organization assign these names. The LANANA may be called upon to handle other namespace issues, such as package/prerequisites naming.