Dynamic Link Manager Software ユーザーズガイド(Linux®用)

[目次][索引][前へ][次へ]


3.7.3 HDLMデバイスをブートディスクとして使用するための設定

SCSIデバイスを使ったシングルパス構成のブートディスクの環境に,HDLMを新規インストールして環境を設定する方法について説明します。

設定を誤ると,OSが起動できなくなることがあるので,注意してください。HDLMデバイスからのOSの起動に失敗した場合の対処については,「3.7.7 HDLMデバイスからのOSの起動に失敗した場合の対処」を参照してください。

この手順で使用するブートローダの設定ファイル名は,ブートローダまたはOSによって異なります。ブートローダの設定ファイル名を次の表に示します。

表3-68 ブートローダの設定ファイル名

ブートローダ 設定ファイル名
GRUB Red Hat Enterprise Linuxの場合 /etc/grub.conf
SUSE LINUX Enterprise Serverの場合 /boot/grub/menu.lst
LILO /etc/lilo.conf
ELILO /etc/elilo.conf

  1. Linuxに,root権限を持つユーザでログインします。
  2. 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」が設定されています。
  3. /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
            :
            :
     
  4. ブートローダの設定ファイルの定義を確認します。
    ブートローダの設定ファイルの定義にLABELが使用されているかどうかを確認してください。LABELの使用例を,次に示します。
    • 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が設定されています。
    Red Hat Enterprise Linux 6を使用している場合は,次の下線部のようにUUID=から始まるブロックデバイス名(udev名)が指定されていることも確認してください。
     
            :
            :
    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.img
     
    SUSE 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名)」に読み替えて実行してください。
  5. 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)
     
    下線部を確認してください。
  6. Red Hat Enterprise Linux,またはSUSE LINUX Enterprise Serverを使用している場合は,/proc/swapsファイルを参照してSCSIデバイス名を確認します。
    SCSIデバイス名は,Filename列の部分に表示されています。
  7. 手順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デバイス名です。
  8. /etc/fstabファイルをバックアップします。
  9. /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デバイスで指定する行を追加してください。
  10. ブートローダの設定ファイルをバックアップします。
  11. ブートローダの設定ファイルに記載されている,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=/ オプション"
       
  12. ブートローダの設定ファイルに記載されている設定の名前を変更します。
    手順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
  13. 手順5で確認したLABELとSCSIデバイスの対応関係を基に,ブートローダの設定ファイルに記載されているrootの指定を,LABELからSCSIデバイスに変更します。
    手順11でコピーした設定のrootの指定を変更してください。
    ユーザ環境に応じた任意指定のオプションが設定されている場合は,オプションを削除しないように注意してください。
    • ブートローダとしてGRUBを使用している場合
      kernelの行にあるrootの指定を,「root=SCSIデバイス」に変更してください。
    • ブートローダとしてLILOまたはELILOを使用している場合
      rootの指定を,「root=SCSIデバイス」に変更してください。なお,appendの行に,ユーザ環境に応じた任意指定のオプションが設定されていない場合は,appendの行を削除するかコメントアウトしてください。
  14. ブートローダの設定ファイルを編集して,起動時に使用する設定を指定します。
    • ブートローダとしてGRUBを使用している場合
      手順11でコピーした設定で起動できるように,defaultの数字を変更します。
       default= 2 
    • ブートローダとしてLILOまたはELILOを使用している場合
      defaultlabelを記述します。
       default  linux-sd 
  15. ブートローダとしてLILOを使用している場合は,/sbin/liloコマンドを実行して,変更を有効にします。
  16. ホストを再起動して,SCSIデバイスから起動できることを確認します。
  17. HDLMをインストールします。
    3.6.3 HDLMの新規インストール」を参照して手順2,手順4から手順13,および手順14(ホストを再起動する場合だけ実行)を実行し,HDLMデバイスを作成してください。インストール後にホストを再起動する場合と再起動しない場合とで,手順が異なりますので注意してください。
  18. 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デバイスを表します。
  19. HDLM用の初期RAMディスクイメージファイルを作成します。
    ホストのOSに応じて,次の手順を実行してください。
    パラメタに指定する初期RAMディスクイメージファイル名は,現在使用しているものと異なる名前を指定してください。
    • Red Hat Enterprise Linux 6の場合

      1. /etc/opt/DynamicLinkManager/hdlm.confに定義されている「hdlm_dracut=n」の記述を,「hdlm_dracut=y」に変更します。
      2. dracutコマンドを実行します。
        コマンドの実行例を次に示します。
         
        # /sbin/dracut /boot/initramfs-hdlm-2.6.32-71.el6.i686.img `uname -r`
         
    • 上記以外のOSの場合
      ブートディスクサポートユティリティ(dlmmkinitrd)を実行します。
      dlmmkinitrdユティリティについては,「7.5 dlmmkinitrd ブートディスクサポートユティリティ」を参照してください。
  20. /etc/fstabファイルをバックアップします。
  21. /etc/fstabファイルを編集します。
    次に示すHDLM管理対象デバイスのマウントポイントを,SCSIデバイスからHDLMデバイスに書き換えます。
    • ブートローダとしてELILOを使用している場合
      ルートディレクトリ「/」,/boot/efi/tmp/usr/varswap
    • ブートローダとしてGRUBを使用している場合
      ルートディレクトリ「/」,/boot/tmp/usr/varswap
    • ブートローダとしてLILOを使用している場合
      ルートディレクトリ「/」,/tmp/usr/varswap
    既存のSCSIデバイス指定は先頭に#を付けてコメントアウトして,手順18で確認したSCSIデバイスとHDLMデバイスの対応関係を基に,次のようにHDLMデバイス指定を追加します。
     
                                :
                                :
    #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
                                :
                                :
     
  22. ブートローダの設定ファイルをバックアップします。
  23. 手順14でSCSIデバイスからの起動に使用していた,ブートローダの設定ファイルに記載されている設定をコピーします。
  24. ブートローダの設定ファイルに記載されている設定の名前を変更します。
    手順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
  25. ブートローダの設定ファイルに記載されているrootの指定を編集します。
    ホストのOSに応じて,次の手順を実行してください。
    • Red Hat Enterprise Linux 6の場合
      次の手順を実行して,rootにルートデバイスのUUIDを指定します。

      1. mountコマンドを実行して,ルートパーティション「/」にマウントされたデバイス名を確認します。
        コマンドの実行例を次に示します。
         
        # mount
        /dev/sda2 on / type ext4 (rw)
        proc on /proc type proc (rw)
             :
             :
         
        下線部のデバイス名を確認してください。
      2. blkidコマンドを指定して,先の手順で確認したデバイスのUUIDを確認します。
        コマンドの実行例を次に示します。
         
        # blkid /dev/sda2
        /dev/sda2: UUID="19597725-5d20-4d1d-9906-f9f891b7711a" TYPE="ext4"
        #
         
      3. 手順23でコピーした設定のrootの指定を,先の手順で確認したUUIDに変更します。
        root=UUID=19597725-5d20-4d1d-9906-f9f891b7711a
        
    • 上記以外のOSの場合
      手順23でコピーした設定のrootの指定を削除してください。Xen対応のカーネルを使用している場合は,moduleで指定されたrootデバイスの記述を削除してください。Xen対応のカーネルは,「表3-61 HDLMがサポートするXenハイパーバイザの動作環境」を参照してください。
  26. 手順19で作成した初期RAMディスクイメージファイルをブートローダの設定ファイルに記載されているinitrdに指定します。
    手順23でコピーした設定のinitrdの指定を変更してください。Xen対応のカーネルを使用している場合は,moduleで指定されたinitrdファイル名を手順19で作成した初期RAMディスクイメージファイルに変更してください。Xen対応のカーネルは,「表3-61 HDLMがサポートするXenハイパーバイザの動作環境」を参照してください。
    initrdはブートローダによって指定の方法が異なるので注意してください。
    また,ユーザ環境に応じた任意指定のオプションが設定されている場合,オプションを削除しないように注意してください。
  27. SUSE LINUX Enterprise Serverを使用している場合は,ブートローダの設定ファイルに記載されているresumeの設定を削除します。
    手順23でコピーした設定に記載されている,resumeの設定を削除してください。カーネルパラメタにresumeが設定されている場合,HDLMではresumeをサポートしていないため,resumeの設定を削除してください。
  28. ブートローダの設定ファイルを編集して,起動時に使用する設定を指定します。
    • ブートローダとしてGRUBを使用している場合
      手順23でコピーした設定で起動できるように,defaultの数字を変更します。
       default= 3 
    • ブートローダとしてLILOまたはELILOを使用している場合
      defaultlabelを記述します。
      default linux-HDLM
  29. ブートローダとしてLILOを使用している場合は,/sbin/liloコマンドを実行して,変更を有効にします。
  30. ホストを停止します。
    次に示すコマンドを実行して,ホストを停止します。
     
    # shutdown -h now
     
  31. シングルパス構成からマルチパス構成に変更します。
  32. ホストを起動します。
  33. 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)
     
    下線部を確認してください。
  34. Red Hat Enterprise Linux,またはSUSE LINUX Enterprise Serverを使用している場合は,swapパーティションにHDLMデバイスが割り当てられていることを確認します。
    /proc/swapsファイルを参照して,Filename列の部分にHDLMデバイス名が表示されていることを確認してください。

[目次] [前へ] [次へ]


All Rights Reserved. Copyright© 2011, 2013, Hitachi, Ltd.