1. #!/bin/bash 
  2. #Author:jacky.lee 
  3. #date:2010/4/12 
  4. #Test platform on redhat linux 
  5. main () { 
  6.     clear 
  7.     echo "  -------------------------------------------" 
  8.     echo "  1)login iscsi target" 
  9.     echo "  2)logout iscsi target" 
  10.     echo "  3)Obtain current iscsi session information" 
  11.     echo "  q)Exit" 
  12.     echo "  -------------------------------------------" 
  13. while true 
  14. do 
  15. echo -n "Please choice [1-q]:" 
  16. read choice 
  17. case $choice in 
  18.     1)clear 
  19.       login 
  20.       main 
  21.       ;; 
  22.     2)clear 
  23.       logout 
  24.       exit 
  25.       ;; 
  26.     3) 
  27.       iscsiadm -m session -P 3 
  28.       main 
  29.       ;; 
  30.     q)clear 
  31.       exit 
  32.       ;; 
  33.     *)clear 
  34.       exit 
  35.       ;; 
  36. esac 
  37. done 
  38. #define login function 
  39. login () { 
  40.     echo "  ---------------------------------------------------------------" 
  41.     echo "  First,discovery the iscsi target,Please input the ip:" 
  42.     echo "  ---------------------------------------------------------------" 
  43.     read ip 
  44.     iscsiadm -m discovery -t sendtargets -p $ip:3260 
  45.     echo "  ---------------------------------------------------------------" 
  46.     echo "  Second,login the iscsi target,Please input the target_iqn_name:" 
  47.     echo "  ---------------------------------------------------------------" 
  48.     read target_iqn_name 
  49.     iscsiadm -m node -T $target_iqn_name -p $ip:3260 -l 
  50.     echo "  ---------------------------------------------------------------" 
  51.     echo "  Please use the 'fdisk -l' comand to display the new disk" 
  52.     } 
  53. #define logout function 
  54. logout () { 
  55.     echo "  ----------------------------------------------------------------" 
  56.     echo "  Please input the ip:" 
  57.     echo "  ----------------------------------------------------------------" 
  58.     read ip 
  59.     echo "  ----------------------------------------------------------------" 
  60.     echo "  Second input the target_iqn_name:" 
  61.     echo "  ----------------------------------------------------------------" 
  62.     read target_iqn_name 
  63.     iscsiadm -m node -T $target_iqn_name -p $ip:3260 -u 
  64.     echo "  ----------------------------------------------------------------" 
  65.     echo "  You were already logout!!!" 
  66.     echo "  -----------------------------------------------------------------" 
  67.     echo "  Do you delete the iscsi target record?Please input 'yes' or 'no':" 
  68.     echo "  -----------------------------------------------------------------" 
  69.     read input 
  70.     case $input in 
  71.             yes) clear 
  72.             iscsiadm -m node -T $target_iqn_name -p $ip:3260 -o delete 
  73.         chkconfig iscsi off 
  74.             ;; 
  75.             no) clear 
  76.             exit 
  77.             ;; 
  78.     esac 
  79.     } 
  80. #Call the main function 
  81. main