mountVolume 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #!/bin/bash
  2. IQN=$1
  3. HOST=$2
  4. if [[ -z "${IQN}" ]]; then
  5. echo "usage: $0 TargetIQN [Host]"
  6. echo ""
  7. exit
  8. fi
  9. iscsiadm -m discovery -t sendtargets -o update -p ${HOST} &> /dev/null
  10. if [[ ! -z "${HOST}" ]]; then
  11. iscsiadm -m node -T ${IQN} -p ${HOST} -l
  12. else
  13. iscsiadm -m node -T ${IQN} -l
  14. fi
  15. sleep 0.5
  16. SESSIONID=$(iscsiadm -m session | grep "${IQN}" | head -n 1 | sed -e 's/.*\[\(.*\)\].*/\1/g')
  17. DEVICE=$(iscsiadm -m session -r ${SESSIONID} -P 3 | grep "Attached scsi disk" | sed -e 's/.*Attached scsi disk \([^\t]*\).*/\/dev\/\1/g')
  18. BLOCKDEVICE=${DEVICE}
  19. MULTIPATHDEVICE=$(multipath -l ${DEVICE} | grep 'mpath' | sed -e 's/^\([a-z]*\) .*/\1/g')
  20. if [[ ! -z "${MULTIPATHDEVICE}" ]]; then
  21. BLOCKDEVICE="/dev/mapper/${MULTIPATHDEVICE}"
  22. fi
  23. mkdir -p /mnt/iSCSI_${IQN}
  24. FILESYSTEM=$(blkid ${BLOCKDEVICE})
  25. if [ -z "${FILESYSTEM}" ]; then
  26. echo "No Filesystem found, initialize using following command:"
  27. echo "mkfs.ext4 ${BLOCKDEVICE}"
  28. echo ""
  29. echo "And mount afterwards using:"
  30. echo "mount ${BLOCKDEVICE} /mnt/iSCSI_${IQN}"
  31. else
  32. mount -o discard ${BLOCKDEVICE} /mnt/iSCSI_${IQN}
  33. fi