]> git.proxmox.com Git - mirror_zfs.git/blame - cmd/zpool/zpool.d/ses
zpool iostat/status -c improvements
[mirror_zfs.git] / cmd / zpool / zpool.d / ses
CommitLineData
d6418de0
TH
1#!/bin/sh
2#
3# Print SCSI Enclosure Services (SES) info. The output is dependent on the name
4# of the script/symlink used to call it.
5#
6helpstr="
7enc: Show disk enclosure w:x:y:z value.
8slot: Show disk slot number as reported by the enclosure.
099700d9
GDN
9encdev: Show /dev/sg* device associated with the enclosure disk slot.
10fault_led: Show value of the disk enclosure slot fault LED.
11locate_led: Show value of the disk enclosure slot locate LED.
12ses: Show disk's enc, enc device, slot, and fault/locate LED values."
d6418de0
TH
13
14script=$(basename "$0")
15if [ "$1" = "-h" ] ; then
16 echo "$helpstr" | grep "$script:" | tr -s '\t' | cut -f 2-
17 exit
18fi
19
20if [ "$script" = "ses" ] ; then
21 scripts='enc encdev slot fault_led locate_led'
22else
23 scripts="$script"
24fi
25
26for i in $scripts ; do
27 if [ -z "$VDEV_ENC_SYSFS_PATH" ] ; then
28 echo "$i="
29 continue
30 fi
31
32 val=""
33 case $i in
34 enc)
35 val=$(ls "$VDEV_ENC_SYSFS_PATH/../../" 2>/dev/null)
36 ;;
37 slot)
38 val=$(cat "$VDEV_ENC_SYSFS_PATH/slot" 2>/dev/null)
39 ;;
40 encdev)
41 val=$(ls "$VDEV_ENC_SYSFS_PATH/../device/scsi_generic" 2>/dev/null)
42 ;;
43 fault_led)
44 val=$(cat "$VDEV_ENC_SYSFS_PATH/fault" 2>/dev/null)
45 ;;
46 locate_led)
47 val=$(cat "$VDEV_ENC_SYSFS_PATH/locate" 2>/dev/null)
48 ;;
49 esac
50 echo "$i=$val"
51done
52