From 7df02c0f57188fc24af688a8d08bfd3eff9fba1b Mon Sep 17 00:00:00 2001 From: Brian Behlendorf Date: Mon, 1 Mar 2010 16:45:31 -0800 Subject: [PATCH] Split the udev rule from a specific configuration While I completely agree the udev is the lesser of many possibles evils when solving the device issue... it is still evil. After attempting to craft a single rule which will work for various versions of udev in various distros. I've come to the conclusion the only maintainable way to solve this issue is to split the rule from any particular configuration. This commit provides a generic 60-zpool.rules file which use a small helper util 'zpool_id' to parse a configuration file by default located in /etc/zfs/zdev.conf. The helper script maps a by-path udev name to a more friendly name of for large configurations. As part of this change all of the support scripts why rely on this udev naming convention have been updated as needed. Example zdev.conf files have also been added for 3 different systems by you will always need to add one for your exact hardware. Finally, included in these changes are the proper tweaks to the build system to ensure everything still get's packaged properly in the rpms and can run in or out of tree. --- Makefile.am | 2 +- cmd/Makefile.am | 2 +- cmd/zpool_id/Makefile.am | 1 + cmd/zpool_id/zpool_id | 60 ++++ config/zfs-build.m4 | 3 +- configure.ac | 2 + etc/Makefile.am | 3 + etc/udev/rules.d/60-zpool.rules | 8 + etc/zfs/zdev.conf | 9 + etc/zfs/zdev.conf.dragon.example | 176 +++++++++++ etc/zfs/zdev.conf.promise.example | 26 ++ etc/zfs/zdev.conf.x4550.example | 66 ++++ scripts/Makefile.am | 1 - scripts/common.sh | 26 +- scripts/udev-rules/99-zpool.rules.dragon | 331 --------------------- scripts/udev-rules/99-zpool.rules.promise | 41 --- scripts/udev-rules/99-zpool.rules.x4550 | 115 ------- scripts/zpool-config/dragon-raid0-1x70.sh | 2 +- scripts/zpool-config/dragon-raid10-35x2.sh | 2 +- scripts/zpool-config/dragon-raidz-7x10.sh | 2 +- scripts/zpool-config/dragon-raidz2-7x10.sh | 2 +- scripts/zpool-config/promise-raid0-1x16.sh | 2 +- scripts/zpool-config/promise-raid10-8x2.sh | 2 +- scripts/zpool-config/promise-raidz-2x8.sh | 2 +- scripts/zpool-config/promise-raidz2-2x8.sh | 2 +- scripts/zpool-config/x4550-raid0-1x48.sh | 2 +- scripts/zpool-config/x4550-raid10-24x2.sh | 2 +- scripts/zpool-config/x4550-raidz-8x6.sh | 2 +- scripts/zpool-config/x4550-raidz2-8x6.sh | 2 +- zfs.spec.in | 2 + 30 files changed, 393 insertions(+), 505 deletions(-) create mode 100644 cmd/zpool_id/Makefile.am create mode 100755 cmd/zpool_id/zpool_id create mode 100644 etc/Makefile.am create mode 100644 etc/udev/rules.d/60-zpool.rules create mode 100644 etc/zfs/zdev.conf create mode 100644 etc/zfs/zdev.conf.dragon.example create mode 100644 etc/zfs/zdev.conf.promise.example create mode 100644 etc/zfs/zdev.conf.x4550.example delete mode 100644 scripts/udev-rules/99-zpool.rules.dragon delete mode 100644 scripts/udev-rules/99-zpool.rules.promise delete mode 100644 scripts/udev-rules/99-zpool.rules.x4550 diff --git a/Makefile.am b/Makefile.am index f6d4121aed..c174e98d1c 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,7 +1,7 @@ include $(top_srcdir)/config/rpm.am if CONFIG_USER -USER_DIR = config man scripts lib cmd +USER_DIR = config etc man scripts lib cmd endif if CONFIG_KERNEL KERNEL_DIR = module diff --git a/cmd/Makefile.am b/cmd/Makefile.am index 86ec885bc2..98794d574e 100644 --- a/cmd/Makefile.am +++ b/cmd/Makefile.am @@ -1 +1 @@ -SUBDIRS = zfs zpool zdb zinject ztest +SUBDIRS = zfs zpool zpool_id zdb zinject ztest diff --git a/cmd/zpool_id/Makefile.am b/cmd/zpool_id/Makefile.am new file mode 100644 index 0000000000..023e1ab59a --- /dev/null +++ b/cmd/zpool_id/Makefile.am @@ -0,0 +1 @@ +dist_bin_SCRIPTS = zpool_id diff --git a/cmd/zpool_id/zpool_id b/cmd/zpool_id/zpool_id new file mode 100755 index 0000000000..c3637847a8 --- /dev/null +++ b/cmd/zpool_id/zpool_id @@ -0,0 +1,60 @@ +#!/bin/bash + +CONFIG=${CONFIG:-/etc/zfs/zdev.conf} +PATH_ID=${PATH_ID:-/lib/udev/path_id} +AWK=${AWK:-/bin/awk} + +die() { + echo "Error: $*" + exit 1 +} + +usage() { + cat << EOF +Usage: zpool_id [h] [-c configfile] + -c Alternate config file [default /etc/zfs/zdev.conf] + -d Use path_id from device as the mapping key + -h Show this message +EOF + exit 1 +} + +while getopts 'c:d:h' OPTION; do + case ${OPTION} in + c) + CONFIG=${OPTARG} + ;; + d) + DEVICE=${OPTARG} + ;; + h) + usage + ;; + esac +done + +# Check that a device was requested +[ -z ${DEVICE} ] && usage + +# Check for the existence of a configuration file +[ ! -f ${CONFIG} ] && die "Missing config file: ${CONFIG}" + +# Use udev's path_id to generate a unique persistent key +eval `${PATH_ID} ${DEVICE}` +[ -z ${ID_PATH} ] && die "Missing ID_PATH for ${DEVICE}" + +# Use the persistent key to lookup the zpool device id in the +# configuration file which is of the format . +# Lines starting with #'s are treated as comments and ignored. +# Exact matches are required, wild cards are not supported, +# and only the first match is returned. +ID_ZPOOL=`${AWK} "/${ID_PATH}\>/ && !/^#/ { print \\$1; exit }" ${CONFIG}` +[ -z ${ID_ZPOOL} ] && die "Missing ID_ZPOOL for ID_PATH: ${ID_PATH}" + +if [ ${ID_ZPOOL} ]; then + echo "ID_PATH=${ID_PATH}" + echo "ID_ZPOOL=${ID_ZPOOL}" + echo "ID_ZPOOL_PATH=disk/zpool/${ID_ZPOOL}" +fi + +exit 0 diff --git a/config/zfs-build.m4 b/config/zfs-build.m4 index 4b47807790..d2ba2977fa 100644 --- a/config/zfs-build.m4 +++ b/config/zfs-build.m4 @@ -52,13 +52,14 @@ LIBDIR=${LIBDIR} CMDDIR=${CMDDIR} MODDIR=${MODDIR} SCRIPTDIR=${SCRIPTDIR} -UDEVDIR=\${TOPDIR}/scripts/udev-rules +ETCDIR=\${TOPDIR}/etc ZPOOLDIR=\${TOPDIR}/scripts/zpool-config ZDB=\${CMDDIR}/zdb/zdb ZFS=\${CMDDIR}/zfs/zfs ZINJECT=\${CMDDIR}/zinject/zinject ZPOOL=\${CMDDIR}/zpool/zpool +ZPOOL_ID=\${CMDDIR}/zpool_id/zpool_id ZTEST=\${CMDDIR}/ztest/ztest COMMON_SH=\${SCRIPTDIR}/common.sh diff --git a/configure.ac b/configure.ac index 7bc41dc225..f49b09b764 100644 --- a/configure.ac +++ b/configure.ac @@ -52,6 +52,7 @@ ZFS_AC_DEBUG AC_CONFIG_FILES([ Makefile config/Makefile + etc/Makefile man/Makefile man/man8/Makefile lib/Makefile @@ -68,6 +69,7 @@ AC_CONFIG_FILES([ cmd/zfs/Makefile cmd/zinject/Makefile cmd/zpool/Makefile + cmd/zpool_id/Makefile cmd/ztest/Makefile module/Makefile module/avl/Makefile diff --git a/etc/Makefile.am b/etc/Makefile.am new file mode 100644 index 0000000000..1bc847d1a2 --- /dev/null +++ b/etc/Makefile.am @@ -0,0 +1,3 @@ +sysconfdir = /etc +nobase_dist_sysconf_DATA = zfs/* +nobase_dist_sysconf_DATA += udev/rules.d/* diff --git a/etc/udev/rules.d/60-zpool.rules b/etc/udev/rules.d/60-zpool.rules new file mode 100644 index 0000000000..0f4a356dd6 --- /dev/null +++ b/etc/udev/rules.d/60-zpool.rules @@ -0,0 +1,8 @@ +# +# /etc/udev/rules.d/99-zpool.rules +# + +ENV{DEVTYPE}=="disk", IMPORT{program}="/usr/bin/zpool_id -d %p" + +KERNEL=="*[!0-9]", ENV{SUBSYSTEM}=="block", ENV{ID_ZPOOL}=="?*", SYMLINK+="$env{ID_ZPOOL_PATH}" +KERNEL=="*[0-9]", ENV{SUBSYSTEM}=="block", ENV{ID_ZPOOL}=="?*", SYMLINK+="$env{ID_ZPOOL_PATH}-part%n" diff --git a/etc/zfs/zdev.conf b/etc/zfs/zdev.conf new file mode 100644 index 0000000000..236c342b3a --- /dev/null +++ b/etc/zfs/zdev.conf @@ -0,0 +1,9 @@ +# +# Custom by-path mapping for large JBOD configurations +# +# Example Config: Desktop +# + +# +#disk1 pci-0000:61:06.1-scsi-0:0:0:0 +#disk2 pci-0000:61:06.1-scsi-0:0:0:1 diff --git a/etc/zfs/zdev.conf.dragon.example b/etc/zfs/zdev.conf.dragon.example new file mode 100644 index 0000000000..23ef7f09d5 --- /dev/null +++ b/etc/zfs/zdev.conf.dragon.example @@ -0,0 +1,176 @@ +# +# Custom by-path mapping for large JBOD configurations +# +# Example Config: +# Quarter scale dragon drawer based SSU for RHEL6 +# + +# Channel A: PCI Bus 3, Enclosure 0x50001ff10e991000 +a1 pci-0000:03:00.0-sas-0x50001ff10e991000-34 +a2 pci-0000:03:00.0-sas-0x50001ff10e991000-35 +a3 pci-0000:03:00.0-sas-0x50001ff10e991000-39 +a4 pci-0000:03:00.0-sas-0x50001ff10e991000-40 +a5 pci-0000:03:00.0-sas-0x50001ff10e991000-44 +a6 pci-0000:03:00.0-sas-0x50001ff10e991000-45 +a7 pci-0000:03:00.0-sas-0x50001ff10e991000-48 +a8 pci-0000:03:00.0-sas-0x50001ff10e991000-49 +a9 pci-0000:03:00.0-sas-0x50001ff10e991000-50 +a10 pci-0000:03:00.0-sas-0x50001ff10e991000-53 +a11 pci-0000:03:00.0-sas-0x50001ff10e991000-54 +a12 pci-0000:03:00.0-sas-0x50001ff10e991000-55 +a13 pci-0000:03:00.0-sas-0x50001ff10e991000-58 +a14 pci-0000:03:00.0-sas-0x50001ff10e991000-59 +a15 pci-0000:03:00.0-sas-0x50001ff10e991000-60 + +# Channel B: PCI Bus 3, Enclosure 0x50001ff10e9d1000 +b1 pci-0000:03:00.0-sas-0x50001ff10e9d1000-34 +b2 pci-0000:03:00.0-sas-0x50001ff10e9d1000-35 +b3 pci-0000:03:00.0-sas-0x50001ff10e9d1000-39 +b4 pci-0000:03:00.0-sas-0x50001ff10e9d1000-40 +b5 pci-0000:03:00.0-sas-0x50001ff10e9d1000-44 +b6 pci-0000:03:00.0-sas-0x50001ff10e9d1000-45 +b7 pci-0000:03:00.0-sas-0x50001ff10e9d1000-48 +b8 pci-0000:03:00.0-sas-0x50001ff10e9d1000-49 +b9 pci-0000:03:00.0-sas-0x50001ff10e9d1000-50 +b10 pci-0000:03:00.0-sas-0x50001ff10e9d1000-53 +b11 pci-0000:03:00.0-sas-0x50001ff10e9d1000-54 +b12 pci-0000:03:00.0-sas-0x50001ff10e9d1000-55 +b13 pci-0000:03:00.0-sas-0x50001ff10e9d1000-58 +b14 pci-0000:03:00.0-sas-0x50001ff10e9d1000-59 +b15 pci-0000:03:00.0-sas-0x50001ff10e9d1000-60 + +# Channel C: PCI Bus 4, Enclosure 0x50001ff10e991000 +c1 pci-0000:04:00.0-sas-0x50001ff10e991000-31 +c2 pci-0000:04:00.0-sas-0x50001ff10e991000-32 +c3 pci-0000:04:00.0-sas-0x50001ff10e991000-33 +c4 pci-0000:04:00.0-sas-0x50001ff10e991000-36 +c5 pci-0000:04:00.0-sas-0x50001ff10e991000-37 +c6 pci-0000:04:00.0-sas-0x50001ff10e991000-38 +c7 pci-0000:04:00.0-sas-0x50001ff10e991000-41 +c8 pci-0000:04:00.0-sas-0x50001ff10e991000-42 +c9 pci-0000:04:00.0-sas-0x50001ff10e991000-43 +c10 pci-0000:04:00.0-sas-0x50001ff10e991000-46 +c11 pci-0000:04:00.0-sas-0x50001ff10e991000-47 +c12 pci-0000:04:00.0-sas-0x50001ff10e991000-51 +c13 pci-0000:04:00.0-sas-0x50001ff10e991000-52 +c14 pci-0000:04:00.0-sas-0x50001ff10e991000-56 +c15 pci-0000:04:00.0-sas-0x50001ff10e991000-57 + +# Channel D: PCI Bus 4, Enclosure 0x50001ff10e9d1000 +d1 pci-0000:04:00.0-sas-0x50001ff10e9d1000-31 +d2 pci-0000:04:00.0-sas-0x50001ff10e9d1000-32 +d3 pci-0000:04:00.0-sas-0x50001ff10e9d1000-33 +d4 pci-0000:04:00.0-sas-0x50001ff10e9d1000-36 +d5 pci-0000:04:00.0-sas-0x50001ff10e9d1000-37 +d6 pci-0000:04:00.0-sas-0x50001ff10e9d1000-38 +d7 pci-0000:04:00.0-sas-0x50001ff10e9d1000-41 +d8 pci-0000:04:00.0-sas-0x50001ff10e9d1000-42 +d9 pci-0000:04:00.0-sas-0x50001ff10e9d1000-43 +d10 pci-0000:04:00.0-sas-0x50001ff10e9d1000-46 +d11 pci-0000:04:00.0-sas-0x50001ff10e9d1000-47 +d12 pci-0000:04:00.0-sas-0x50001ff10e9d1000-51 +d13 pci-0000:04:00.0-sas-0x50001ff10e9d1000-52 +d14 pci-0000:04:00.0-sas-0x50001ff10e9d1000-56 +d15 pci-0000:04:00.0-sas-0x50001ff10e9d1000-57 + +# Channel E: PCI Bus 84, Enclosure 0x50001ff10e991000 +e1 pci-0000:84:00.0-sas-0x50001ff10e991000-3 +e2 pci-0000:84:00.0-sas-0x50001ff10e991000-4 +e3 pci-0000:84:00.0-sas-0x50001ff10e991000-5 +e4 pci-0000:84:00.0-sas-0x50001ff10e991000-8 +e5 pci-0000:84:00.0-sas-0x50001ff10e991000-9 +e6 pci-0000:84:00.0-sas-0x50001ff10e991000-10 +e7 pci-0000:84:00.0-sas-0x50001ff10e991000-13 +e8 pci-0000:84:00.0-sas-0x50001ff10e991000-14 +e9 pci-0000:84:00.0-sas-0x50001ff10e991000-15 +e10 pci-0000:84:00.0-sas-0x50001ff10e991000-19 +e11 pci-0000:84:00.0-sas-0x50001ff10e991000-20 +e12 pci-0000:84:00.0-sas-0x50001ff10e991000-24 +e13 pci-0000:84:00.0-sas-0x50001ff10e991000-25 +e14 pci-0000:84:00.0-sas-0x50001ff10e991000-29 +e15 pci-0000:84:00.0-sas-0x50001ff10e991000-30 + +# Channel F: PCI Bus 84, Enclosure 0x50001ff10e9d1000 +f1 pci-0000:84:00.0-sas-0x50001ff10e9d1000-3 +f2 pci-0000:84:00.0-sas-0x50001ff10e9d1000-4 +f3 pci-0000:84:00.0-sas-0x50001ff10e9d1000-5 +f4 pci-0000:84:00.0-sas-0x50001ff10e9d1000-8 +f5 pci-0000:84:00.0-sas-0x50001ff10e9d1000-9 +f6 pci-0000:84:00.0-sas-0x50001ff10e9d1000-10 +f7 pci-0000:84:00.0-sas-0x50001ff10e9d1000-13 +f8 pci-0000:84:00.0-sas-0x50001ff10e9d1000-14 +f9 pci-0000:84:00.0-sas-0x50001ff10e9d1000-15 +f10 pci-0000:84:00.0-sas-0x50001ff10e9d1000-19 +f11 pci-0000:84:00.0-sas-0x50001ff10e9d1000-20 +f12 pci-0000:84:00.0-sas-0x50001ff10e9d1000-24 +f13 pci-0000:84:00.0-sas-0x50001ff10e9d1000-25 +f14 pci-0000:84:00.0-sas-0x50001ff10e9d1000-29 +f15 pci-0000:84:00.0-sas-0x50001ff10e9d1000-30 + +# Channel G: PCI Bus 85, Enclosure 0x50001ff10e991000 +g1 pci-0000:85:00.0-sas-0x50001ff10e991000-1 +g2 pci-0000:85:00.0-sas-0x50001ff10e991000-2 +g3 pci-0000:85:00.0-sas-0x50001ff10e991000-6 +g4 pci-0000:85:00.0-sas-0x50001ff10e991000-7 +g5 pci-0000:85:00.0-sas-0x50001ff10e991000-11 +g6 pci-0000:85:00.0-sas-0x50001ff10e991000-12 +g7 pci-0000:85:00.0-sas-0x50001ff10e991000-16 +g8 pci-0000:85:00.0-sas-0x50001ff10e991000-17 +g9 pci-0000:85:00.0-sas-0x50001ff10e991000-18 +g10 pci-0000:85:00.0-sas-0x50001ff10e991000-21 +g11 pci-0000:85:00.0-sas-0x50001ff10e991000-22 +g12 pci-0000:85:00.0-sas-0x50001ff10e991000-23 +g13 pci-0000:85:00.0-sas-0x50001ff10e991000-26 +g14 pci-0000:85:00.0-sas-0x50001ff10e991000-27 +g15 pci-0000:85:00.0-sas-0x50001ff10e991000-28 + +# Channel H: PCI Bus 85, Enclosure 0x50001ff10e9d1000 +h1 pci-0000:85:00.0-sas-0x50001ff10e9d1000-1 +h2 pci-0000:85:00.0-sas-0x50001ff10e9d1000-2 +h3 pci-0000:85:00.0-sas-0x50001ff10e9d1000-6 +h4 pci-0000:85:00.0-sas-0x50001ff10e9d1000-7 +h5 pci-0000:85:00.0-sas-0x50001ff10e9d1000-11 +h6 pci-0000:85:00.0-sas-0x50001ff10e9d1000-12 +h7 pci-0000:85:00.0-sas-0x50001ff10e9d1000-16 +h8 pci-0000:85:00.0-sas-0x50001ff10e9d1000-17 +h9 pci-0000:85:00.0-sas-0x50001ff10e9d1000-18 +h10 pci-0000:85:00.0-sas-0x50001ff10e9d1000-21 +h11 pci-0000:85:00.0-sas-0x50001ff10e9d1000-22 +h12 pci-0000:85:00.0-sas-0x50001ff10e9d1000-23 +h13 pci-0000:85:00.0-sas-0x50001ff10e9d1000-26 +h14 pci-0000:85:00.0-sas-0x50001ff10e9d1000-27 +h15 pci-0000:85:00.0-sas-0x50001ff10e9d1000-28 + +# Channel I: PCI Bus 83, Enclosure 0x5000155359b8e33f +i1 pci-0000:83:00.0-sas-0x5000155359b8e33f-0 +i2 pci-0000:83:00.0-sas-0x5000155359b8e33f-1 +i3 pci-0000:83:00.0-sas-0x5000155359b8e33f-2 +i4 pci-0000:83:00.0-sas-0x5000155359b8e33f-3 +i5 pci-0000:83:00.0-sas-0x5000155359b8e33f-4 +i6 pci-0000:83:00.0-sas-0x5000155359b8e33f-5 +i7 pci-0000:83:00.0-sas-0x5000155359b8e33f-6 +i8 pci-0000:83:00.0-sas-0x5000155359b8e33f-7 +i9 pci-0000:83:00.0-sas-0x5000155359b8e33f-8 +i10 pci-0000:83:00.0-sas-0x5000155359b8e33f-9 +i11 pci-0000:83:00.0-sas-0x5000155359b8e33f-10 +i12 pci-0000:83:00.0-sas-0x5000155359b8e33f-11 +i13 pci-0000:83:00.0-sas-0x5000155359b8e33f-12 +i14 pci-0000:83:00.0-sas-0x5000155359b8e33f-13 +i15 pci-0000:83:00.0-sas-0x5000155359b8e33f-14 + +# Channel J: PCI Bus 83, Enclosure 0x5000155359dba33f +j1 pci-0000:83:00.0-sas-0x5000155359dba33f-0 +j2 pci-0000:83:00.0-sas-0x5000155359dba33f-1 +j3 pci-0000:83:00.0-sas-0x5000155359dba33f-2 +j4 pci-0000:83:00.0-sas-0x5000155359dba33f-3 +j5 pci-0000:83:00.0-sas-0x5000155359dba33f-4 +j6 pci-0000:83:00.0-sas-0x5000155359dba33f-5 +j7 pci-0000:83:00.0-sas-0x5000155359dba33f-6 +j8 pci-0000:83:00.0-sas-0x5000155359dba33f-7 +j9 pci-0000:83:00.0-sas-0x5000155359dba33f-8 +j10 pci-0000:83:00.0-sas-0x5000155359dba33f-9 +j11 pci-0000:83:00.0-sas-0x5000155359dba33f-10 +j12 pci-0000:83:00.0-sas-0x5000155359dba33f-11 +j13 pci-0000:83:00.0-sas-0x5000155359dba33f-12 +j14 pci-0000:83:00.0-sas-0x5000155359dba33f-13 +j15 pci-0000:83:00.0-sas-0x5000155359dba33f-14 diff --git a/etc/zfs/zdev.conf.promise.example b/etc/zfs/zdev.conf.promise.example new file mode 100644 index 0000000000..8b068f89d0 --- /dev/null +++ b/etc/zfs/zdev.conf.promise.example @@ -0,0 +1,26 @@ +# +# Custom by-path mapping for large JBOD configurations +# +# Example Config: +# Single promise JBOD for RHEL6 +# + +# Channel A: PCI Bus 7, Enclosure 0x500304800027367f +a1 pci-0000:07:00.0-sas-0x500304800027367f-0 +a2 pci-0000:07:00.0-sas-0x500304800027367f-1 +a3 pci-0000:07:00.0-sas-0x500304800027367f-2 +a4 pci-0000:07:00.0-sas-0x500304800027367f-3 +a5 pci-0000:07:00.0-sas-0x500304800027367f-4 +a6 pci-0000:07:00.0-sas-0x500304800027367f-5 +a7 pci-0000:07:00.0-sas-0x500304800027367f-6 +a8 pci-0000:07:00.0-sas-0x500304800027367f-7 + +# Channel B: PCI Bus 7, Enclosure 0x500304800027367f +b1 pci-0000:07:00.0-sas-0x500304800027367f-8 +b2 pci-0000:07:00.0-sas-0x500304800027367f-9 +b3 pci-0000:07:00.0-sas-0x500304800027367f-10 +b4 pci-0000:07:00.0-sas-0x500304800027367f-11 +b5 pci-0000:07:00.0-sas-0x500304800027367f-12 +b6 pci-0000:07:00.0-sas-0x500304800027367f-13 +b7 pci-0000:07:00.0-sas-0x500304800027367f-14 +b8 pci-0000:07:00.0-sas-0x500304800027367f-15 diff --git a/etc/zfs/zdev.conf.x4550.example b/etc/zfs/zdev.conf.x4550.example new file mode 100644 index 0000000000..9c611ed457 --- /dev/null +++ b/etc/zfs/zdev.conf.x4550.example @@ -0,0 +1,66 @@ +# +# Custom by-path mapping for large JBOD configurations +# +# Example Config: +# Sun x4550 for RHEL5 +# + +# Channel A: PCI Bus 2 +a1 pci-0000:02:00.0-sas-0x50062b0000000001:1:0-0xd6807184d601e192:0 +a2 pci-0000:02:00.0-sas-0x50062b0000000002:1:1-0xd4905378e6e3d592:1 +a3 pci-0000:02:00.0-sas-0x50062b0000000003:1:2-0xd3827673d806d392:2 +a4 pci-0000:02:00.0-sas-0x50062b0000000004:1:3-0xd6805385d6e3e192:3 +a5 pci-0000:02:00.0-sas-0x50062b0000000005:1:4-0xd680655bd6f5b792:4 +a6 pci-0000:02:00.0-sas-0x50062b0000000006:1:5-0x7a967598ec06d091:5 +a7 pci-0000:02:00.0-sas-0x50062b0000000007:1:6-0xd3826c60d8fcbf92:6 +a8 pci-0000:02:00.0-sas-0x50062b0000000008:1:7-0xd6805271d6e2cd92:7 + +# Channel B: PCI Bus 3 +b1 pci-0000:03:00.0-sas-0x50062b0000000002:1:0-0xd680685fd6f8bb92:0 +b2 pci-0000:03:00.0-sas-0x50062b0000000003:1:1-0xd58c706de200cb92:1 +b3 pci-0000:03:00.0-sas-0x50062b0000000004:1:2-0xd5897480df04de92:2 +b4 pci-0000:03:00.0-sas-0x50062b0000000005:1:3-0xd6805764d6e7c092:3 +b5 pci-0000:03:00.0-sas-0x50062b0000000006:1:4-0xd6806a6dd6fac992:4 +b6 pci-0000:03:00.0-sas-0x50062b0000000007:1:5-0xd58c6b84e2fbe192:5 +b7 pci-0000:03:00.0-sas-0x50062b0000000008:1:6-0xd58a576ee0e7cb92:6 +b8 pci-0000:03:00.0-sas-0x50062b0000000009:1:7-0xd5877871dd08cf92:7 + +# Channel C: PCI Bus 4 +c1 pci-0000:04:00.0-sas-0x50062b0000000003:1:0-0xd6806678d6f6d492:0 +c2 pci-0000:04:00.0-sas-0x50062b0000000004:1:1-0xd680696fd6f9cb92:1 +c3 pci-0000:04:00.0-sas-0x50062b0000000005:1:2-0xd3827182d801e292:2 +c4 pci-0000:04:00.0-sas-0x50062b0000000006:1:3-0xd680666fd6f6cb92:3 +c5 pci-0000:04:00.0-sas-0x50062b0000000007:1:4-0xd6806970d6f9cc92:4 +c6 pci-0000:04:00.0-sas-0x50062b0000000008:1:5-0xd6806b62d6fbbe92:5 +c7 pci-0000:04:00.0-sas-0x50062b0000000009:1:6-0xd58a5760e0e7bd92:6 +c8 pci-0000:04:00.0-sas-0x50062b000000000a:1:7-0xd680717fd601dc92:7 + +# Channel D: PCI Bus 41 +d1 pci-0000:41:00.0-sas-0x50062b0000000004:1:0-0xd6806572d6f5ce92:0 +d2 pci-0000:41:00.0-sas-0x50062b0000000005:1:1-0xd6806983d6f9df92:1 +d3 pci-0000:41:00.0-sas-0x50062b0000000006:1:2-0xd3826c69d8fcc892:2 +d4 pci-0000:41:00.0-sas-0x50062b0000000007:1:3-0xd680725fd602bc92:3 +d5 pci-0000:41:00.0-sas-0x50062b0000000008:1:4-0xd6806971d6f9cd92:4 +d6 pci-0000:41:00.0-sas-0x50062b0000000009:1:5-0xd680726dd602ca92:5 +d7 pci-0000:41:00.0-sas-0x50062b000000000a:1:6-0xd3827772d807d292:6 +d8 pci-0000:41:00.0-sas-0x50062b000000000b:1:7-0xd4955584ebe5e192:7 + +# Channel E: PCI Bus 42 +e1 pci-0000:42:00.0-sas-0x50062b0000000005:1:0-0xd4925676e8e6d392:0 +e2 pci-0000:42:00.0-sas-0x50062b0000000006:1:1-0xd6806b6ed6fbca92:1 +e3 pci-0000:42:00.0-sas-0x50062b0000000007:1:2-0xd382765fd806bf92:2 +e4 pci-0000:42:00.0-sas-0x50062b0000000008:1:3-0xd587786cdd08ca92:3 +e5 pci-0000:42:00.0-sas-0x50062b0000000009:1:4-0xd66f4e5bc5deb792:4 +e6 pci-0000:42:00.0-sas-0x50062b000000000a:1:5-0xd6806879d6f8d592:5 +e7 pci-0000:42:00.0-sas-0x50062b000000000b:1:6-0xd5885175dee1d292:6 +e8 pci-0000:42:00.0-sas-0x50062b000000000c:1:7-0xd588515fdee1bc92:7 + +# Channel F: PCI Bus 43 +f1 pci-0000:43:00.0-sas-0x50062b0000000006:1:0-0xd66d6978c3f9d492:0 +f2 pci-0000:43:00.0-sas-0x50062b0000000007:1:1-0xd6806a5cd6fab892:1 +f3 pci-0000:43:00.0-sas-0x50062b0000000008:1:2-0xd6806563d6f5bf92:2 +f4 pci-0000:43:00.0-sas-0x50062b0000000009:1:3-0xd6805664d6e6c092:3 +f5 pci-0000:43:00.0-sas-0x50062b000000000a:1:4-0xd58c707ee200dc92:4 +f6 pci-0000:43:00.0-sas-0x50062b000000000b:1:5-0xd5885781dee7de92:5 +f7 pci-0000:43:00.0-sas-0x50062b000000000c:1:6-0xd3827481d804e192:6 +f8 pci-0000:43:00.0-sas-0x50062b000000000d:1:7-0xd6806863d6f8bf92:7 diff --git a/scripts/Makefile.am b/scripts/Makefile.am index 17360c4693..a1dfc3871e 100644 --- a/scripts/Makefile.am +++ b/scripts/Makefile.am @@ -3,7 +3,6 @@ nobase_pkglibexec_SCRIPTS = common.sh nobase_pkglibexec_SCRIPTS += zconfig.sh nobase_pkglibexec_SCRIPTS += zfs.sh nobase_pkglibexec_SCRIPTS += zpool-create.sh -nobase_pkglibexec_SCRIPTS += udev-rules/* nobase_pkglibexec_SCRIPTS += zpool-config/* EXTRA_DIST = zfs-update.sh $(nobase_pkglibexec_SCRIPTS) diff --git a/scripts/common.sh b/scripts/common.sh index 9b86507ad4..c8b1ba3176 100755 --- a/scripts/common.sh +++ b/scripts/common.sh @@ -25,13 +25,14 @@ RAID10S=() RAIDZS=() RAIDZ2S=() -UDEVDIR=${UDEVDIR:-/usr/libexec/zfs/udev-rules} +ETCDIR=${ETCDIR:-/etc} ZPOOLDIR=${ZPOOLDIR:-/usr/libexec/zfs/zpool-config} ZDB=${ZDB:-/usr/sbin/zdb} ZFS=${ZFS:-/usr/sbin/zfs} ZINJECT=${ZINJECT:-/usr/sbin/zinject} ZPOOL=${ZPOOL:-/usr/sbin/zpool} +ZPOOL_ID=${ZPOOL_ID:-/usr/bin/zpool_id} ZTEST=${ZTEST:-/usr/sbin/ztest} COMMON_SH=${COMMON_SH:-/usr/libexec/zfs/common.sh} @@ -206,11 +207,32 @@ unused_loop_device() { # udev_setup() { local SRC_PATH=$1 + local SRC_RULES=${ETCDIR}/udev/rules.d/99-zpool.rules + local DST_RULES=/etc/udev/rules.d/99-zpool.rules + local DST_ZPOOL_ID=/usr/bin/zpool_id local DST_FILE=`basename ${SRC_PATH} | cut -f1-2 -d'.'` - local DST_PATH=/etc/udev/rules.d/${DST_FILE} + local DST_PATH=/etc/zfs/${DST_FILE} + + # XXX: Copy files from source tree to installed system. + # This should be avoided if at all possible, however at + # the moment I see no clean way to add a udev rules file + # which is not in the default udevd search paths. On + # top of the the rules file we add will need to find + # the zpool_id support utility and the zdef.conf file. cp -f ${SRC_PATH} ${DST_PATH} + if [ ! -f ${DST_ZPOOL_ID} ]; then + cp ${ZPOOL_ID} ${DST_ZPOOL_ID} + chmod 755 ${DST_ZPOOL_ID} + fi + + if [ ! -f ${DST_RULES} ]; then + cp ${SRC_RULES} ${DST_RULES} + chmod 644 ${DST_RULES} + fi + + if [ -f ${UDEVADM} ]; then ${UDEVADM} trigger ${UDEVADM} settle diff --git a/scripts/udev-rules/99-zpool.rules.dragon b/scripts/udev-rules/99-zpool.rules.dragon deleted file mode 100644 index 7c589f595f..0000000000 --- a/scripts/udev-rules/99-zpool.rules.dragon +++ /dev/null @@ -1,331 +0,0 @@ -# -# /etc/udev/rules.d/99-zpool.rules -# - -ENV{DEVTYPE}=="disk", IMPORT{program}="path_id %p" - -# Full devices (*:pci*port:*:id*) -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:3*", SYMLINK+="disk/zpool/a1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:4*", SYMLINK+="disk/zpool/a2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:5*", SYMLINK+="disk/zpool/a3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:6*", SYMLINK+="disk/zpool/a4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:7*", SYMLINK+="disk/zpool/a5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:8*", SYMLINK+="disk/zpool/a6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:9*", SYMLINK+="disk/zpool/a7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:10*", SYMLINK+="disk/zpool/a8" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:11*", SYMLINK+="disk/zpool/a9" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:12*", SYMLINK+="disk/zpool/a10" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:13*", SYMLINK+="disk/zpool/a11" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:14*", SYMLINK+="disk/zpool/a12" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:15*", SYMLINK+="disk/zpool/a13" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:16*", SYMLINK+="disk/zpool/a14" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:17*", SYMLINK+="disk/zpool/a15" - -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*4:*:3*", SYMLINK+="disk/zpool/b1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*4:*:4*", SYMLINK+="disk/zpool/b2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*4:*:5*", SYMLINK+="disk/zpool/b3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*4:*:6*", SYMLINK+="disk/zpool/b4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*4:*:7*", SYMLINK+="disk/zpool/b5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*4:*:8*", SYMLINK+="disk/zpool/b6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*4:*:9*", SYMLINK+="disk/zpool/b7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*4:*:10*", SYMLINK+="disk/zpool/b8" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*4:*:11*", SYMLINK+="disk/zpool/b9" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*4:*:12*", SYMLINK+="disk/zpool/b10" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*4:*:13*", SYMLINK+="disk/zpool/b11" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*4:*:14*", SYMLINK+="disk/zpool/b12" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*4:*:15*", SYMLINK+="disk/zpool/b13" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*4:*:16*", SYMLINK+="disk/zpool/b14" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*4:*:17*", SYMLINK+="disk/zpool/b15" - -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:3*", SYMLINK+="disk/zpool/c1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:4*", SYMLINK+="disk/zpool/c2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:5*", SYMLINK+="disk/zpool/c3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:6*", SYMLINK+="disk/zpool/c4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:7*", SYMLINK+="disk/zpool/c5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:8*", SYMLINK+="disk/zpool/c6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:9*", SYMLINK+="disk/zpool/c7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:10*", SYMLINK+="disk/zpool/c8" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:11*", SYMLINK+="disk/zpool/c9" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:12*", SYMLINK+="disk/zpool/c10" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:13*", SYMLINK+="disk/zpool/c11" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:14*", SYMLINK+="disk/zpool/c12" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:15*", SYMLINK+="disk/zpool/c13" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:16*", SYMLINK+="disk/zpool/c14" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:17*", SYMLINK+="disk/zpool/c15" - -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*4:*:3*", SYMLINK+="disk/zpool/d1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*4:*:4*", SYMLINK+="disk/zpool/d2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*4:*:5*", SYMLINK+="disk/zpool/d3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*4:*:6*", SYMLINK+="disk/zpool/d4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*4:*:7*", SYMLINK+="disk/zpool/d5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*4:*:8*", SYMLINK+="disk/zpool/d6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*4:*:9*", SYMLINK+="disk/zpool/d7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*4:*:10*", SYMLINK+="disk/zpool/d8" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*4:*:11*", SYMLINK+="disk/zpool/d9" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*4:*:12*", SYMLINK+="disk/zpool/d10" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*4:*:13*", SYMLINK+="disk/zpool/d11" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*4:*:14*", SYMLINK+="disk/zpool/d12" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*4:*:15*", SYMLINK+="disk/zpool/d13" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*4:*:16*", SYMLINK+="disk/zpool/d14" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*4:*:17*", SYMLINK+="disk/zpool/d15" - -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*0:*:3*", SYMLINK+="disk/zpool/e1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*0:*:4*", SYMLINK+="disk/zpool/e2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*0:*:5*", SYMLINK+="disk/zpool/e3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*0:*:6*", SYMLINK+="disk/zpool/e4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*0:*:7*", SYMLINK+="disk/zpool/e5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*0:*:8*", SYMLINK+="disk/zpool/e6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*0:*:9*", SYMLINK+="disk/zpool/e7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*0:*:10*", SYMLINK+="disk/zpool/e8" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*0:*:11*", SYMLINK+="disk/zpool/e9" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*0:*:12*", SYMLINK+="disk/zpool/e10" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*0:*:13*", SYMLINK+="disk/zpool/e11" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*0:*:14*", SYMLINK+="disk/zpool/e12" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*0:*:15*", SYMLINK+="disk/zpool/e13" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*0:*:16*", SYMLINK+="disk/zpool/e14" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*0:*:17*", SYMLINK+="disk/zpool/e15" - -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*4:*:3*", SYMLINK+="disk/zpool/f1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*4:*:4*", SYMLINK+="disk/zpool/f2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*4:*:5*", SYMLINK+="disk/zpool/f3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*4:*:6*", SYMLINK+="disk/zpool/f4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*4:*:7*", SYMLINK+="disk/zpool/f5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*4:*:8*", SYMLINK+="disk/zpool/f6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*4:*:9*", SYMLINK+="disk/zpool/f7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*4:*:10*", SYMLINK+="disk/zpool/f8" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*4:*:11*", SYMLINK+="disk/zpool/f9" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*4:*:12*", SYMLINK+="disk/zpool/f10" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*4:*:13*", SYMLINK+="disk/zpool/f11" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*4:*:14*", SYMLINK+="disk/zpool/f12" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*4:*:15*", SYMLINK+="disk/zpool/f13" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*4:*:16*", SYMLINK+="disk/zpool/f14" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:84:00.0*4:*:17*", SYMLINK+="disk/zpool/f15" - -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*0:*:3*", SYMLINK+="disk/zpool/g1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*0:*:4*", SYMLINK+="disk/zpool/g2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*0:*:5*", SYMLINK+="disk/zpool/g3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*0:*:6*", SYMLINK+="disk/zpool/g4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*0:*:7*", SYMLINK+="disk/zpool/g5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*0:*:8*", SYMLINK+="disk/zpool/g6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*0:*:9*", SYMLINK+="disk/zpool/g7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*0:*:10*", SYMLINK+="disk/zpool/g8" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*0:*:11*", SYMLINK+="disk/zpool/g9" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*0:*:12*", SYMLINK+="disk/zpool/g10" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*0:*:13*", SYMLINK+="disk/zpool/g11" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*0:*:14*", SYMLINK+="disk/zpool/g12" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*0:*:15*", SYMLINK+="disk/zpool/g13" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*0:*:16*", SYMLINK+="disk/zpool/g14" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*0:*:17*", SYMLINK+="disk/zpool/g15" - -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*4:*:3*", SYMLINK+="disk/zpool/h1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*4:*:4*", SYMLINK+="disk/zpool/h2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*4:*:5*", SYMLINK+="disk/zpool/h3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*4:*:6*", SYMLINK+="disk/zpool/h4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*4:*:7*", SYMLINK+="disk/zpool/h5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*4:*:8*", SYMLINK+="disk/zpool/h6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*4:*:9*", SYMLINK+="disk/zpool/h7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*4:*:10*", SYMLINK+="disk/zpool/h8" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*4:*:11*", SYMLINK+="disk/zpool/h9" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*4:*:12*", SYMLINK+="disk/zpool/h10" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*4:*:13*", SYMLINK+="disk/zpool/h11" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*4:*:14*", SYMLINK+="disk/zpool/h12" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*4:*:15*", SYMLINK+="disk/zpool/h13" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*4:*:16*", SYMLINK+="disk/zpool/h14" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:85:00.0*4:*:17*", SYMLINK+="disk/zpool/h15" - -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:0*", SYMLINK+="disk/zpool/i1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:1*", SYMLINK+="disk/zpool/i2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:2*", SYMLINK+="disk/zpool/i3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:3*", SYMLINK+="disk/zpool/i4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:4*", SYMLINK+="disk/zpool/i5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:5*", SYMLINK+="disk/zpool/i6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:6*", SYMLINK+="disk/zpool/i7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:7*", SYMLINK+="disk/zpool/i8" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:8*", SYMLINK+="disk/zpool/i9" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:9*", SYMLINK+="disk/zpool/i10" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:10*", SYMLINK+="disk/zpool/i11" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:11*", SYMLINK+="disk/zpool/i12" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:12*", SYMLINK+="disk/zpool/i13" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:13*", SYMLINK+="disk/zpool/i14" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:14*", SYMLINK+="disk/zpool/i15" -#ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*0:*:15*", SYMLINK+="disk/zpool/i16" - -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:0*", SYMLINK+="disk/zpool/j1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:1*", SYMLINK+="disk/zpool/j2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:2*", SYMLINK+="disk/zpool/j3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:3*", SYMLINK+="disk/zpool/j4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:4*", SYMLINK+="disk/zpool/j5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:5*", SYMLINK+="disk/zpool/j6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:6*", SYMLINK+="disk/zpool/j7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:7*", SYMLINK+="disk/zpool/j8" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:8*", SYMLINK+="disk/zpool/j9" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:9*", SYMLINK+="disk/zpool/j10" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:10*", SYMLINK+="disk/zpool/j11" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:11*", SYMLINK+="disk/zpool/j12" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:12*", SYMLINK+="disk/zpool/j13" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:13*", SYMLINK+="disk/zpool/j14" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:14*", SYMLINK+="disk/zpool/j15" -#ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:83:00.0*4:*:15*", SYMLINK+="disk/zpool/j16" - -# Partitions (*:pci*port:*:id*) -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:3*", SYMLINK+="disk/zpool/a1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:4*", SYMLINK+="disk/zpool/a2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:5*", SYMLINK+="disk/zpool/a3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:6*", SYMLINK+="disk/zpool/a4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:7*", SYMLINK+="disk/zpool/a5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:8*", SYMLINK+="disk/zpool/a6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:9*", SYMLINK+="disk/zpool/a7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:10*", SYMLINK+="disk/zpool/a8-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:11*", SYMLINK+="disk/zpool/a9-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:12*", SYMLINK+="disk/zpool/a10-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:13*", SYMLINK+="disk/zpool/a11-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:14*", SYMLINK+="disk/zpool/a12-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:15*", SYMLINK+="disk/zpool/a13-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:16*", SYMLINK+="disk/zpool/a14-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:17*", SYMLINK+="disk/zpool/a15-part%n" - -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*4:*:3*", SYMLINK+="disk/zpool/b1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*4:*:4*", SYMLINK+="disk/zpool/b2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*4:*:5*", SYMLINK+="disk/zpool/b3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*4:*:6*", SYMLINK+="disk/zpool/b4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*4:*:7*", SYMLINK+="disk/zpool/b5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*4:*:8*", SYMLINK+="disk/zpool/b6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*4:*:9*", SYMLINK+="disk/zpool/b7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*4:*:10*", SYMLINK+="disk/zpool/b8-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*4:*:11*", SYMLINK+="disk/zpool/b9-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*4:*:12*", SYMLINK+="disk/zpool/b10-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*4:*:13*", SYMLINK+="disk/zpool/b11-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*4:*:14*", SYMLINK+="disk/zpool/b12-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*4:*:15*", SYMLINK+="disk/zpool/b13-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*4:*:16*", SYMLINK+="disk/zpool/b14-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*4:*:17*", SYMLINK+="disk/zpool/b15-part%n" - -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:3*", SYMLINK+="disk/zpool/c1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:4*", SYMLINK+="disk/zpool/c2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:5*", SYMLINK+="disk/zpool/c3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:6*", SYMLINK+="disk/zpool/c4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:7*", SYMLINK+="disk/zpool/c5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:8*", SYMLINK+="disk/zpool/c6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:9*", SYMLINK+="disk/zpool/c7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:10*", SYMLINK+="disk/zpool/c8-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:11*", SYMLINK+="disk/zpool/c9-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:12*", SYMLINK+="disk/zpool/c10-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:13*", SYMLINK+="disk/zpool/c11-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:14*", SYMLINK+="disk/zpool/c12-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:15*", SYMLINK+="disk/zpool/c13-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:16*", SYMLINK+="disk/zpool/c14-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:17*", SYMLINK+="disk/zpool/c15-part%n" - -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*4:*:3*", SYMLINK+="disk/zpool/d1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*4:*:4*", SYMLINK+="disk/zpool/d2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*4:*:5*", SYMLINK+="disk/zpool/d3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*4:*:6*", SYMLINK+="disk/zpool/d4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*4:*:7*", SYMLINK+="disk/zpool/d5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*4:*:8*", SYMLINK+="disk/zpool/d6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*4:*:9*", SYMLINK+="disk/zpool/d7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*4:*:10*", SYMLINK+="disk/zpool/d8-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*4:*:11*", SYMLINK+="disk/zpool/d9-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*4:*:12*", SYMLINK+="disk/zpool/d10-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*4:*:13*", SYMLINK+="disk/zpool/d11-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*4:*:14*", SYMLINK+="disk/zpool/d12-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*4:*:15*", SYMLINK+="disk/zpool/d13-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*4:*:16*", SYMLINK+="disk/zpool/d14-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*4:*:17*", SYMLINK+="disk/zpool/d15-part%n" - -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*0:*:3*", SYMLINK+="disk/zpool/e1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*0:*:4*", SYMLINK+="disk/zpool/e2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*0:*:5*", SYMLINK+="disk/zpool/e3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*0:*:6*", SYMLINK+="disk/zpool/e4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*0:*:7*", SYMLINK+="disk/zpool/e5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*0:*:8*", SYMLINK+="disk/zpool/e6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*0:*:9*", SYMLINK+="disk/zpool/e7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*0:*:10*", SYMLINK+="disk/zpool/e8-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*0:*:11*", SYMLINK+="disk/zpool/e9-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*0:*:12*", SYMLINK+="disk/zpool/e10-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*0:*:13*", SYMLINK+="disk/zpool/e11-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*0:*:14*", SYMLINK+="disk/zpool/e12-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*0:*:15*", SYMLINK+="disk/zpool/e13-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*0:*:16*", SYMLINK+="disk/zpool/e14-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*0:*:17*", SYMLINK+="disk/zpool/e15-part%n" - -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*4:*:3*", SYMLINK+="disk/zpool/f1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*4:*:4*", SYMLINK+="disk/zpool/f2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*4:*:5*", SYMLINK+="disk/zpool/f3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*4:*:6*", SYMLINK+="disk/zpool/f4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*4:*:7*", SYMLINK+="disk/zpool/f5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*4:*:8*", SYMLINK+="disk/zpool/f6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*4:*:9*", SYMLINK+="disk/zpool/f7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*4:*:10*", SYMLINK+="disk/zpool/f8-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*4:*:11*", SYMLINK+="disk/zpool/f9-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*4:*:12*", SYMLINK+="disk/zpool/f10-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*4:*:13*", SYMLINK+="disk/zpool/f11-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*4:*:14*", SYMLINK+="disk/zpool/f12-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*4:*:15*", SYMLINK+="disk/zpool/f13-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*4:*:16*", SYMLINK+="disk/zpool/f14-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:84:00.0*4:*:17*", SYMLINK+="disk/zpool/f15-part%n" - -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*0:*:3*", SYMLINK+="disk/zpool/g1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*0:*:4*", SYMLINK+="disk/zpool/g2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*0:*:5*", SYMLINK+="disk/zpool/g3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*0:*:6*", SYMLINK+="disk/zpool/g4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*0:*:7*", SYMLINK+="disk/zpool/g5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*0:*:8*", SYMLINK+="disk/zpool/g6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*0:*:9*", SYMLINK+="disk/zpool/g7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*0:*:10*", SYMLINK+="disk/zpool/g8-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*0:*:11*", SYMLINK+="disk/zpool/g9-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*0:*:12*", SYMLINK+="disk/zpool/g10-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*0:*:13*", SYMLINK+="disk/zpool/g11-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*0:*:14*", SYMLINK+="disk/zpool/g12-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*0:*:15*", SYMLINK+="disk/zpool/g13-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*0:*:16*", SYMLINK+="disk/zpool/g14-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*0:*:17*", SYMLINK+="disk/zpool/g15-part%n" - -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*4:*:3*", SYMLINK+="disk/zpool/h1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*4:*:4*", SYMLINK+="disk/zpool/h2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*4:*:5*", SYMLINK+="disk/zpool/h3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*4:*:6*", SYMLINK+="disk/zpool/h4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*4:*:7*", SYMLINK+="disk/zpool/h5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*4:*:8*", SYMLINK+="disk/zpool/h6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*4:*:9*", SYMLINK+="disk/zpool/h7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*4:*:10*", SYMLINK+="disk/zpool/h8-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*4:*:11*", SYMLINK+="disk/zpool/h9-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*4:*:12*", SYMLINK+="disk/zpool/h10-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*4:*:13*", SYMLINK+="disk/zpool/h11-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*4:*:14*", SYMLINK+="disk/zpool/h12-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*4:*:15*", SYMLINK+="disk/zpool/h13-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*4:*:16*", SYMLINK+="disk/zpool/h14-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:85:00.0*4:*:17*", SYMLINK+="disk/zpool/h15-part%n" - -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:0*", SYMLINK+="disk/zpool/i1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:1*", SYMLINK+="disk/zpool/i2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:2*", SYMLINK+="disk/zpool/i3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:3*", SYMLINK+="disk/zpool/i4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:4*", SYMLINK+="disk/zpool/i5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:5*", SYMLINK+="disk/zpool/i6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:6*", SYMLINK+="disk/zpool/i7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:7*", SYMLINK+="disk/zpool/i8-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:8*", SYMLINK+="disk/zpool/i9-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:9*", SYMLINK+="disk/zpool/i10-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:10*", SYMLINK+="disk/zpool/i11-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:11*", SYMLINK+="disk/zpool/i12-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:12*", SYMLINK+="disk/zpool/i13-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:13*", SYMLINK+="disk/zpool/i14-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:14*", SYMLINK+="disk/zpool/i15-part%n" -#ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*0:*:15*", SYMLINK+="disk/zpool/i16-part%n" - -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:0*", SYMLINK+="disk/zpool/j1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:1*", SYMLINK+="disk/zpool/j2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:2*", SYMLINK+="disk/zpool/j3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:3*", SYMLINK+="disk/zpool/j4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:4*", SYMLINK+="disk/zpool/j5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:5*", SYMLINK+="disk/zpool/j6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:6*", SYMLINK+="disk/zpool/j7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:7*", SYMLINK+="disk/zpool/j8-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:8*", SYMLINK+="disk/zpool/j9-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:9*", SYMLINK+="disk/zpool/j10-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:10*", SYMLINK+="disk/zpool/j11-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:11*", SYMLINK+="disk/zpool/j12-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:12*", SYMLINK+="disk/zpool/j13-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:13*", SYMLINK+="disk/zpool/j14-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:14*", SYMLINK+="disk/zpool/j15-part%n" -#ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:83:00.0*4:*:15*", SYMLINK+="disk/zpool/j16-part%n" diff --git a/scripts/udev-rules/99-zpool.rules.promise b/scripts/udev-rules/99-zpool.rules.promise deleted file mode 100644 index 8a32a539b4..0000000000 --- a/scripts/udev-rules/99-zpool.rules.promise +++ /dev/null @@ -1,41 +0,0 @@ -# -# /etc/udev/rules.d/99-zpool.rules -# - -ENV{DEVTYPE}=="disk", IMPORT{program}="path_id %p" - -# Full devices (*:pci*port:*:id-lun) -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:8-lun0", SYMLINK+="disk/zpool/a1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:9-lun0", SYMLINK+="disk/zpool/a2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:10-lun0", SYMLINK+="disk/zpool/a3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:11-lun0", SYMLINK+="disk/zpool/a4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:12-lun0", SYMLINK+="disk/zpool/a5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:13-lun0", SYMLINK+="disk/zpool/a6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:14-lun0", SYMLINK+="disk/zpool/a7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:15-lun0", SYMLINK+="disk/zpool/a8" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:16-lun0", SYMLINK+="disk/zpool/b1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:17-lun0", SYMLINK+="disk/zpool/b2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:18-lun0", SYMLINK+="disk/zpool/b3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:19-lun0", SYMLINK+="disk/zpool/b4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:20-lun0", SYMLINK+="disk/zpool/b5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:21-lun0", SYMLINK+="disk/zpool/b6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:22-lun0", SYMLINK+="disk/zpool/b7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:07:00.0*0:*:23-lun0", SYMLINK+="disk/zpool/b8" - -# Partitions (*:pci*port:*:id-lun) -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:8-lun0", SYMLINK+="disk/zpool/a1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:9-lun0", SYMLINK+="disk/zpool/a2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:10-lun0", SYMLINK+="disk/zpool/a3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:11-lun0", SYMLINK+="disk/zpool/a4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:12-lun0", SYMLINK+="disk/zpool/a5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:13-lun0", SYMLINK+="disk/zpool/a6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:14-lun0", SYMLINK+="disk/zpool/a7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:15-lun0", SYMLINK+="disk/zpool/a8-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:16-lun0", SYMLINK+="disk/zpool/b1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:17-lun0", SYMLINK+="disk/zpool/b2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:18-lun0", SYMLINK+="disk/zpool/b3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:19-lun0", SYMLINK+="disk/zpool/b4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:20-lun0", SYMLINK+="disk/zpool/b5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:21-lun0", SYMLINK+="disk/zpool/b6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:22-lun0", SYMLINK+="disk/zpool/b7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:07:00.0*0:*:23-lun0", SYMLINK+="disk/zpool/b8-part%n" diff --git a/scripts/udev-rules/99-zpool.rules.x4550 b/scripts/udev-rules/99-zpool.rules.x4550 deleted file mode 100644 index b2b99513d3..0000000000 --- a/scripts/udev-rules/99-zpool.rules.x4550 +++ /dev/null @@ -1,115 +0,0 @@ -# -# /etc/udev/rules.d/99-zpool.rules -# - -ENV{DEVTYPE}=="disk", IMPORT{program}="path_id %p" - -# Full devices (*:pci*port:*:id*) -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:02:00.0*0:*:0*", SYMLINK+="disk/zpool/a1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:02:00.0*0:*:1*", SYMLINK+="disk/zpool/a2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:02:00.0*0:*:2*", SYMLINK+="disk/zpool/a3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:02:00.0*0:*:3*", SYMLINK+="disk/zpool/a4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:02:00.0*0:*:4*", SYMLINK+="disk/zpool/a5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:02:00.0*0:*:5*", SYMLINK+="disk/zpool/a6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:02:00.0*0:*:6*", SYMLINK+="disk/zpool/a7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:02:00.0*0:*:7*", SYMLINK+="disk/zpool/a8" - -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:0*", SYMLINK+="disk/zpool/b1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:1*", SYMLINK+="disk/zpool/b2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:2*", SYMLINK+="disk/zpool/b3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:3*", SYMLINK+="disk/zpool/b4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:4*", SYMLINK+="disk/zpool/b5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:5*", SYMLINK+="disk/zpool/b6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:6*", SYMLINK+="disk/zpool/b7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:03:00.0*0:*:7*", SYMLINK+="disk/zpool/b8" - -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:0*", SYMLINK+="disk/zpool/c1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:1*", SYMLINK+="disk/zpool/c2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:2*", SYMLINK+="disk/zpool/c3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:3*", SYMLINK+="disk/zpool/c4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:4*", SYMLINK+="disk/zpool/c5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:5*", SYMLINK+="disk/zpool/c6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:6*", SYMLINK+="disk/zpool/c7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:04:00.0*0:*:7*", SYMLINK+="disk/zpool/c8" - -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:41:00.0*0:*:0*", SYMLINK+="disk/zpool/d1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:41:00.0*0:*:1*", SYMLINK+="disk/zpool/d2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:41:00.0*0:*:2*", SYMLINK+="disk/zpool/d3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:41:00.0*0:*:3*", SYMLINK+="disk/zpool/d4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:41:00.0*0:*:4*", SYMLINK+="disk/zpool/d5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:41:00.0*0:*:5*", SYMLINK+="disk/zpool/d6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:41:00.0*0:*:6*", SYMLINK+="disk/zpool/d7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:41:00.0*0:*:7*", SYMLINK+="disk/zpool/d8" - -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:42:00.0*0:*:0*", SYMLINK+="disk/zpool/e1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:42:00.0*0:*:1*", SYMLINK+="disk/zpool/e2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:42:00.0*0:*:2*", SYMLINK+="disk/zpool/e3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:42:00.0*0:*:3*", SYMLINK+="disk/zpool/e4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:42:00.0*0:*:4*", SYMLINK+="disk/zpool/e5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:42:00.0*0:*:5*", SYMLINK+="disk/zpool/e6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:42:00.0*0:*:6*", SYMLINK+="disk/zpool/e7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:42:00.0*0:*:7*", SYMLINK+="disk/zpool/e8" - -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:43:00.0*0:*:0*", SYMLINK+="disk/zpool/f1" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:43:00.0*0:*:1*", SYMLINK+="disk/zpool/f2" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:43:00.0*0:*:2*", SYMLINK+="disk/zpool/f3" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:43:00.0*0:*:3*", SYMLINK+="disk/zpool/f4" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:43:00.0*0:*:4*", SYMLINK+="disk/zpool/f5" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:43:00.0*0:*:5*", SYMLINK+="disk/zpool/f6" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:43:00.0*0:*:6*", SYMLINK+="disk/zpool/f7" -ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="*:43:00.0*0:*:7*", SYMLINK+="disk/zpool/f8" - -# Partitions (*:pci*port:*:id*) -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:02:00.0*0:*:0*", SYMLINK+="disk/zpool/a1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:02:00.0*0:*:1*", SYMLINK+="disk/zpool/a2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:02:00.0*0:*:2*", SYMLINK+="disk/zpool/a3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:02:00.0*0:*:3*", SYMLINK+="disk/zpool/a4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:02:00.0*0:*:4*", SYMLINK+="disk/zpool/a5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:02:00.0*0:*:5*", SYMLINK+="disk/zpool/a6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:02:00.0*0:*:6*", SYMLINK+="disk/zpool/a7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:02:00.0*0:*:7*", SYMLINK+="disk/zpool/a8-part%n" - -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:0*", SYMLINK+="disk/zpool/b1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:1*", SYMLINK+="disk/zpool/b2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:2*", SYMLINK+="disk/zpool/b3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:3*", SYMLINK+="disk/zpool/b4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:4*", SYMLINK+="disk/zpool/b5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:5*", SYMLINK+="disk/zpool/b6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:6*", SYMLINK+="disk/zpool/b7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:03:00.0*0:*:7*", SYMLINK+="disk/zpool/b8-part%n" - -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:0*", SYMLINK+="disk/zpool/c1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:1*", SYMLINK+="disk/zpool/c2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:2*", SYMLINK+="disk/zpool/c3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:3*", SYMLINK+="disk/zpool/c4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:4*", SYMLINK+="disk/zpool/c5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:5*", SYMLINK+="disk/zpool/c6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:6*", SYMLINK+="disk/zpool/c7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:04:00.0*0:*:7*", SYMLINK+="disk/zpool/c8-part%n" - -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:41:00.0*0:*:0*", SYMLINK+="disk/zpool/d1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:41:00.0*0:*:1*", SYMLINK+="disk/zpool/d2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:41:00.0*0:*:2*", SYMLINK+="disk/zpool/d3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:41:00.0*0:*:3*", SYMLINK+="disk/zpool/d4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:41:00.0*0:*:4*", SYMLINK+="disk/zpool/d5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:41:00.0*0:*:5*", SYMLINK+="disk/zpool/d6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:41:00.0*0:*:6*", SYMLINK+="disk/zpool/d7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:41:00.0*0:*:7*", SYMLINK+="disk/zpool/d8-part%n" - -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:42:00.0*0:*:0*", SYMLINK+="disk/zpool/e1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:42:00.0*0:*:1*", SYMLINK+="disk/zpool/e2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:42:00.0*0:*:2*", SYMLINK+="disk/zpool/e3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:42:00.0*0:*:3*", SYMLINK+="disk/zpool/e4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:42:00.0*0:*:4*", SYMLINK+="disk/zpool/e5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:42:00.0*0:*:5*", SYMLINK+="disk/zpool/e6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:42:00.0*0:*:6*", SYMLINK+="disk/zpool/e7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:42:00.0*0:*:7*", SYMLINK+="disk/zpool/e8-part%n" - -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:43:00.0*0:*:0*", SYMLINK+="disk/zpool/f1-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:43:00.0*0:*:1*", SYMLINK+="disk/zpool/f2-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:43:00.0*0:*:2*", SYMLINK+="disk/zpool/f3-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:43:00.0*0:*:3*", SYMLINK+="disk/zpool/f4-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:43:00.0*0:*:4*", SYMLINK+="disk/zpool/f5-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:43:00.0*0:*:5*", SYMLINK+="disk/zpool/f6-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:43:00.0*0:*:6*", SYMLINK+="disk/zpool/f7-part%n" -ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="*:43:00.0*0:*:7*", SYMLINK+="disk/zpool/f8-part%n" diff --git a/scripts/zpool-config/dragon-raid0-1x70.sh b/scripts/zpool-config/dragon-raid0-1x70.sh index 8caffc4c4e..6690cb9f6e 100644 --- a/scripts/zpool-config/dragon-raid0-1x70.sh +++ b/scripts/zpool-config/dragon-raid0-1x70.sh @@ -7,7 +7,7 @@ RANKS=7 CHANNELS=10 zpool_create() { - udev_setup ${UDEVDIR}/99-zpool.rules.dragon + udev_setup ${ETCDIR}/zfs/zdev.conf.dragon.example udev_raid0_setup ${RANKS} ${CHANNELS} msg ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} ${RAID0S[*]} diff --git a/scripts/zpool-config/dragon-raid10-35x2.sh b/scripts/zpool-config/dragon-raid10-35x2.sh index f197136fe5..7a3d0c3801 100644 --- a/scripts/zpool-config/dragon-raid10-35x2.sh +++ b/scripts/zpool-config/dragon-raid10-35x2.sh @@ -7,7 +7,7 @@ RANKS=7 CHANNELS=10 zpool_create() { - udev_setup ${UDEVDIR}/99-zpool.rules.dragon + udev_setup ${ETCDIR}/zfs/zdev.conf.dragon.example udev_raid10_setup ${RANKS} ${CHANNELS} msg ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} ${RAID10S[*]} diff --git a/scripts/zpool-config/dragon-raidz-7x10.sh b/scripts/zpool-config/dragon-raidz-7x10.sh index e7d793d3c3..deefedb594 100644 --- a/scripts/zpool-config/dragon-raidz-7x10.sh +++ b/scripts/zpool-config/dragon-raidz-7x10.sh @@ -7,7 +7,7 @@ RANKS=7 CHANNELS=10 zpool_create() { - udev_setup ${UDEVDIR}/99-zpool.rules.dragon + udev_setup ${ETCDIR}/zfs/zdev.conf.dragon.example udev_raidz_setup ${RANKS} ${CHANNELS} msg ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} ${RAIDZS[*]} diff --git a/scripts/zpool-config/dragon-raidz2-7x10.sh b/scripts/zpool-config/dragon-raidz2-7x10.sh index a3a2ef58ba..d87fef272c 100644 --- a/scripts/zpool-config/dragon-raidz2-7x10.sh +++ b/scripts/zpool-config/dragon-raidz2-7x10.sh @@ -7,7 +7,7 @@ RANKS=7 CHANNELS=10 zpool_create() { - udev_setup ${UDEVDIR}/99-zpool.rules.dragon + udev_setup ${ETCDIR}/zfs/zdev.conf.dragon.example udev_raidz2_setup ${RANKS} ${CHANNELS} msg ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} ${RAIDZ2S[*]} diff --git a/scripts/zpool-config/promise-raid0-1x16.sh b/scripts/zpool-config/promise-raid0-1x16.sh index 0136fe3a22..1bb1136542 100644 --- a/scripts/zpool-config/promise-raid0-1x16.sh +++ b/scripts/zpool-config/promise-raid0-1x16.sh @@ -7,7 +7,7 @@ RANKS=8 CHANNELS=2 zpool_create() { - udev_setup ${UDEVDIR}/99-zpool.rules.promise + udev_setup ${ETCDIR}/zfs/zdev.conf.promise.example udev_raid0_setup ${RANKS} ${CHANNELS} msg ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} ${RAID0S[*]} diff --git a/scripts/zpool-config/promise-raid10-8x2.sh b/scripts/zpool-config/promise-raid10-8x2.sh index a16f0d0f5c..49639aef27 100644 --- a/scripts/zpool-config/promise-raid10-8x2.sh +++ b/scripts/zpool-config/promise-raid10-8x2.sh @@ -7,7 +7,7 @@ RANKS=8 CHANNELS=2 zpool_create() { - udev_setup ${UDEVDIR}/99-zpool.rules.promise + udev_setup ${ETCDIR}/zfs/zdev.conf.promise.example udev_raid10_setup ${RANKS} ${CHANNELS} msg ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} ${RAID10S[*]} diff --git a/scripts/zpool-config/promise-raidz-2x8.sh b/scripts/zpool-config/promise-raidz-2x8.sh index 0f6223f38e..f12f6813aa 100644 --- a/scripts/zpool-config/promise-raidz-2x8.sh +++ b/scripts/zpool-config/promise-raidz-2x8.sh @@ -7,7 +7,7 @@ RANKS=8 CHANNELS=2 zpool_create() { - udev_setup ${UDEVDIR}/99-zpool.rules.promise + udev_setup ${ETCDIR}/zfs/zdev.conf.promise.example udev_raidz_setup ${RANKS} ${CHANNELS} msg ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} ${RAIDZS[*]} diff --git a/scripts/zpool-config/promise-raidz2-2x8.sh b/scripts/zpool-config/promise-raidz2-2x8.sh index 5b642dd221..b5d0eb6fd6 100644 --- a/scripts/zpool-config/promise-raidz2-2x8.sh +++ b/scripts/zpool-config/promise-raidz2-2x8.sh @@ -7,7 +7,7 @@ RANKS=8 CHANNELS=2 zpool_create() { - udev_setup ${UDEVDIR}/99-zpool.rules.promise + udev_setup ${ETCDIR}/zfs/zdev.conf.promise.example udev_raidz2_setup ${RANKS} ${CHANNELS} msg ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} ${RAIDZ2S[*]} diff --git a/scripts/zpool-config/x4550-raid0-1x48.sh b/scripts/zpool-config/x4550-raid0-1x48.sh index 8082fea204..ed2dc2cafe 100644 --- a/scripts/zpool-config/x4550-raid0-1x48.sh +++ b/scripts/zpool-config/x4550-raid0-1x48.sh @@ -7,7 +7,7 @@ RANKS=8 CHANNELS=6 zpool_create() { - udev_setup ${UDEVDIR}/99-zpool.rules.x4550 + udev_setup ${ETCDIR}/zfs/zdev.conf.x4550.example udev_raid0_setup ${RANKS} ${CHANNELS} msg ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} ${RAID0S[*]} diff --git a/scripts/zpool-config/x4550-raid10-24x2.sh b/scripts/zpool-config/x4550-raid10-24x2.sh index fb323716d6..f5fedb5364 100644 --- a/scripts/zpool-config/x4550-raid10-24x2.sh +++ b/scripts/zpool-config/x4550-raid10-24x2.sh @@ -7,7 +7,7 @@ RANKS=8 CHANNELS=6 zpool_create() { - udev_setup ${UDEVDIR}/99-zpool.rules.x4550 + udev_setup ${ETCDIR}/zfs/zdev.conf.x4550.example udev_raid10_setup ${RANKS} ${CHANNELS} msg ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} ${RAID10S[*]} diff --git a/scripts/zpool-config/x4550-raidz-8x6.sh b/scripts/zpool-config/x4550-raidz-8x6.sh index d92974cff4..01c78ea6d4 100644 --- a/scripts/zpool-config/x4550-raidz-8x6.sh +++ b/scripts/zpool-config/x4550-raidz-8x6.sh @@ -7,7 +7,7 @@ RANKS=8 CHANNELS=6 zpool_create() { - udev_setup ${UDEVDIR}/99-zpool.rules.x4550 + udev_setup ${ETCDIR}/zfs/zdev.conf.x4550.example udev_raidz_setup ${RANKS} ${CHANNELS} msg ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} ${RAIDZS[*]} diff --git a/scripts/zpool-config/x4550-raidz2-8x6.sh b/scripts/zpool-config/x4550-raidz2-8x6.sh index 4b75ba222b..0ea80dfbb2 100644 --- a/scripts/zpool-config/x4550-raidz2-8x6.sh +++ b/scripts/zpool-config/x4550-raidz2-8x6.sh @@ -7,7 +7,7 @@ RANKS=8 CHANNELS=6 zpool_create() { - udev_setup ${UDEVDIR}/99-zpool.rules.x4550 + udev_setup ${ETCDIR}/zfs/zdev.conf.x4550.example udev_raidz2_setup ${RANKS} ${CHANNELS} msg ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} ${RAIDZ2S[*]} diff --git a/zfs.spec.in b/zfs.spec.in index 1bbcb7f76c..bd8a20bc7a 100644 --- a/zfs.spec.in +++ b/zfs.spec.in @@ -62,8 +62,10 @@ rm -rf $RPM_BUILD_ROOT %doc AUTHORS ChangeLog COPYING DISCLAIMER GIT %doc OPENSOLARIS.LICENSE README TODO ZFS.RELEASE %{_sbindir}/* +%{_bindir}/* %{_libdir}/* %{_mandir}/man8/* +%{_sysconfdir}/* %files devel %defattr(-,root,root)