[dm-devel] [Question] multipathd.service start failed when /var/run isn't mount
Benjamin Marzinski
bmarzins at redhat.com
Mon Jul 26 16:28:27 UTC 2021
On Mon, Jul 26, 2021 at 08:22:49PM +0800, lixiaokeng wrote:
>
> >> After sdb mounted to /var, we can start multipathd service successfully.
> >
> > But when the binaries were compiled, if /var/run existed and was a
> > symlink in your build environment, then RUN should equal "run", and
> > multipath should should be using /run instead of /var/run, right?
> >
> > This is why I asked what multipath packages are you using.
> >
> This problem is found in 0.7.7.
Sorry. I wasn't very clear with what I was asking for. Unless I'm
missing something here, if multipathd is trying to use /var/run, that
means that when the multipathd binary was compiled, it was compiled on a
machine where /var/run was not a symlink.
So, I'm wondering where your multipathd binary got compiled. Are you
using a packaged version from a distribution like RHEL, SLES, Fedora,
Ubuntu, etc? Did you compile it yourself?
When I run multipathd under strace, I can see:
openat(AT_FDCWD, "/run/multipathd.pid", O_WRONLY|O_CREAT, 0644) = 3
The multipathd binary I'm using was compiled on a machine where /var/run
is a symlink to /run, so multipathd directly uses /run, instead of using
/var/run. I'm assuming that whatever machine your multipathd binary was
compiled on, /var/run was a directory. Do you know if that's possible?
-Ben
>
> Regards, Lixiaokeng
More information about the dm-devel
mailing list