follow me

intel-iscsiでのISCSI Target

以前iSCSI Enterprise Targetを使って、Linux機に接続されたDDS3 Tapeドライブを外部へ公開しようとしていた訳だが、うまくいかず、今回intel-iscsiで行ってみました。

intel-iscsiを使った結果は、またもやうまく動作せず。
udisk -d /dev/sg0

LUN 0: Vendor HP       Model C1537A           Rev L005
READ_CAPACITY failed
結果は「READ_CAPACITY」ではじかれました。

ソースを見てみると、disk.cの273行目
if (sg_cmd_ioctl(fid, read_capacity, 10, data, 8, SG_DXFER_FROM_DEV, 10000)!=0) {
    fprintf(stderr, "READ_CAPACITY failedn");
    return -1;
}
で、エラーが出ている。
で、関数内に飛んで
ioctl(fid, SG_IO, &sg_hdr)
で、取得してくる「sg_hdr」内の「sg_hdr.status」と「sg_hdr.resid」が0以外なのが原因。
で、実際に戻ってきている値は
status: 2
masked_status: 1
msg_status: 0
sb_len_wr: 22
host_status: 0
driver_status: 8
resid: 8
duration: 8
info: 1
で、residの値がどうやら、sg_cmd_ioctl()の5番目の引数の値がそのまま出ている様だが。
また、以下の3番目の引数が「10」となっているが、2番目の引数の長さは「9」これっていいのか?
sg_cmd_ioctl(fid, read_capacity, 10, data, 8, SG_DXFER_FROM_DEV, 10000)
って所でよくわからんので、終了。
intel-iscsiでのISCSI Target | 2 件のコメント | アカウント登録
サイト管理者はコメントに関する責任を負いません。
intel-iscsiでのISCSI Target
投稿者: ゲストユーザ on 2006年11月18日(土) 09:47 JST
intel-iscsiでのISCSI Target
投稿者: Tochiro on 2006年11月21日(火) 22:16 JST
情報有難う御座います。
次はunh-iscsi試してみたいと思います。

ついでに、こんなの見つけました。
Generic SCSI Target Middle Level for Linux
なんとなくイロイロできそうな予感。