23 lines
585 B
Plaintext
23 lines
585 B
Plaintext
![]() |
#!/bin/sh
|
||
|
|
||
|
[ -x /usr/sbin/nvme ] || exit
|
||
|
|
||
|
case $ACTION in
|
||
|
add|"")
|
||
|
BASE=$(echo $MDEV | sed -re 's/^(nvme[0-9]+n[0-9]+).*/\1/')
|
||
|
PART=$(echo $MDEV | sed -re 's/nvme[0-9]+n[0-9]+p?//g')
|
||
|
until [ -n "$EBS" ]; do
|
||
|
EBS=$(/usr/sbin/nvme id-ctrl "/dev/$BASE" -b 2>/dev/null | dd bs=32 skip=96 count=1 2>/dev/null | tr -d ' ')
|
||
|
done
|
||
|
EBS=${EBS#/dev/}$PART
|
||
|
ln -sf "$MDEV" "${EBS/xvd/sd}"
|
||
|
ln -sf "$MDEV" "${EBS/sd/xvd}"
|
||
|
;;
|
||
|
remove)
|
||
|
for TARGET in sd* xvd*
|
||
|
do
|
||
|
[ "$(readlink $TARGET 2>/dev/null)" = "$MDEV" ] && rm -f "$TARGET"
|
||
|
done
|
||
|
;;
|
||
|
esac
|