1eda14cbcSMatt Macy#!/bin/sh 2eda14cbcSMatt Macy# 3eda14cbcSMatt Macy# Show device mapper dependent / underlying devices. This is useful for 4eda14cbcSMatt Macy# looking up the /dev/sd* devices associated with a dm or multipath device. 5eda14cbcSMatt Macy# 6eda14cbcSMatt Macy 7eda14cbcSMatt Macyif [ "$1" = "-h" ] ; then 8eda14cbcSMatt Macy echo "Show device mapper dependent (underlying) devices." 9eda14cbcSMatt Macy exit 10eda14cbcSMatt Macyfi 11eda14cbcSMatt Macy 12*e92ffd9bSMartin Matuska# shellcheck disable=SC2154 13eda14cbcSMatt Macydev="$VDEV_PATH" 14eda14cbcSMatt Macy 15eda14cbcSMatt Macy# If the VDEV path is a symlink, resolve it to a real device 16eda14cbcSMatt Macyif [ -L "$dev" ] ; then 17eda14cbcSMatt Macy dev=$(readlink "$dev") 18eda14cbcSMatt Macyfi 19eda14cbcSMatt Macy 20dae17134SMartin Matuskadev="${dev##*/}" 21eda14cbcSMatt Macyval="" 22eda14cbcSMatt Macyif [ -d "/sys/class/block/$dev/slaves" ] ; then 23dae17134SMartin Matuska # ls -C: output in columns, no newlines, two spaces (change to one) 24dae17134SMartin Matuska # shellcheck disable=SC2012 25dae17134SMartin Matuska val=$(ls -C "/sys/class/block/$dev/slaves" | tr -s '[:space:]' ' ') 26eda14cbcSMatt Macyfi 27eda14cbcSMatt Macy 28eda14cbcSMatt Macyecho "dm-deps=$val" 29