Solaris ボリュームマネージャの管理

RAID 1 ボリュームの削除 (ミラー化の解除)

Procedureファイルシステムのミラー化を解除するには

この手順では、システムの動作中にマウント解除できるファイルシステムのミラー化を解除します。 ルート (/)、 /var/usrswap など、システムの動作中にマウント解除できないファイルシステムのミラー化を解除する場合は、 「マウント解除できないファイルシステムのミラー化を解除するには」を参照してください。

手順
  1. すべてのデータの最新のバックアップを取っているか確認します。また、この操作にはルート権限が必要です。

  2. 「RAID 1 ボリュームの背景情報」を確認します。

  3. 少なくとも 1 つのサブミラーが「正常 (Okay)」状態であることを確認します。


    # metastat
    
  4. ファイルシステムをマウント解除します。


    # umount /home
    
  5. サブミラーを切り離します。このサブミラーは、この後もこのファイルシステムのために使用されます。

    詳細については、metadetach(1M) のマニュアルページを参照してください。


    # metadetach d1 d10
    
  6. ミラーと残りのサブコンポーネントを削除します。

    詳細については、metaclear(1M) のマニュアルページを参照してください。


    # metaclear -r d1
    
  7. 必要であれば、/etc/vfstab ファイルを編集して、手順1 で切り離したコンポーネントを使用するように指定します。

  8. ファイルシステムを再びマウントします。


例 1119 /opt ファイルシステムのミラー化を解除する


# metastat d4
d4: Mirror
    Submirror 0: d2
      State: Okay        
    Submirror 1: d3
      State: Okay        
...
# umount /opt
# metadetach d4 d2
d4: submirror d2 is detached
# metaclear -r d4
d4: Mirror is cleared
d3: Concat/Stripe is cleared
(/opt のエントリが d4 の代わりにそのスライスまたはボリュームを指すように /etc/vfstab ファイルを編集する)
# mount /opt

この例の /opt ファイルシステムは 2 面ミラー d4 から構成されています。そのサブミラー d2d3 はそれぞれ、スライス /dev/dsk/c0t0d0s0 /dev/dsk/c1t0d0s0 から構成されています。 metastat コマンドを使用して、少なくとも 1 つのサブミラーが「正常 (Okay)」状態であることを確認します。 (「正常 (Okay)」状態のサブミラーが存在しないミラーは、最初に修復する必要があります)。 次に、このファイルシステムのマウントを解除してから、サブミラー d2 を切り離します。 metaclear -r コマンドは、ミラーともう 1 つのサブミラー d3 を削除します。

次に、/opt のエントリが、該当するスライスを参照するように /etc/vfstab ファイルを編集します。 たとえば、d4 がミラーで、d2 がサブミラーであれば、次のように変更します。


/dev/md/dsk/d4  /dev/md/rdsk/d4  /opt ufs  2  yes -

上記の行を次のように変更します。


/dev/md/dsk/d2  /dev/md/rdsk/d2  /opt ufs  2  yes -

サブミラー名を使用することによって、ファイルシステムをボリュームにマウントしたままにできます。 最後に、/opt ファイルシステムを再びマウントします。

/etc/vfstab ファイル内で d4 の代わりに d2 を使用したことによって、このミラーのミラー化を解除しています。 d2 は 1 つのスライスから構成されているため、このデバイスでボリュームをサポートしたくなければ、ファイルシステムをスライス名 (/dev/dsk/c0t0d0s0) にマウントできます。


Procedureマウント解除できないファイルシステムのミラー化を解除するには

ルート (/)、 /usr/optswap など、システムが通常に動作している間はマウント解除できないファイルシステムのミラー化を解除するには、次の手順を実行します。

手順
  1. metastat コマンドを実行して、少なくとも 1 つのサブミラーの状態が「正常 (Okay)」であることを確認します。

  2. ルート (/)、/usr/opt、または swap を含むミラーに対して metadetach コマンドを実行して、このミラーを 1 面ミラーにします。

  3. /usr/opt swap の場合は、 /etc/vfstab ファイルを編集して、このファイルシステムのエントリが Solaris ボリュームマネージャ以外のデバイス (スライス) を参照するようにします。

  4. ルート (/) だけの場合は、 metaroot コマンドを実行します。

  5. システムを再起動します。

  6. metaclear コマンドを実行してミラーとサブミラーを削除します。


例 1120 ルート (/) のミラー化を解除する


# metadetach d0 d20
d0: submirror d20 is detached
# metaroot /dev/dsk/c0t3d0s0
# reboot
...
# metaclear -r d0
d0: Mirror is cleared
d10: Concat/Stripe is cleared
# metaclear d20
d20: Concat/Stripe is cleared

この例では、ルート (/) は d0 という名前の 2 面ミラーです。そのサブミラー d10 d20 はそれぞれ、スライス /dev/dsk/c0t3d0s0/dev/dsk/c1t3d0s0 から構成されています。 metastat コマンドを使用して、少なくとも 1 つのサブミラーが「正常 (Okay)」状態であることを確認します。 (「正常 (Okay)」状態のサブミラーが存在しないミラーは、最初に修復する必要があります)。 次に、サブミラー d20 を切り離して、ミラー d0 を 1 面ミラーにします。 metaroot コマンドには、システムの起動に使用する rootslice を指定します。 このコマンドは、/etc/system/etc/vfstab ファイルを編集して、ルート (/) のミラー化を指定する情報を削除します。 再起動後の metaclear -r コマンドは、ミラーともう 1 つのサブミラー d10 を削除します。 最後の metaclear コマンドは、サブミラー d20 を削除します。



例 1121 swap のミラー化を解除する


# metastat d1
d1: Mirror
    Submirror 0: d11
      State: Okay        
    Submirror 1: d21
      State: Okay        
...
# metadetach d1 d21
d1: submirror d21 is detached
(/etc/vfstab ファイルを編集して、swap のエントリをメタデバイスからスライス名に変更する)
# reboot
...
# metaclear -r d1
d1: Mirror is cleared
d11: Concat/Stripe is cleared
# metaclear d21
d21: Concat/stripe is cleared

この例では、swapd1 という名前の 2 面ミラーです。そのサブミラー d11d21 はそれぞれ、スライス /dev/dsk/c0t3d0s1 /dev/dsk/c1t3d0s1 から構成されています。 metastat コマンドを使用して、少なくとも 1 つのサブミラーが「正常 (Okay)」状態であることを確認します。 (「正常 (Okay)」状態のサブミラーが存在しないミラーは、最初に修復する必要があります)。 次に、サブミラー d21 を切り離して、ミラー d1 を 1 面ミラーにします。 次に、/etc/vfstab ファイルを編集して、swap のエントリが、サブミラー d21 のスライスを参照するように指定します。 たとえば、d1 がミラーで、d21 がスライス /dev/dsk/c0t3d0s1 を含むサブミラーであれば、次のように変更します。


/dev/md/dsk/d1 - - swap - no -

上記の行を次のように変更します。


/dev/dsk/c0t3d0s1 - - swap - no -

再起動後、metaclear -r コマンドは、このミラーともう 1 つのサブミラー d11 を削除します。 最後の metaclear コマンドは、サブミラー d21 を削除します。