From ca9a0317a45f8a4ab702e9b8ce4542d8452a47ad Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 19 May 2010 22:30:28 +0200 Subject: automount: try to modprobe autofs4 if its lacking --- src/automount.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/automount.c b/src/automount.c index 32680461c2..730b1572c2 100644 --- a/src/automount.c +++ b/src/automount.c @@ -276,8 +276,18 @@ static int open_dev_autofs(Manager *m) { return m->dev_autofs_fd; if ((m->dev_autofs_fd = open("/dev/autofs", O_CLOEXEC|O_RDONLY)) < 0) { - log_error("Failed to open /dev/autofs: %s", strerror(errno)); - return -errno; + + if (errno == ENOENT || errno == ENODEV) { + log_error("Your kernel apparently lacks built-in autofs4 support. Please fix that. " + "We'll now try to work around this by calling 'modprobe autofs4'..."); + system("/sbin/modprobe -q -- autofs4"); + m->dev_autofs_fd = open("/dev/autofs", O_CLOEXEC|O_RDONLY); + } + + if (m->dev_autofs_fd < 0) { + log_error("Failed to open /dev/autofs: %s", strerror(errno)); + return -errno; + } } init_autofs_dev_ioctl(¶m); -- cgit v1.2.3-54-g00ecf