Dynamic Link Manager Software ユーザーズガイド(Linux®用)
SCSIデバイスを使ったシングルパス構成のブートディスクの環境に,HDLMを新規インストールして環境を設定する方法について説明します。
設定を誤ると,OSが起動できなくなることがあるので,注意してください。HDLMデバイスからのOSの起動に失敗した場合の対処については,「3.7.7 HDLMデバイスからのOSの起動に失敗した場合の対処」を参照してください。
この手順で使用するブートローダの設定ファイル名は,ブートローダまたはOSによって異なります。ブートローダの設定ファイル名を次の表に示します。
ブートローダ 設定ファイル名 GRUB Red Hat Enterprise Linuxの場合 /etc/grub.conf SUSE LINUX Enterprise Serverの場合 /boot/grub/menu.lst LILO /etc/lilo.conf ELILO /etc/elilo.conf
- Linuxに,root権限を持つユーザでログインします。
- SUSE LINUX Enterprise Server 10にSP3以降を適用している場合は,ブートローダの設定ファイルに「multipath=off」を設定します。
ブートローダの設定ファイルのカーネルパラメタに「multipath=off」が設定されていない場合は,「multipath=off」を設定してください。「multipath=off」の設定例を次に示します。
- ブートローダとしてELILOを使用している場合
: : image = vmlinuz-2.6.16.60-0.54.5-default label = 51 append = "splash=silent multipath=off" description = Linux initrd = initrd-2.6.16.60-0.54.5-default root = /dev/disk/by-id/scsi-35001862001472c70-part12下線部に,「multipath=off」が設定されています。- Xen対応のカーネルで,ブートローダとしてGRUBを使用している場合
Xen対応のカーネルは,「表3-61 HDLMがサポートするXenハイパーバイザの動作環境」を参照してください。: : title XEN root (hd0,0) kernel /xen-pae.gz module /vmlinuz-2.6.16.60-0.54.5-xenpae \ root=/dev/disk/by-id/scsi-SFUJITSU_MAS3735NC_A050P360007N-part6 vga=0x317 \ resume=/dev/disk/by-id/scsi-SFUJITSU_MAS3735NC_A050P3600077-part2 \ splash=silent showopts multipath=off module /initrd-2.6.16.60-0.54.5-xenpae下線部に,「multipath=off」が設定されています。- Xen非対応のカーネルで,ブートローダとしてGRUBを使用している場合
HDLMでサポートしているカーネルは,「3.1.1 HDLMがサポートするホストとOS」を参照してください。: : title SUSE LINUX Enterprise Server 10 SP3 root (hd0,0) kernel /vmlinuz-2.6.16.60-0.54.5-smp root=/dev/VG/root vga=0x31a \ resume=/dev/VG/swap splash=silent showopts multipath=off initrd /initrd-2.6.16.60-0.54.5-smp下線部に,「multipath=off」が設定されています。- /etc/fstabファイルの定義を確認します。
/etc/fstabファイルにLABELが使用されているかどうかを確認してください。「LABEL=xxxxx」と記載されている場合は,LABELが使用されています。
Red Hat Enterprise Linux 6を使用している場合は,次の下線部のようにUUID=から始まるブロックデバイス名(udev名)が指定されていることも確認してください。UUID=55574d05-07dc-4c94-a585-5599c284d79b / ext4 defaults 1 1 UUID=33ef8ca1-595a-4fbf-8567-76f70760d743 /boot ext4 defaults 1 2 : :SUSE LINUX Enterprise Serverを使用している場合は,次の下線部のように/dev/diskディレクトリから始まるデバイス名(udev名)が指定されていることも確認してください。/dev/disk/by-id/scsi-1HITACHI_D60H03750019-part2 swap swap defaults 0 0 /dev/disk/by-id/scsi-1HITACHI_D60H03750019-part3 / ext3 acl,user_xattr 1 1 : :- ブートローダの設定ファイルの定義を確認します。
ブートローダの設定ファイルの定義にLABELが使用されているかどうかを確認してください。LABELの使用例を,次に示します。Red Hat Enterprise Linux 6を使用している場合は,次の下線部のようにUUID=から始まるブロックデバイス名(udev名)が指定されていることも確認してください。
- Xen非対応のカーネルで,ブートローダとしてGRUBを使用している場合
HDLMでサポートしているカーネルは,「3.1.1 HDLMがサポートするホストとOS」を参照してください。: : title Red Hat Enterprise Linux (2.6.18-194.el5) root (hd0,0) kernel /vmlinuz-2.6.18-194.el5 ro root=LABEL=/ initrd /initrd-2.6.18-194.el5下線部に,LABELが設定されています。- ブートローダとしてLILOまたはELILOを使用している場合
: : image=/boot/vmlinuz-2.6.18-194.el5 label=linux initrd=/boot/initrd-2.6.18-194.el5 read-only append="root=LABEL=/"下線部に,LABELが設定されています。: : title Red Hat Enterprise Linux (2.6.32-71.el6.i686) root (hd0,0) kernel /vmlinuz-2.6.32-71.el6.i686 ro root=UUID=55574d05-07dc-4c94-a585-5599c284d79b rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=ja_JP.UTF-8 KEYBOARDTYPE=pc KEYTABLE=jp106 crashkernel=auto rhgb quiet initrd /initramfs-2.6.32-71.el6.i686.imgSUSE LINUX Enterprise Serverを使用している場合は,次の下線部のように/dev/diskディレクトリから始まるデバイス名(udev名)が指定されていることも確認してください。Xen対応のカーネルで,ブートローダとしてGRUBを使用している場合の例を次に示します。Xen対応のカーネルは,「表3-61 HDLMがサポートするXenハイパーバイザの動作環境」を参照してください。: : title XEN root (hd0,1) kernel /boot/xen.gz module /boot/vmlinuz-2.6.16.60-0.21-xen root=/dev/disk/by-id/scsi-1HITACHI_D60H03750027-part2 vga=0x31a resume=/dev/sda1 splash=silent showopts module /boot/initrd-2.6.16.60-0.21-xen手順3および手順4でLABELまたはデバイス名(udev名)が使用されていなかった場合は,手順17に進んでHDLMを新規インストールしてください。
また,デバイス名(udev名)が指定されていた場合,以降の手順では「LABEL」を「デバイス名(udev名)」に読み替えて実行してください。- mountコマンドを実行して,マウントされているファイルシステムを確認します。
手順3および手順4で確認したLABELと,SCSIデバイスの対応関係を確認します。この情報は,LABELの設定を解除するときに必要になります。# mount /dev/sda2 on / type ext2 (rw) : : /dev/sda1 on /boot type ext2 (rw) /dev/sda4 on /tmp type ext2 (rw) /dev/sda5 on /var type ext2 (rw) /dev/sda6 on /usr type ext2 (rw) none on /dev/shm type tmpfs (rw)下線部を確認してください。- Red Hat Enterprise Linux,またはSUSE LINUX Enterprise Serverを使用している場合は,/proc/swapsファイルを参照してSCSIデバイス名を確認します。
SCSIデバイス名は,Filename列の部分に表示されています。- 手順3および手順4で,ブロックデバイス名またはudev名が指定されていた場合は,次のコマンドを実行して,SCSIデバイスを確認します。
- Red Hat Enterprise Linux 6の場合
udevadmコマンドを実行します。-nにはブロックデバイス名を指定してください。# udevadm info --query name -n /dev/disk/by-uuid/55574d05-07dc-4c94-a585-5599c284d79b sda2出力されたsda2が,55574d05-07dc-4c94-a585-5599c284d79bと対応するSCSIデバイス名です。- SUSE LINUX Enterprise Serverの場合
udevinfoコマンドを実行します。-nには/dev/diskディレクトリ以下のデバイス名(udev名)を指定してください。# udevinfo -q name -n /dev/disk/by-id/scsi-2000c50fffecb6ae0-part2 sda2出力されたsda2が,/dev/disk/by-id/scsi-2000c50fffecb6ae0-part2と対応するSCSIデバイス名です。- /etc/fstabファイルをバックアップします。
- /etc/fstabファイルを編集して,LABELの設定を解除します。
手順3で確認したLABELが使用されている行を,先頭に#を付けてすべてコメントアウトし,手順5で確認したLABELとSCSIデバイスの対応関係を参考にして,次のようにSCSIデバイスで指定する行を追加してください。: : #LABEL=/ / ext2 defaults 1 1 /dev/sda2 / ext2 defaults 1 1 #LABEL=/boot /boot ext2 defaults 1 2 /dev/sda1 /boot ext2 defaults 1 2 : :/etc/fstabファイルに「#LABEL=SWAP-sda3」という記述がある場合も,上記と同じように,手順6で確認したSCSIデバイスで指定する行を追加してください。- ブートローダの設定ファイルをバックアップします。
- ブートローダの設定ファイルに記載されている,LABEL指定の起動用の設定をコピーします。
設定の内容例を,次に示します。なお,内容例の「オプション」は,ユーザ環境に応じた任意指定のオプションを表します。
- Xen対応のカーネルで,ブートローダとしてGRUBを使用している場合
Xen対応のカーネルは,「表3-61 HDLMがサポートするXenハイパーバイザの動作環境」を参照してください。: : title XEN root (hd0,1) kernel /boot/xen.gz module /boot/vmlinuz-2.6.16.60-0.21-xen root=/dev/disk/by-id/scsi-1HITACHI_D60H03750027-part2 vga=0x31a resume=/dev/sda1 splash=silent showopts module /boot/initrd-2.6.16.60-0.21-xen- Xen非対応のカーネルで,ブートローダとしてGRUBを使用している場合
HDLMでサポートしているカーネルは,「3.1.1 HDLMがサポートするホストとOS」を参照してください。: : title Red Hat Enterprise Linux (2.6.18-194.el5) root (hd0,0) kernel /vmlinuz-2.6.18-194.el5 ro オプション root=LABEL=/ オプション initrd /initrd-2.6.18-194.el5- ブートローダとしてLILOまたはELILOを使用している場合
: : image=/boot/vmlinuz-2.6.18-194.el5 label=linux initrd=/boot/initrd-2.6.18-194.el5 read-only append="オプション root=LABEL=/ オプション"- ブートローダの設定ファイルに記載されている設定の名前を変更します。
手順11でコピーした設定の名前を変更してください。SCSIデバイス指定用だとわかるような名前を任意に付けます。
- ブートローダとしてGRUBを使用している場合
次の下線部を変更します。
変更前title Red Hat Enterprise Linux (2.6.18-194.el5)変更後title sd-Red Hat Enterprise Linux (2.6.18-194.el5)- ブートローダとしてLILOまたはELILOを使用している場合
次の下線部を変更します。
変更前label=linux変更後label=linux-sd- 手順5で確認したLABELとSCSIデバイスの対応関係を基に,ブートローダの設定ファイルに記載されているrootの指定を,LABELからSCSIデバイスに変更します。
手順11でコピーした設定のrootの指定を変更してください。
ユーザ環境に応じた任意指定のオプションが設定されている場合は,オプションを削除しないように注意してください。
- ブートローダとしてGRUBを使用している場合
kernelの行にあるrootの指定を,「root=SCSIデバイス」に変更してください。- ブートローダとしてLILOまたはELILOを使用している場合
rootの指定を,「root=SCSIデバイス」に変更してください。なお,appendの行に,ユーザ環境に応じた任意指定のオプションが設定されていない場合は,appendの行を削除するかコメントアウトしてください。- ブートローダの設定ファイルを編集して,起動時に使用する設定を指定します。
- ブートローダとしてGRUBを使用している場合
手順11でコピーした設定で起動できるように,defaultの数字を変更します。default= 2- ブートローダとしてLILOまたはELILOを使用している場合
defaultにlabelを記述します。default linux-sd- ブートローダとしてLILOを使用している場合は,/sbin/liloコマンドを実行して,変更を有効にします。
- ホストを再起動して,SCSIデバイスから起動できることを確認します。
- HDLMをインストールします。
「3.6.3 HDLMの新規インストール」を参照して手順2,手順4から手順13,および手順14(ホストを再起動する場合だけ実行)を実行し,HDLMデバイスを作成してください。インストール後にホストを再起動する場合と再起動しない場合とで,手順が異なりますので注意してください。- HDLM構成定義ユティリティ(dlmcfgmgr)に-vパラメタを指定して実行して,SCSIデバイスとHDLMデバイスの対応関係を確認します。
# dlmcfgmgr -v HDevName Management Device Host Channel Target Lun /dev/sddlmaa configured /dev/sda 0 0 0 0 KAPL10302-I /sbin/dlmcfgmgr completed normally.HDevName列はHDLMデバイス,Device列はSCSIデバイスを表します。- HDLM用の初期RAMディスクイメージファイルを作成します。
ホストのOSに応じて,次の手順を実行してください。
パラメタに指定する初期RAMディスクイメージファイル名は,現在使用しているものと異なる名前を指定してください。
- Red Hat Enterprise Linux 6の場合
- /etc/opt/DynamicLinkManager/hdlm.confに定義されている「hdlm_dracut=n」の記述を,「hdlm_dracut=y」に変更します。
- dracutコマンドを実行します。
コマンドの実行例を次に示します。# /sbin/dracut /boot/initramfs-hdlm-2.6.32-71.el6.i686.img `uname -r`- 上記以外のOSの場合
ブートディスクサポートユティリティ(dlmmkinitrd)を実行します。
dlmmkinitrdユティリティについては,「7.5 dlmmkinitrd ブートディスクサポートユティリティ」を参照してください。- /etc/fstabファイルをバックアップします。
- /etc/fstabファイルを編集します。
次に示すHDLM管理対象デバイスのマウントポイントを,SCSIデバイスからHDLMデバイスに書き換えます。既存のSCSIデバイス指定は先頭に#を付けてコメントアウトして,手順18で確認したSCSIデバイスとHDLMデバイスの対応関係を基に,次のようにHDLMデバイス指定を追加します。
- ブートローダとしてELILOを使用している場合
ルートディレクトリ「/」,/boot/efi,/tmp,/usr,/var,swap- ブートローダとしてGRUBを使用している場合
ルートディレクトリ「/」,/boot,/tmp,/usr,/var,swap- ブートローダとしてLILOを使用している場合
ルートディレクトリ「/」,/tmp,/usr,/var,swap: : #LABEL=/ / ext2 defaults 1 1 #/dev/sda2 / ext2 defaults 1 1 /dev/sddlmaa2 / ext2 defaults 1 1 : : #LABEL=/tmp /tmp ext2 defaults 1 2 #/dev/sda4 /tmp ext2 defaults 1 2 /dev/sddlmaa4 /tmp ext2 defaults 1 2 : :- ブートローダの設定ファイルをバックアップします。
- 手順14でSCSIデバイスからの起動に使用していた,ブートローダの設定ファイルに記載されている設定をコピーします。
- ブートローダの設定ファイルに記載されている設定の名前を変更します。
手順23でコピーした設定の名前を変更してください。HDLMデバイス指定用だとわかるような名前を任意に付けます。
- ブートローダとしてGRUBを使用している場合
次の下線部を変更します。
変更前title sd-Red Hat Enterprise Linux (2.6.18-194.el5)変更後title HDLM-Red Hat Enterprise Linux (2.6.18-194.el5)- ブートローダとしてLILOまたはELILOを使用している場合
次の下線部を変更します。
変更前label=linux-sd変更後label=linux-HDLM- ブートローダの設定ファイルに記載されているrootの指定を編集します。
ホストのOSに応じて,次の手順を実行してください。
- Red Hat Enterprise Linux 6の場合
次の手順を実行して,rootにルートデバイスのUUIDを指定します。
- mountコマンドを実行して,ルートパーティション「/」にマウントされたデバイス名を確認します。
コマンドの実行例を次に示します。# mount /dev/sda2 on / type ext4 (rw) proc on /proc type proc (rw) : :下線部のデバイス名を確認してください。- blkidコマンドを指定して,先の手順で確認したデバイスのUUIDを確認します。
コマンドの実行例を次に示します。# blkid /dev/sda2 /dev/sda2: UUID="19597725-5d20-4d1d-9906-f9f891b7711a" TYPE="ext4" #- 手順23でコピーした設定のrootの指定を,先の手順で確認したUUIDに変更します。
root=UUID=19597725-5d20-4d1d-9906-f9f891b7711a- 上記以外のOSの場合
手順23でコピーした設定のrootの指定を削除してください。Xen対応のカーネルを使用している場合は,moduleで指定されたrootデバイスの記述を削除してください。Xen対応のカーネルは,「表3-61 HDLMがサポートするXenハイパーバイザの動作環境」を参照してください。- 手順19で作成した初期RAMディスクイメージファイルをブートローダの設定ファイルに記載されているinitrdに指定します。
手順23でコピーした設定のinitrdの指定を変更してください。Xen対応のカーネルを使用している場合は,moduleで指定されたinitrdファイル名を手順19で作成した初期RAMディスクイメージファイルに変更してください。Xen対応のカーネルは,「表3-61 HDLMがサポートするXenハイパーバイザの動作環境」を参照してください。
initrdはブートローダによって指定の方法が異なるので注意してください。
また,ユーザ環境に応じた任意指定のオプションが設定されている場合,オプションを削除しないように注意してください。- SUSE LINUX Enterprise Serverを使用している場合は,ブートローダの設定ファイルに記載されているresumeの設定を削除します。
手順23でコピーした設定に記載されている,resumeの設定を削除してください。カーネルパラメタにresumeが設定されている場合,HDLMではresumeをサポートしていないため,resumeの設定を削除してください。- ブートローダの設定ファイルを編集して,起動時に使用する設定を指定します。
- ブートローダとしてGRUBを使用している場合
手順23でコピーした設定で起動できるように,defaultの数字を変更します。default= 3- ブートローダとしてLILOまたはELILOを使用している場合
defaultにlabelを記述します。default linux-HDLM- ブートローダとしてLILOを使用している場合は,/sbin/liloコマンドを実行して,変更を有効にします。
- ホストを停止します。
次に示すコマンドを実行して,ホストを停止します。# shutdown -h now- シングルパス構成からマルチパス構成に変更します。
- ホストを起動します。
- mountコマンドを実行して,HDLMデバイスがマウントされていることを確認します。
ブートローダとしてGRUBを使用している場合の実行例を次に示します。# mount /dev/sddlmaa2 on / type ext2 (rw) : : /dev/sddlmaa1 on /boot type ext2 (rw) /dev/sddlmaa4 on /tmp type ext2 (rw) /dev/sddlmaa5 on /var type ext2 (rw) /dev/sddlmaa6 on /usr type ext2 (rw) none on /dev/shm type tmpfs (rw)下線部を確認してください。- Red Hat Enterprise Linux,またはSUSE LINUX Enterprise Serverを使用している場合は,swapパーティションにHDLMデバイスが割り当てられていることを確認します。
/proc/swapsファイルを参照して,Filename列の部分にHDLMデバイス名が表示されていることを確認してください。
All Rights Reserved. Copyright© 2011, 2013, Hitachi, Ltd.