OpenSUSE Leap 15: iSCSIイニシエータのopen-iscsiをインストールする

iSCSIイニシエータのopen-iscsiをインストールする手順を記載します。

1 open-iscsiのインストール

open-iscsiパッケージをインストールします。

> sudo zypper -n in open-iscsi

2 iscsiadmでiSCSIターゲットに接続

iscsiadmコマンドでiscsiターゲットに接続します。

> ISCSI_TARGET_PORTAL=iscsi-target.hiroom2.com
> ISCSI_TARGET_NAME=iqn.2018-06.com.hiroom2:disk
> sudo iscsiadm -m discovery -t st -p "${ISCSI_TARGET_PORTAL}"
192.168.11.95:3260,1 iqn.2018-06.com.hiroom2:disk
> sudo iscsiadm -m node \
       --targetname "${ISCSI_TARGET_NAME}" -p "${ISCSI_TARGET_PORTAL}" -l
Logging in to [iface: default, target: iqn.2018-06.com.hiroom2:disk,
portal: 192.168.11.95,3260] (multiple)
Login to [iface: default, target: iqn.2018-06.com.hiroom2:disk,
portal: 192.168.11.95,3260] successful.

3 起動時にマウント

/etc/iscsi/iscsid.confでnode.startupをautomaticに変更します。

> sudo sed -e 's/^node.startup = manual/node.startup = automatic/g' \
       -i /etc/iscsi/iscsid.conf

iSCSIターゲットに接続します。 node.startupをautomaticに変更前に接続している場合は、node.startupを automaticに変更後に再度接続してください。

> sudo iscsiadm -m discovery -t st -p "${ISCSI_TARGET_PORTAL}"
> sudo iscsiadm -m node \
       --targetname "${ISCSI_TARGET_NAME}" -p "${ISCSI_TARGET_PORTAL}" -l

fdiskとmkfsでファイルシステムを作成します。

> ISCSI_TARGET_DEV=/dev/sda
> cat <<EOF | sudo fdisk ${ISCSI_TARGET_DEV}
n
p
1


w
EOF
> sudo mkfs.ext4 ${ISCSI_TARGET_DEV}1

他のファイルシステムと同様に/etc/fstabに追記します。ネットワーク初期化前にマウントするのを防ぐために、_netdevをオプションを指定する必要があります。 x-systemd.automountにマウントさせるために、x-systemd.automountをオプションに指定する必要があります。

> uuid=$(sudo blkid | grep "^${ISCSI_TARGET_DEV}1:" | \
          sed -e 's/.* UUID="\([^"]*\)".*/\1/g')
> cat <<EOF | sudo tee -a /etc/fstab
UUID="${uuid}" /mnt ext4 _netdev,x-systemd.automount 0 0
EOF