今回は、ddで作成されたファイルをターゲットとして公開し、Windows Server 2008のイニシエーターでマウントしてフォーマットするところまでを紹介する。環境の構築手順はとても簡単だ。
- NetBSDマシンでiSCSIターゲットを構成する
- NetBSDマシンでiSCSIターゲットを起動する
- クライアントマシン(例としてWindows Server 2008 SP1)でターゲットをマウントする。
- クライアントマシンでターゲットをフォーマット
iscsi-targetの設定は設定ファイルベースで行なわれる。設定ファイルのデフォルトの場所は、/etc/iscsiとなっており、サンプルとしてtargetsとauthsの2つのファイルが保存されている。targetsはiSCSIターゲットとして公開するファイル(またはデバイス)を記載し、authsはターゲットにアクセスする際のユーザー名とパスワードを記載する。
まずはiSCSIターゲットとして公開したいディスクイメージファイルを作成する。ここではファイル名を/iscsi-targets/testとし、ファイルサイズを500Mbyteとした。
$ dd if=/dev/zero of=/iscsi-targets/test bs=1024k count=500作成が終了したらls -l でファイルの大きさを確認しておく。ファイルの大きさをtargetの設定ファイルに記述する必要があるためだ。
ls -l /iscsi-targets/test次に、/etc/iscsi/targetsファイルを編集する。targetsファイルには以下の2行を追加する。
-rw-r--r-- 1 root wheel 524288512 May 7 09:54 /iscsi-targets/test
extent0 /iscsi-targets/test 0 524288512extent0の行には公開するファイルとそのファイルの開始位置と終了位置を記載する。オフセットを適切に指定する事によって、1つのファイル(やデバイス)を複数のextentとして構成する事ができる。今回は1つのファイルを1つのextentとしている。このため、offset は0となり、sizeは524288521となる。target0の行には公開するターゲットの名前とモード、ターゲットに対応するextentとtargetを公開するサブネットを記載する。
target0 rw extent0 192.168.55.0/24
ここで注意するのは、extent0の行は"extent + numner"で表記されなければならず、hoge0などの勝手な名前は拒否される。同様にtargetの行も"target + number"の形式で表記する必要がある。
次にiSCSIターゲットを起動する。iSCSIターゲットの起動スクリプトは/etc/rc.d/iscsi-targetに保存されている。システム起動時に自動的に起動したい場合は、以下のようにrc.confに1行を追加しておく。
echo "iscsi-target=YES" >> /etc/rc.conf次に、iSCSIターゲットを起動する。
bash-4.0# /etc/rc.d/iscsi_target start
iSCSIターゲットが正常に起動すると、以下のようにメッセージが表示される。
iscsi_target not running? (check /var/run/iscsi-target.pid).ここで、注目するのはTARGET:の行で、これがこのターゲットを識別するための物となる。実際にターゲットをマウントする際はLUNと連結し、「iqn.1994-04.org.netbsd.iscsi-target:target0」としてマウントする事になる。
Starting iscsi_target.
Reading configuration from `/etc/iscsi/targets'
target0:rw:192.168.55.0/24
extent0:/iscsi-targets/test:0:524288512
DISK: 1 logical unit (1024000 blocks, 512 bytes/block), type iscsi fs
DISK: LUN 0: 500 MB disk storage for "target0"
TARGET: TargetName is iqn.1994-04.org.netbsd.iscsi-target
長くなったので今日はここまで。実際にWindows Server 2008を用いてマウントする方法は次回に記載する事にしよう。
0 件のコメント:
コメントを投稿