Ubuntu – Many directories have a “.d” suffix/extension. What does it mean

naming conventions

My system has 132 directories whose names end in .d
There are also two scripts whose names end in .d

Aside from the two wayward scripts ('/usr/sbin/invoke-rc.d', '/usr/sbin/update-rc.d'), I assume that .d means directory… (but I do wonder why those scripts are so named).

In some cases, the .d directory's parent folder contains a file of the same name, but without the .d ending.

# eg.
  /etc/apt/sources.list.d
  /etc/apt/sources.list

Is there some mystical Linux rationale to this naming style?

Is it a deeply entrenched naming convention, or is it about as absolute as 'foo' and 'bar'?

Best Answer

This is often used for directories (hence the "d") that contain a collection of partial configuration files. All files in the directory get combined, sometimes also with other files, to make the complete configuration. This is often done when traditionally there was only one configuration file (e.g. in your example sources.list) but there is a desire to make things more modular later.

As Laurence mentions, the /etc/rc?.d directories was probably one of the first times this custom was used.

Related Question