Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

25.6. システムの起動時に FCoE インターフェースを自動マウントする設定

注記
本セクションの手順は、Red Hat Enterprise Linux 6.1 では、/usr/share/doc/fcoe-utils-version/README にあります。マイナーリリースの全変更については、該当するドキュメントを参照してください。
新しく検出されたディスクは、udev ルール、autofs、およびその他の同様の方法でマウントできます。ただし、特定のサービスは、システムの起動時に FCoE ディスクをマウントしなければならない場合があります。このような場合は、fcoe サービスが実行し、FCoE ディスクを必要とするサービスの開始前に、FCoE ディスクをマウントする必要があります。
FCoE ディスクをシステムの起動時に自動マウントするように設定するには、fcoe サービスの起動スクリプトに適切な FCoE マウントコードを追加します。fcoe 起動スクリプトは、/lib/systemd/system/fcoe.service です。
FCoE マウントコードは、シンプルなフォーマットの FCoE ディスク、LVM、またはマルチパス化されたデバイスノードを使用しているか、システム設定ごとに異なります。

例25.2 FCoE マウントコード

以下は、/etc/fstab 内のワイルドカードで指定したファイルシステムをマウントする FCoE マウントコードのサンプルです。
mount_fcoe_disks_from_fstab()
	{
	    local timeout=20
	    local done=1
	    local fcoe_disks=($(egrep 'by-path\/fc-.*_netdev' /etc/fstab | cut -d ' ' -f1))

	    test -z $fcoe_disks && return 0

	    echo -n "Waiting for fcoe disks . "
	    while [ $timeout -gt 0 ]; do
		for disk in ${fcoe_disks[*]}; do
			if ! test -b $disk; then
				done=0
				break
			fi
		done

		test $done -eq 1 && break;
		sleep 1
		echo -n ". "
		done=1
		let timeout--
	    done

	    if test $timeout -eq 0; then
		echo "timeout!"
	    else
		echo "done!"
	    fi

	    # mount any newly discovered disk
	    mount -a 2>/dev/null
	}
mount_fcoe_disks_from_fstab 関数は、fcoe サービススクリプトが fcoe mon デーモンを起動した後に呼び出す必要がありますこれにより、/etc/fstab で以下のパスで指定された FCoE ディスクがマウントされます。
/dev/disk/by-path/fc-0xXX:0xXX /mnt/fcoe-disk1 ext3  defaults,_netdev    0 0
/dev/disk/by-path/fc-0xYY:0xYY /mnt/fcoe-disk2 ext3  defaults,_netdev    0 0
fc- および _netdev サブ文字列のエントリーは、mount_fcoe_disks_from_fstab 関数が FCoE ディスクマウントエントリーを識別できるようにします。/etc/fstab エントリーの詳細は、man 5 fstab を参照してください。
注記
fcoe サービスは、FCoE ディスク検出のタイムアウトを実装しません。したがって、FCoE マウントコードは独自のタイムアウト期間を実装する必要があります。

このページには機械翻訳が使用されている場合があります (詳細はこちら)。