一.tgtadm命令
tgtadm常用於管理三類對象:
target:創建new,刪除,查看
lun:創建,查看,刪除
account:創建用戶,綁定,解綁定,刪除,查看
語法:tgtadm --lld [driver] --op [operation] --mode [mode] [OPTION]...
(1)、添加一個新的 target 且其ID為 [id], 名字為 [name].
--lld [driver] --op new --mode target --tid=[id] --targetname [name]
如:創建一個target
tgtadm --lld iscsi --op new --mode target --tid 1 -T iqn.2013-05.com.magedu:tsan.disk1
(2)、顯示所有或某個特定的target:
--lld [driver] --op show --mode target [--tid=[id]]
如:顯示所有
tgtadm --lld iscsi --op show --mode target
(3)、向某ID為[id]的設備上添加一個新的LUN,其號碼為[lun],且此設備提供給initiator使用。[path]是某“塊設備”的路徑,此塊設備也可以是raid或lvm設備。lun0已經被系統預留。
--lld [driver] --op new --mode=logicalunit --tid=[id] --lun=[lun] --backing-store [path]
如:顯示剛創建的target
tgtadm --lld iscsi --op show --mode target --tid 1
(4)、刪除ID為[id]的target:
--lld [driver] --op delete --mode target --tid=[id]
如:創建LUN,號碼為1
tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 1 -b /dev/sda1
(5)、刪除target [id]中的LUN [lun]:
-lld [driver] --op delete --mode=logicalunit --tid=[id] --lun=[lun]
如:開放給192.168.0.0/24網絡中的主機訪問(其中的-I相當於--initiator-address):
tgtadm --lld iscsi --op bind --mode target --tid 1 -I 192.168.85.0/24
(6)、定義某target的基於主機的訪問控制列表,其中[address]表示允許訪問此target的initiator客戶端的列表
--lld [driver] --op bind --mode=target --tid=[id] --initiator-address=[address]
如:Create a new account
tgtadm --lld iscsi --op new --mode account --user administrator --password 123456
tgtadm --lld iscsi --op show --mode account
Assign this account to a target:
tgtadm --lld iscsi --op bind --mode account --tid 1 --user administrator
tgtadm --lld iscsi --op show --mode target
(7)、解除target [id]的訪問控制列表中[address]的訪問控制權限:
--lld [driver] --op unbind --mode=target --tid=[id] --initiator-address=[address]
如:Set up an outgoing account. First, you need to create a new account like the previous example
tgtadm --lld iscsi --op new --mode account --user abc --password 123456
tgtadm --lld iscsi --op show --mode account
tgtadm --lld iscsi --op bind --mode account --tid 1 --user abc --outgoing
tgtadm --lld iscsi --op show --mode target
tgtadm命令常用選項:
-L --lld <driver>:這里驅動程序driver是iSCSI
-m --mode <mode>:指定操作的對象,mode為target,logicalunit等
-o --op [operation]:對指定的對象所要做的操作,operation有delete,new,bind,show,unbind等
OPTION常用選項:
-t --tid <id>:用來指定Target的ID
-T --targetname <targetname>:指定Target名稱
Target的名稱格式:
iqn.xxxx-yy.reversedoamin.STRING[:substring]
其中:
iqn為iqn前綴;
xxxx為年份;
yy為月份;
reversedomain為所在域名的反寫;
STRING為字符串;
substring為子字符串;
如 iqn.2015-11.com.a.web:server1
-l --lun <lun>:指定lun的號碼
-b --backing-store <path>:關聯到指定lun上的后端存儲設備,此例為分區
-I --initiator-address <address>:指定可以訪問Target的IP地址
具體用法請man tgtadm
二.iscsiadm命令
iscsiadm是個模式化的工具,其模式可通過-m或--mode選項指定,常見的模式有discoverydb、node、fw、session、host、iface幾個,如果沒有額外指定其它選項,則discoverydb和node會顯示其相關的所有記錄;session用於顯示所有的活動會話和連接,fw顯示所有的啟動固件值,host顯示所有的iSCSI主機,iface顯示/var/lib/iscsi/ifaces目錄中的所有ifaces設定。
語法:
iscsiadm -m discovery [ -d debug_level ] [ -P printlevel ] [ -I iface -t type -p ip:port [ -l ] ]
iscsiadm -m node [ -d debug_level ] [ -P printlevel ] [ -L all,manual,automatic ] [ -U all,manual,automatic ] [ [ -T tar-getname -p ip:port -I iface ] [ -l | -u | -R | -s] ] [ [ -o operation ]
-d --debug=debug_level #顯示debug信息,級別為0-8;
-l --login #登入節點(服務器)
-t --type=type #這里可以使用的類型為sendtargets(可簡寫為st)、slp、fw和 isns,此選項僅用於discovery模式,且目前僅支持st、fw和isns;其中st表示允許每個iSCSItarget發送一個可用target列表給initiator;
-p --portal=ip[:port] #指定target服務的IP和端口;
-m --mode op #可用的mode有discovery, node, fw, host iface 和 session
-T --targetname=targetname #用於指定target的名字
-u --logout #登出節點(服務器)
-o --op=OPEARTION:指定針對discoverydb數據庫的操作,其僅能為new、delete、update、show和nonpersistent其中之一;
-I --interface=[iface] #指定執行操作的iSCSI接口,這些接口定義在/var/lib/iscsi/ifaces中
具體用法請man iscsiadm