[Solaris] Solaris Volume ManagerによるOSミラー構築

基礎的なことなんだろうなと思われるんだけども、SVMによるOSミラー構築手順なんかを押さえてみる。

SVM-Mirroring_20130707

今回やろうとしているのは、上図にあるとおりOSディスクのミラーリング。先日購入したSun Fire V125にはディスクが2本搭載されており、いずれも容量は72GBとなっている。この中の左側のディスクにSolaris10をインストールしたばかりの状態になっているということで。

普通、IAサーバを構築する際はハードウェアRAIDを使うことが多いのだけど、何故かSolarisはこのソフトウェアRAIDを使用するケースが非常に多い。正直、ハードウェアRAIDを使用するケースを聞いたことがない。ということで、恐らく押さえておかないと後々きついよなーと感じたので記事に起こしたしだいです。

まず、Solaris10を導入したディスクのパーティションテーブルを確認しておく。

bash-3.2# format
Searching for disks…done

AVAILABLE DISK SELECTIONS:
0. c1t0d0 <SUN72G cyl 14087 alt 2 hd 24 sec 424>
/pci@1c,600000/scsi@2/sd@0,0
1. c1t1d0 <SUN72G cyl 14087 alt 2 hd 24 sec 424>
/pci@1c,600000/scsi@2/sd@1,0
Specify disk (enter its number): 0
selecting c1t0d0
[disk formatted]
Warning: Current Disk has mounted partitions.
/dev/dsk/c1t0d0s0 is currently mounted on /. Please see umount(1M).
/dev/dsk/c1t0d0s1 is currently mounted on /var. Please see umount(1M).
/dev/dsk/c1t0d0s3 is currently used by swap. Please see swap(1M).
/dev/dsk/c1t0d0s7 is currently mounted on /export/home. Please see umount(1M).

format> p

partition> p
Current partition table (original):
Total disk cylinders available: 14087 + 2 (reserved cylinders)

Part      Tag    Flag     Cylinders         Size            Blocks
0       root    wm     825 –  4588       18.26GB    (3764/0/0)   38302464
1        var    wm    4589 –  7886       16.00GB    (3298/0/0)   33560448
2     backup    wm       0 – 14086       68.35GB    (14087/0/0) 143349312
3       swap    wu       0 –   824        4.00GB    (825/0/0)     8395200
4 unassigned    wm   14070 – 14082       64.59MB    (13/0/0)       132288
5 unassigned    wm       0                0         (0/0/0)             0
6 unassigned    wm       0                0         (0/0/0)             0
7       home    wm    7887 – 14069       30.00GB    (6183/0/0)   62918208

partition> quit

format> quit

ミラーリングするディスクのパーティションテーブルも確認しておく。

bash-3.2# format
Searching for disks…done

AVAILABLE DISK SELECTIONS:
0. c1t0d0 <SUN72G cyl 14087 alt 2 hd 24 sec 424>
/pci@1c,600000/scsi@2/sd@0,0
1. c1t1d0 <SUN72G cyl 14087 alt 2 hd 24 sec 424>
/pci@1c,600000/scsi@2/sd@1,0
Specify disk (enter its number): 1
selecting c1t1d0
[disk formatted]

format> p

 

partition> p
Current partition table (original):
Total disk cylinders available: 14087 + 2 (reserved cylinders)

Part      Tag    Flag     Cylinders         Size            Blocks
0       root    wm       0                0         (0/0/0)             0
1       swap    wu       0                0         (0/0/0)             0
2     backup    wu       0 – 14086       68.35GB    (14087/0/0) 143349312
3 unassigned    wm       0                0         (0/0/0)             0
4 unassigned    wm       0                0         (0/0/0)             0
5 unassigned    wm       0                0         (0/0/0)             0
6        usr    wm       0 – 14086       68.35GB    (14087/0/0) 143349312
7 unassigned    wm       0                0         (0/0/0)             0

partition> quit
format> quit

当然だけど、パーティションテーブルの構造は全然違う。そもそも今回の場合、中古の機種を購入していた為、元々使われていたパーティションテーブルがそのままのっていたものと考えられるのだけど、次のコマンドで全てc1t0d0→c1t1d0に対してパーティションテーブルの同期を行う。

bash-3.2# prtvtoc /dev/rdsk/c1t0d0s2 | fmthard -s – /dev/rdsk/c1t1d0s2
fmthard:  New volume table of contents now in place.
bash-3.2#

実行前はこんなパーティションテーブルだったのが

bash-3.2# prtvtoc /dev/rdsk/c1t1d0s2
* /dev/rdsk/c1t1d0s2 partition map
*
* Dimensions:
*     512 bytes/sector
*     424 sectors/track
*      24 tracks/cylinder
*   10176 sectors/cylinder
*   14089 cylinders
*   14087 accessible cylinders
*
* Flags:
*   1: unmountable
*  10: read-only
*
*                          First     Sector    Last
* Partition  Tag  Flags    Sector     Count    Sector  Mount Directory
2      5    01          0 143349312 143349311
       6      4    00          0 143349312 143349311
bash-3.2#

以下のようになる。

bash-3.2# prtvtoc /dev/rdsk/c1t1d0s2
* /dev/rdsk/c1t1d0s2 partition map
*
* Dimensions:
*     512 bytes/sector
*     424 sectors/track
*      24 tracks/cylinder
*   10176 sectors/cylinder
*   14089 cylinders
*   14087 accessible cylinders
*
* Flags:
*   1: unmountable
*  10: read-only
*
* Unallocated space:
*       First     Sector    Last
*       Sector     Count    Sector
*   143308608     40704 143349311
*
*                          First     Sector    Last
* Partition  Tag  Flags    Sector     Count    Sector  Mount Directory
   0      2    00    8395200  38302464  46697663
       1      7    00   46697664  33560448  80258111
       2      5    00          0 143349312 143349311
       3      3    01          0   8395200   8395199
       4      0    00  143176320    132288 143308607
       7      8    00   80258112  62918208 143176319
bash-3.2#

SVMはその構成データをメタDBという形で管理する。今回の場合、パーティション番号4番に対して作成していたスライスに対してこれを構成する。

各ディスクごとにmetadbコマンドを使用して、2つずつのメタDBを作成した。メタDBの数は、ディスク搭載本数によって推奨値が決められていたように記憶してるけど、ちょっと見つけられていない。。(これだと少々少なかったような気がする・・)

bash-3.2# metadb -af -c 2 /dev/dsk/c1t0d0s4
bash-3.2# metadb -af -c 2 /dev/dsk/c1t1d0s4
bash-3.2# metadb
flags           first blk       block count
a        u         16              8192            /dev/dsk/c1t0d0s4
a        u         8208            8192            /dev/dsk/c1t0d0s4
a        u         16              8192            /dev/dsk/c1t1d0s4
a        u         8208            8192            /dev/dsk/c1t1d0s4
bash-3.2#

現在使用中のディスクも含め、どんどんディスクをSVM管轄に含めていきます。ただし、この時点ではまだ2本のディスクをミラー化してはいません。各メタボリュームは正ディスクしかアサインしていません。

bash-3.2# metainit -f d10 1 1 /dev/dsk/c1t0d0s0
d10: Concat/Stripe is setup
bash-3.2#
bash-3.2# metainit -f d20 1 1 /dev/dsk/c1t1d0s0
d20: Concat/Stripe is setup
bash-3.2#
bash-3.2# metainit -f d0 -m d10
d0: Mirror is setup
bash-3.2#
bash-3.2# metainit -f d11 1 1 /dev/dsk/c1t0d0s1
d11: Concat/Stripe is setup
bash-3.2#
bash-3.2# metainit -f d21 1 1 /dev/dsk/c1t1d0s1
d21: Concat/Stripe is setup
bash-3.2#
bash-3.2# metainit -f d1 -m d11
d1: Mirror is setup
bash-3.2#
bash-3.2#
bash-3.2# metainit -f d13 1 1 /dev/dsk/c1t0d0s3
d13: Concat/Stripe is setup
bash-3.2#
bash-3.2# metainit -f d23 1 1 /dev/dsk/c1t1d0s3
d23: Concat/Stripe is setup
bash-3.2#
bash-3.2# metainit -f d3 -m d13
d3: Mirror is setup
bash-3.2#
bash-3.2#
bash-3.2# metainit -f d17 1 1 /dev/dsk/c1t0d0s7
d17: Concat/Stripe is setup
bash-3.2#
bash-3.2# metainit -f d27 1 1 /dev/dsk/c1t1d0s7
d27: Concat/Stripe is setup
bash-3.2#
bash-3.2# metainit -f d7 -m d17
d7: Mirror is setup
bash-3.2#

メタボリュームと各物理パーティションがSVM管轄になったかどうかを確認。

bash-3.2# metastat
d7: Mirror
Submirror 0: d17
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 62918208 blocks (30 GB)

d17: Submirror of d7
State: Okay
Size: 62918208 blocks (30 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t0d0s7          0     No            Okay   Yes

d3: Mirror
Submirror 0: d13
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 8395200 blocks (4.0 GB)

d13: Submirror of d3
State: Okay
Size: 8395200 blocks (4.0 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t0d0s3          0     No            Okay   Yes

d1: Mirror
Submirror 0: d11
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 33560448 blocks (16 GB)

d11: Submirror of d1
State: Okay
Size: 33560448 blocks (16 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t0d0s1          0     No            Okay   Yes

d0: Mirror
Submirror 0: d10
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 38302464 blocks (18 GB)

d10: Submirror of d0
State: Okay
Size: 38302464 blocks (18 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t0d0s0          0     No            Okay   Yes

d27: Concat/Stripe
Size: 62918208 blocks (30 GB)
Stripe 0:
Device     Start Block  Dbase   Reloc
c1t1d0s7          0     No      Yes

d23: Concat/Stripe
Size: 8395200 blocks (4.0 GB)
Stripe 0:
Device     Start Block  Dbase   Reloc
c1t1d0s3          0     No      Yes

d21: Concat/Stripe
Size: 33560448 blocks (16 GB)
Stripe 0:
Device     Start Block  Dbase   Reloc
c1t1d0s1          0     No      Yes

d20: Concat/Stripe
Size: 38302464 blocks (18 GB)
Stripe 0:
Device     Start Block  Dbase   Reloc
c1t1d0s0          0     No      Yes

Device Relocation Information:
Device   Reloc  Device ID
c1t1d0   Yes    id1,sd@SFUJITSU_MAW3073NCSUN72G_000748B0PD9D____DAN0P7B0PD9D
c1t0d0   Yes    id1,sd@SFUJITSU_MAW3073NCSUN72G_000747B0PAB1____DAN0P7B0PAB1

起動ボリュームを、それまでの物理パーティションから、メタボリュームへ変更するコマンドを撃つ。/etc/vfstabファイルを参照すると、ルートパーティション設定が変更されていることを確認。

bash-3.2# metaroot d0
bash-3.2#
bash-3.2# cat /etc/vfstab
#device         device          mount           FS      fsck    mount   mount
#to mount       to fsck         point           type    pass    at boot options
#
fd      –       /dev/fd fd      –       no      –
/proc   –       /proc   proc    –       no      –
/dev/dsk/c1t0d0s3       –       –       swap    –       no      –
/dev/md/dsk/d0  /dev/md/rdsk/d0 /       ufs     1       no      –
/dev/dsk/c1t0d0s1       /dev/rdsk/c1t0d0s1      /var    ufs     1       no                                             –
/dev/dsk/c1t0d0s7       /dev/rdsk/c1t0d0s7      /export/home    ufs     2                                              yes     –
/devices        –       /devices        devfs   –       no      –
sharefs –       /etc/dfs/sharetab       sharefs –       no      –
ctfs    –       /system/contract        ctfs    –       no      –
objfs   –       /system/object  objfs   –       no      –
swap    –       /tmp    tmpfs   –       yes     –

これに引き続き、メタ化したボリュームへのマウント設定変更を/etc/vfstabに対して仕掛けていく。古い設定はとりあえず消さずにコメントアウトしている。

bash-3.2# cat /etc/vfstab
#device         device          mount           FS      fsck    mount   mount
#to mount       to fsck         point           type    pass    at boot options
#
fd      –       /dev/fd fd      –       no      –
/proc   –       /proc   proc    –       no      –
#/dev/dsk/c1t0d0s3      –       –       swap    –       no      –
/dev/md/dsk/d3  /dev/md/rdsk/d3 –       swap    –       no      –
/dev/md/dsk/d0  /dev/md/rdsk/d0 /       ufs     1       no      –
#/dev/dsk/c1t0d0s1      /dev/rdsk/c1t0d0s1      /var    ufs     1       no      –
/dev/md/dsk/d1  /dev/md/rdsk/d1 /var    ufs     1       no      –
#/dev/dsk/c1t0d0s7      /dev/rdsk/c1t0d0s7      /export/home    ufs     2       yes     –
/dev/md/dsk/d7  /dev/md/rdsk/d7 /export/home    ufs     2       yes     –
/devices        –       /devices        devfs   –       no      –
sharefs –       /etc/dfs/sharetab       sharefs –       no      –
ctfs    –       /system/contract        ctfs    –       no      –
objfs   –       /system/object  objfs   –       no      –
swap    –       /tmp    tmpfs   –       yes     –
bash-3.2#

再起動してみて、起動できるかどうかを確認してみる。シリアルコンソールと言うのは非常に便利。実は、実際にこの再起動を行ったときは、メタボリュームを1つ構成し忘れており、それに伴うエラーメッセージが出力されていました。一応乗せておきますー。

bash-3.2# init 6
updating /platform/sun4u/boot_archive
bash-3.2# svc.startd: The system is coming down.  Please wait.
svc.startd: 106 system services are now being stopped.
Jul  6 22:06:47 yabakei rpc.metad: Terminated
svc.startd: The system is down.
syncing file systems… done
rebooting…

SC Alert: Host System has Reset
Probing system devices
Probing memory
Probing I/O buses

Sun Fire V125, No Keyboard
Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
OpenBoot 4.22.23, 1024 MB memory installed, Serial #76443634.
Ethernet address 0:14:4f:8e:6f:f2, Host ID: 848e6ff2.

Rebooting with command: boot
Boot device: disk:a  File and args:
SunOS Release 5.10 Version Generic_147147-26 64-bit
Copyright (c) 1983, 2013, Oracle and/or its affiliates. All rights reserved.
Hardware watchdog enabled
Hostname: yabakei

WARNING – Unable to repair one or more filesystems.
Run fsck manually (fsck filesystem…).

checking ufs filesystems
fsck: could not stat /dev/md/rdsk/d7: No such file or directory
fsckall failed with exit code 1.

WARNING – Unable to repair one or more filesystems.
Run fsck manually (fsck filesystem…).

svc:/system/filesystem/local:default: WARNING: /sbin/mountall -l failed: exit status 32
Jul  6 22:08:53 svc.startd[9]: svc:/system/filesystem/local:default: Method “/lib/svc/method/fs-local” failed with exit status 95.
Jul  6 22:08:53 svc.startd[9]: system/filesystem/local:default failed fatally: transitioned to maintenance (see ‘svcs -xv’ for details)

yabakei console login: root
Password:
Last login: Sat Jul  6 21:40:42 on console
Oracle Corporation      SunOS 5.10      Generic Patch   January 2005
#

無事にログインできたら、メタボリュームで正常にマウントして動いているかを確認しておく。

# df -h
Filesystem             size   used  avail capacity  Mounted on
/dev/md/dsk/d0          18G   4.7G    13G    27%    /
/devices                 0K     0K     0K     0%    /devices
ctfs                     0K     0K     0K     0%    /system/contract
proc                     0K     0K     0K     0%    /proc
mnttab                   0K     0K     0K     0%    /etc/mnttab
swap                   4.5G   1.6M   4.5G     1%    /etc/svc/volatile
objfs                    0K     0K     0K     0%    /system/object
sharefs                  0K     0K     0K     0%    /etc/dfs/sharetab
/platform/sun4u-us3/lib/libc_psr/libc_psr_hwcap1.so.1
18G   4.7G    13G    27%    /platform/sun4u-us3/lib/libc_psr.so.1
/platform/sun4u-us3/lib/sparcv9/libc_psr/libc_psr_hwcap1.so.1
18G   4.7G    13G    27%    /platform/sun4u-us3/lib/sparcv9/libc_psr.so.1
fd                       0K     0K     0K     0%    /dev/fd
/dev/md/dsk/d1          16G    97M    16G     1%    /var
swap                   4.5G    64K   4.5G     1%    /tmp
swap                   4.5G    40K   4.5G     1%    /var/run
/dev/md/dsk/d7          30G    30M    29G     1%    /export/home
#

いいんぢゃないでしょうか。それでは、メタボリュームに対してミラーディスクの適用を行う。

bash-3.2# metattach d0 d20
d0: submirror d20 is attached
bash-3.2#
bash-3.2#
bash-3.2# metattach d1 d21
d1: submirror d21 is attached
bash-3.2#
bash-3.2#
bash-3.2# metattach d3 d23
d3: submirror d23 is attached
bash-3.2#
bash-3.2#
bash-3.2# metattach d7 d27
d7: submirror d27 is attached
bash-3.2#

それぞれのボリューム状態を確認する。ミラーリングが開始されたばっかりである為、ステータスは全て「Resyncing」となっており、そのプログレス値が表示されている。これらが100%になったら、とりあえず構成としては出来上がりとなる。

bash-3.2# metastat
d7: Mirror
Submirror 0: d17
State: Okay
Submirror 1: d27
  State: Resyncing
    Resync in progress: 0 % done
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 62918208 blocks (30 GB)

d17: Submirror of d7
State: Okay
Size: 62918208 blocks (30 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t0d0s7          0     No            Okay   Yes

d27: Submirror of d7
State: Resyncing
Size: 62918208 blocks (30 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t1d0s7          0     No            Okay   Yes

d3: Mirror
Submirror 0: d13
State: Okay
Submirror 1: d23
     State: Resyncing
    Resync in progress: 1 % done
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 8395200 blocks (4.0 GB)

d13: Submirror of d3
State: Okay
Size: 8395200 blocks (4.0 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t0d0s3          0     No            Okay   Yes

d23: Submirror of d3
State: Resyncing
Size: 8395200 blocks (4.0 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t1d0s3          0     No            Okay   Yes

d1: Mirror
Submirror 0: d11
State: Okay
Submirror 1: d21
      State: Resyncing
    Resync in progress: 0 % done
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 33560448 blocks (16 GB)

d11: Submirror of d1
State: Okay
Size: 33560448 blocks (16 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t0d0s1          0     No            Okay   Yes

d21: Submirror of d1
State: Resyncing
Size: 33560448 blocks (16 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t1d0s1          0     No            Okay   Yes

d0: Mirror
Submirror 0: d10
State: Okay
Submirror 1: d20
      State: Resyncing
    Resync in progress: 0 % done
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 38302464 blocks (18 GB)

d10: Submirror of d0
State: Okay
Size: 38302464 blocks (18 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t0d0s0          0     No            Okay   Yes

d20: Submirror of d0
State: Resyncing
Size: 38302464 blocks (18 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t1d0s0          0     No            Okay   Yes

Device Relocation Information:
Device   Reloc  Device ID
c1t1d0   Yes    id1,sd@SFUJITSU_MAW3073NCSUN72G_000748B0PD9D____DAN0P7B0PD9D
c1t0d0   Yes    id1,sd@SFUJITSU_MAW3073NCSUN72G_000747B0PAB1____DAN0P7B0PAB1
bash-3.2#

一々metastatを実行してみて回るのもしんどいので、以下のようなコマンドを使うと便利っぽいです。

bash-3.2# metastat|grep done
Resync in progress: 0 % done
Resync in progress: 1 % done
Resync in progress: 0 % done
Resync in progress: 0 % done

全てのミラーリングが完了すると、Resyncのプログレス値は表示されなくなる為、そこが判断基準になると思います。ちなみに、72GB HDDでミラーリングを行ったところ、22:28に開始した同期処理は、およそ翌12:45ごろには完了していました。やっぱしと言うか、ルートパーティションの同期に時間がかかったっぽいです。

最後に、ミラーの状態を確認します。

bash-3.2# metastat
d7: Mirror
Submirror 0: d17
State: Okay
Submirror 1: d27
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 62918208 blocks (30 GB)

d17: Submirror of d7
State: Okay
Size: 62918208 blocks (30 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t0d0s7          0     No            Okay   Yes

d27: Submirror of d7
State: Okay
Size: 62918208 blocks (30 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t1d0s7          0     No            Okay   Yes

d3: Mirror
Submirror 0: d13
State: Okay
Submirror 1: d23
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 8395200 blocks (4.0 GB)

d13: Submirror of d3
State: Okay
Size: 8395200 blocks (4.0 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t0d0s3          0     No            Okay   Yes

d23: Submirror of d3
State: Okay
Size: 8395200 blocks (4.0 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t1d0s3          0     No            Okay   Yes

d1: Mirror
Submirror 0: d11
State: Okay
Submirror 1: d21
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 33560448 blocks (16 GB)

d11: Submirror of d1
State: Okay
Size: 33560448 blocks (16 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t0d0s1          0     No            Okay   Yes

d21: Submirror of d1
State: Okay
Size: 33560448 blocks (16 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t1d0s1          0     No            Okay   Yes

d0: Mirror
Submirror 0: d10
State: Okay
Submirror 1: d20
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 38302464 blocks (18 GB)

d10: Submirror of d0
State: Okay
Size: 38302464 blocks (18 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t0d0s0          0     No            Okay   Yes

d20: Submirror of d0
State: Okay
Size: 38302464 blocks (18 GB)
Stripe 0:
Device     Start Block  Dbase        State Reloc Hot Spare
c1t1d0s0          0     No            Okay   Yes

Device Relocation Information:
Device   Reloc  Device ID
c1t1d0   Yes    id1,sd@SFUJITSU_MAW3073NCSUN72G_000748B0PD9D____DAN0P7B0PD9D
c1t0d0   Yes    id1,sd@SFUJITSU_MAW3073NCSUN72G_000747B0PAB1____DAN0P7B0PAB1
bash-3.2#

全てのボリュームのステータスが「Okay」であれば大丈夫と思います。

コメント

タイトルとURLをコピーしました