#!/bin/sh
# $Id: scsi-detach-device,v 1.1 2015/01/13 01:03:45 friedman Exp $

progname=${0##*/}

get_scsi_target()
{
    for d in /sys/class/scsi_device/*/device/block/$1 ; do
        if [ -d $d ]; then
            target_path=${d%/block/$1}

            target=${d%/device/*}
            target=${target##*/}

            return
        fi
    done

    echo "$progname: $1: can't find scsi bus address" 1>&2
    exit 1
}


main()
{
    case $# in
        0 ) echo "Usage: $progname /dev/<device>" 1>&2
            exit 1 ;;
    esac

    dev=${1#/dev/}
    get_scsi_target $dev

    echo Detaching $target /dev/$dev
    echo 1 > $target_path/delete
}

main "$@"

# eof
