Merge pull request #2924 from tianon/strict-fhs-compatibility

Add proper dockerinit path support for distros that use FHS 2.3
Upstream-commit: 8cc524996a0d29a5b11a14ef17950193d45c1e05
Component: engine
This commit is contained in:
Michael Crosby
2013-12-02 11:35:36 -08:00

View File

@ -217,9 +217,16 @@ func DockerInitPath(localCopy string) string {
var possibleInits = []string{
localCopy,
filepath.Join(filepath.Dir(selfPath), "dockerinit"),
// "/usr/libexec includes internal binaries that are not intended to be executed directly by users or shell scripts. Applications may use a single subdirectory under /usr/libexec."
// FHS 3.0 Draft: "/usr/libexec includes internal binaries that are not intended to be executed directly by users or shell scripts. Applications may use a single subdirectory under /usr/libexec."
// http://www.linuxbase.org/betaspecs/fhs/fhs.html#usrlibexec
"/usr/libexec/docker/dockerinit",
"/usr/local/libexec/docker/dockerinit",
// FHS 2.3: "/usr/lib includes object files, libraries, and internal binaries that are not intended to be executed directly by users or shell scripts."
// http://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html#USRLIBLIBRARIESFORPROGRAMMINGANDPA
"/usr/lib/docker/dockerinit",
"/usr/local/lib/docker/dockerinit",
}
for _, dockerInit := range possibleInits {
path, err := exec.LookPath(dockerInit)