Date: Wed, 28 Dec 2016 09:16:59 -0800 From: Freddie Cash <fjwcash@gmail.com> To: Ben RUBSON <ben.rubson@gmail.com> Cc: fs@freebsd.org Subject: Re: Force ZFS to always look for devices in a defined location Message-ID: <CAOjFWZ4-u5nJZkjNEtDu=bAHh2UmzvAm8am0j0uhyajC8eUCSw@mail.gmail.com> In-Reply-To: <4E030EC6-39AC-484C-BA53-2C8CA0E79B84@gmail.com> References: <4E030EC6-39AC-484C-BA53-2C8CA0E79B84@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Dec 27, 2016 11:03 PM, "Ben RUBSON" <ben.rubson@gmail.com> wrote: Hello, My zpools are made of devices from /dev/label. Example : NAME STATE READ WRITE CKSUM my-zpool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 label/slotone ONLINE 0 0 0 label/slottwo ONLINE 0 0 0 (...) For some reasons, it may happen that access to some devices fails and devices (quickly) toggle between ONLINE and UNAVAIL/REMOVED state. Then, sometimes, ZFS re-use the device using the /dev/da path, instead of waiting for the /dev/label path to be rediscovered by the system. It then leads to something like this, with is not nice, and not really correct (as last sector of /dev/da contains the label) : NAME STATE READ WRITE CKSUM my-zpool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 label/slotone ONLINE 0 0 0 da14 ONLINE 0 0 0 (...) My question is then, how to force ZFS to look for devices in a defined location ? (/dev/label/ in this example) I tried to offline / online impacted devices (da*), but it does not work, they do not come back with their /dev/label path. Zpool export / import works, but of course this is something we would like to avoid. Many thanks ! Ben Export the pool. Then use -d to import it using the labels: zpool import -d /dev/label my-zpool That will search the label directory for pool devices and use that path into the GEOM layer. And it will remember it for future imports. Aft least until things get confused again in the future. :) Cheers, Freddie
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAOjFWZ4-u5nJZkjNEtDu=bAHh2UmzvAm8am0j0uhyajC8eUCSw>