この章では、ディスク管理の手順について説明します。Solaris システム上でディスクを管理する方法に精通している場合は、この章で説明する多くの内容を読み飛ばすことができます。
この章で説明する手順は次のとおりです。
ディスク管理の概要については、第 21 章「ディスク管理の概要」を参照してください。
作業 |
説明 |
手順の説明 |
---|---|---|
1. システム上のディスクの確認 |
システム上のディスクの種類が分からない場合は、format ユーティリティを使用して確認する。 | |
2. ディスクのフォーマット |
format ユーティリティを使用して、ディスクがフォーマット済みかどうかを判断する。 | |
|
ほとんどの場合、ディスクはフォーマット済みである。フォーマットする必要があれば、format を使用する。 | |
3. スライス情報の表示 |
format ユーティリティを使用してスライス情報を表示する。 | |
4. ディスクラベルの作成 |
format ユーティリティを使用してディスクラベルを作成する。 | |
5. ディスクラベルの検査 |
prtvtoc コマンドを使用してディスクラベルを検査する。 | |
6. format.dat のエントリの作成 |
サードパーティのディスクをサポートするために format.dat のエントリを作成する。 | |
7. 欠陥ディスクセクターの検出 |
format ユーティリティを使用して欠陥ディスクセクターを調べる。 | |
8. 欠陥ディスクセクターの修復 (必要な場合) |
format ユーティリティを使用して欠陥ディスクセクターを修復する。 |
format ユーティリティを使用して、システムに接続されているディスクの種類を調べます。また、format ユーティリティを使用して、ディスクがシステムに認識されるかどうかを検査することもできます。format ユーティリティの使用方法については、第 25 章「format ユーティリティの参照情報」を参照してください。
スーパーユーザーになります。
format ユーティリティを使用して、システム上で認識されるディスクを確認します。
# format |
format ユーティリティは、AVAILABLE DISK SELECTIONS という見出しの下に、認識されるディスクのリストを表示します。
次の format 出力は、2 つのディスクを持つシステムのものです。
# format Searching for disks...done AVAILABLE DISK SELECTIONS: 0. c0t1d0 <SUN1.05 cyl 2036 alt 2 hd 14 sec 72> /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,800000/sd@1,0 1. c0t3d0 <SUN1.05 cyl 2036 alt 2 hd 14 sec 72> /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,800000/sd@3,0 Specify disk (enter its number): |
format の出力は、ディスクの物理デバイス名と論理デバイス名を括弧 <> 内の商品名に対応させています。このため、どの論理名がシステムに接続されたディスクを表しているかを一目で識別できます。論理デバイス名と物理デバイス名については、第 20 章「デバイスへのアクセス」を参照してください。
次の例では、ワイルドカードを使用して、追加コントローラに接続されたディスクを表示します。
# format /dev/rdsk/c2* AVAILABLE DISK SELECTIONS: 0. /dev/rdsk/c2t0d0s0 <SUN2.1G cyl 2733 alt 2 hd 19 sec 80> /io-unit@f,e0200000/sbi@0,0/QLGC,isp@2,10000/sd@0,0 1. /dev/rdsk/c2t1d0s0 <SUN2.1G cyl 2733 alt 2 hd 19 sec 80> /io-unit@f,e0200000/sbi@0,0/QLGC,isp@2,10000/sd@1,0 2. /dev/rdsk/c2t2d0s0 <SUN2.1G cyl 2733 alt 2 hd 19 sec 80> /io-unit@f,e0200000/sbi@0,0/QLGC,isp@2,10000/sd@2,0 3. /dev/rdsk/c2t3d0s0 <SUN2.1G cyl 2733 alt 2 hd 19 sec 80> /io-unit@f,e0200000/sbi@0,0/QLGC,isp@2,10000/sd@3,0 4. /dev/rdsk/c2t5d0s0 <SUN2.1G cyl 2733 alt 2 hd 19 sec 80> /io-unit@f,e0200000/sbi@0,0/QLGC,isp@2,10000/sd@5,0 Specify disk (enter its number): |
次の例では、SPARC システム上のディスクを表示します。
# format AVAILABLE DISK SELECTIONS: 0. c0t3d0 <SUN2.1G cyl 2733 alt 2 hd 19 sec 80> /iommu@0,10000000/sbus@0,10001000/espdma@5,8400000/esp@5,8800000/sd@3,0 Specify disk (enter its number): |
format の出力は、ディスク 0 (ターゲット 3) が第 1 の SCSI ホストアダプタ (espdma@...) に接続されており、そのホストアダプタは第 1 の SBus デバイス (sbus@0...) に接続されていることを示しています。また、この出力は物理デバイス名と論理デバイス名をディスクの商品名 SUN2.1G に対応しています。
次の例では、x86 システム上のディスクを表示します。
# format Searching for disks...done AVAILABLE DISK SELECTIONS: 0. c0t0d0 <DEFAULT cyl 507 alt 2 hd 64 sec 32> /eisa/dpt@5c88,0/cmdk@0,0 1. c0t3d0 <DEFAULT cyl 1852 alt 2 hd 15 sec 74> /eisa/dpt@5c88,0/cmdk@3,0 Specify disk (enter its number): |
format の出力は、ディスク 0、ターゲット 0 (cmdk@0,0) が最初の DPT ホストアダプタ (dpt@5..) に接続され、このアダプタが EISA デバイス (eisa) に接続されていることを示します。x86 システムに関する format の出力では、ディスクは商品名では表示されません。
format ユーティリティでディスクが認識されなかった場合は、次の表を参照してください。
ディスクの状態 |
参照先 |
---|---|
新しく追加したが、再構成ブートを実行しなかった | |
サードパーティのディスク | |
電源障害など、システムの問題によってラベルが破損した | |
システムに正しく接続されていない |
ディスクのハードウェアマニュアルを参照して、ディスクをシステムに接続する。 |
ディスクはメーカーまたは再販業者によってフォーマットされているので、通常はフォーマットしなくてもドライブをインストールできます。
次の作業の前にディスクをフォーマットしておかなければなりません。
データの書き込み。ただし、ほとんどのディスクはフォーマット済みです。
Solaris インストールプログラムを使用して行うシステムのインストール
フォーマットはディスク上のデータを上書きします。このため、通常はメーカーや再販業者のみがディスクをフォーマットします。ディスクに欠陥があるために問題が再発していると思われる場合は、format ユーティリティを使用して表面解析を実行できますが、データを破壊しないコマンドだけを使用するように注意してください。
スーパーユーザーになります。
# format |
画面に表示されるリストから、チェックしたいディスクの番号を入力します。
Specify disk (enter its number): 0 |
ディスクがフォーマット済みかどうかを調べます。選択したディスクがフォーマット済みであれば、次のメッセージが表示されます。
[disk formatted]
次の例は、ディスク c0t3d0 がフォーマット済みであることを示しています。
# format AVAILABLE DISK SELECTIONS: 0. c0t1d0 <SUN1.05 cyl 2036 alt 2 hd 14 sec 72> /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,800000/sd@1,0 1. c0t3d0 <SUN1.05 cyl 2036 alt 2 hd 14 sec 72> /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,800000/sd@3,0 Specify disk (enter its number): 0 selecting c0t1d0 [disk formatted] |
スーパーユーザーになります。
format ユーティリティを起動します。
# format |
画面に表示されるリストから、フォーマットしたいディスクの番号を入力します。
Specify disk (enter its number): 0 |
システムディスクを選択しないでください。システムディスクをフォーマットすると、オペレーティングシステムや、このディスクに入っているデータが削除されます。
ディスクのフォーマットを開始するには、format> プロンプトで format と入力します。y と入力してコマンドを確認します。
format> format Ready to format. Formatting cannot be interrupted and takes 26 minutes (estimated). Continue? y |
次のメッセージによりフォーマットが正常に行われたことを確認します。
Formatting ... done Verifying media ... pass 0 - pattern = 0xc6dec6de 2035/12/18 pass 1 - pattern = 0x6db6db6d 2035/12/18 total of 0 defective blocks repaired. |
# format Searching for disks...done AVAILABLE DISK SELECTIONS: 0. c0t1d0 <SUN1.05 cyl 2036 alt 2 hd 14 sec 72> /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,800000/sd@1,0 1. c0t3d0 <SUN1.05 cyl 2036 alt 2 hd 14 sec 72> /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,800000/sd@3,0 Specify disk (enter its number):0 Selecting c0t1d0 [disk unformatted] format> format Ready to format. Formatting cannot be interrupted and takes 26 minutes (estimated). Continue? yes Beginning format. The current time is Wed Jun 10 10:24:48 1998 Formatting ... done Verifying media ... pass 0 - pattern = 0xc6dec6de 2035/12/18 pass 1 - pattern = 0x6db6db6d 2035/12/18 total of 0 defective blocks repaired. format> |
format ユーティリティを使用すると、ディスクに適切なディスクスライスがあるかどうかをチェックできます。使用したいスライスがディスクに入っていないことが判明した場合は、format ユーティリティを使用して作成し直し、ディスクにラベルを付けます。ディスクスライスの作成方法については、「SPARC: ディスクスライスとディスクラベルを作成する方法」または 「x86: ディスクスライスとディスクラベルを作成する方法」を参照してください。
format ユーティリティでは、スライスではなくパーティションという用語を使用します。
スーパーユーザーになります。
format ユーティリティを起動します。
# format |
AVAILABLE DISK SELECTIONS という見出しの下に表示されたディスクを選択して、スライス情報を表示したいディスクを指定します。
Specify disk (enter its number):1
format> プロンプトで partition と入力して、パーティションメニューに入ります。
format> partition |
partition> プロンプトで print と入力して、現在のディスクドライブのスライス情報を表示します。
partition> print |
partition> プロンプトで q と入力し、format プロンプトで q と入力して、format> ユーティリティを終了します。
partition> q format> q # |
スライス情報が特定のスライスのタグとサイズにより表示されることを確認します。
画面の出力が、スライスサイズが割り当てられていないことを示している場合は、ディスクにスライスがないものと思われます。
次の例では、ディスク /dev/rdsk/c0t3d0 のスライス情報を表示します。
# format Searching for disks...done Specify disk (enter its number):1 Selecting c0t3d0 format> partition partition> print Current partition table (original): Total disk cylinders available: 1866 + 2 (reserved cylinders) Part Tag Flag Cylinders Size Blocks 0 root wm 0 - 292 80.12MB (293/0/0) 164080 1 swap wu 293 - 410 32.27MB (118/0/0) 66080 2 backup wm 0 - 1865 510.23MB (1866/0/0) 1044960 3 unassigned wm 0 0 (0/0/0) 0 4 unassigned wm 0 0 (0/0/0) 0 5 home wm 411 - 1311 246.37MB (901/0/0) 504560 6 usr wm 1312 - 1718 111.29MB (407/0/0) 227920 7 unassigned wm 1719 - 1865 40.20MB (147/0/0) 82320 partition> q format> q # |
これらの例に表示されるスライス情報についての説明は、第 21 章「ディスク管理の概要」を参照してください。
次の例では、ディスク /dev/rdsk/c0t0d0 のスライス情報を表示します。
# format Searching for disks...done Specify disk (enter its number): 0 selecting c0t0d0 [disk formatted] format> partition partition> print Current partition table (original): Total disk cylinders available: 1479 + 2 (reserved cylinders) Part Tag Flag Cylinders Size Blocks 0 root wm 1 - 400 108.01MB (400/0/0) 221200 1 swap wu 401 - 556 42.12MB (156/0/0) 86268 2 backup wu 0 - 1479 399.63MB (1480/0/0) 818440 3 unassigned wm 0 0 (0/0/0) 0 4 unassigned wm 0 0 (0/0/0) 0 5 unassigned wm 557 - 734 48.06MB (178/0/0) 98434 6 usr wm 735 - 1401 180.10MB (667/0/0) 368851 7 home wm 1402 - 1476 20.25MB (75/0/0) 41475 8 boot wu 0 - 0 0.27MB (1/0/0) 553 9 unassigned wm 0 0 (0/0/0) 0 partition> q format> q |
一般に、ディスクにラベルを付ける操作は、システムのインストール時、または新しいディスクスライスを作成するときに行います。電源障害などの自然災害が原因でディスクラベルが破損した場合は、ディスクラベルを作成し直さなければならないことがあります。
ユーティリティは、ラベルが付いていない SCSI ディスクを自動構成しようとします。ラベルが付いていないディスクを自動構成できる場合は、次のようなメッセージが表示されます。
c1t0d0: configured with capacity of 404.65MB
スーパーユーザーになります。
format ユーティリティを起動します。
# format |
画面に表示されるリストから、ラベルを作成したいディスクの番号を入力します。
Specify disk (enter its number):1 |
ディスクラベルの作成方法を決定します。
ディスクにラベルが付いておらず、正常に自動構成された場合 |
ディスクにラベルが付いており、そのタイプを変更したいか、format でディスクを自動構成できなかった場合 |
---|---|
ディスクラベルを作成したいかどうかを尋ねるプロンプトが表示される。手順 5 に進んでラベルを作成する。 |
ディスクタイプを指定しなければならない。手順 6 と 7 に進んでディスクのタイプを設定し、ラベルを付ける。 |
Label it now? プロンプトで y と入力して、ディスクにラベルを付けます。
Disk not labeled. Label it now? y |
これでディスクラベルが作成されました。手順 9 に進んで format ユーティリティを終了します。
format> プロンプトで type と入力します。
format> type |
Available Drive Types メニューが表示されます。
ディスクタイプの候補のリストからディスクタイプを選択します。
Specify disk type (enter its number)[8]: 8 |
ディスクにラベルを付けます。ディスクにラベルが付いていない場合は、次のメッセージが表示されます。
Disk not labeled. Label it now? y |
それ以外の場合は、次のメッセージが表示されます。
Ready to label disk, continue? y |
format のメインメニューから verify コマンドを使用してディスクラベルを検査します。
format> verify |
format> プロンプトで q と入力して format ユーティリティを終了します。
partition> q format> q # |
次の例では、424M バイトのディスクを自動構成してラベルを付けます。
# format c1t0d0: configured with capacity of 404.65MB AVAILABLE DISK SELECTIONS: 0. c0t3d0 <SUN0424 cyl 1151 alt 2 hd 9 sec 80> /sbus@1,f8000000/esp@0,800000/sd@3,0 1. c1t0d0 <SUN0424 cyl 1151 alt 2 hd 9 sec 80> /sbus@1,f8000000/QLGC,isp@1,10000/sd@0,0 Specify disk (enter its number): 1 Disk not labeled. Label it now? yes format> verify # |
prtvtoc(1M) コマンドを使用して、ディスクラベル情報を検査します。ディスクラベルの説明と prtvtoc コマンドで表示される情報については、第 21 章「ディスク管理の概要」を参照してください。
スーパーユーザーになります。
prtvtoc コマンドを使用してディスクラベル情報を表示します。
# prtvtoc /dev/rdsk/device-name |
device-name |
検査したい raw ディスクデバイス |
次の例は、ディスク /dev/rdsk/c0t0d0s0 のディスクラベル情報を示しています。
# prtvtoc /dev/rdsk/c0t0d0s0* c0t0d0s0 partition map * * Dimensions: * 512 bytes/sector * 36 sectors/track * 9 tracks/cylinder * 324 sectors/cylinder * 1272 cylinders * 1254 accessible cylinders * * Flags: * 1: unmountable * 10: read-only * * First Sector Last * Partition Tag Flags Sector Count Sector Mount Directory 0 2 00 0 37260 37259 / 1 3 01 37260 77760 115019 2 5 00 0 406296 406295 6 4 00 115020 283824 398843 /usr 7 6 00 398844 7452 406295 /export/home # |
電源障害やシステム障害が原因で、ディスクが認識されなくなることがあります。このような場合に、かならずしもスライス情報やディスクのデータを作成し直したり、復元しなければならないとは限りません。
破損したディスクラベルを復元する作業の最初の手順は、正しいジオメトリとディスクタイプ情報を使用してディスクにラベルを付けることです。この操作は、通常のディスクラベル作成方法を使用して実行できます。つまり、自動構成するか、またはディスクタイプを手作業で指定します。
format でディスクタイプが認識されたら、次の手順はバックアップラベルを検索してディスクにラベルを付けることです。バックアップラベルを使用してディスクにラベルを付けると、ディスクタイプとジオメトリだけでなく、正しいパーティション情報を使用してディスクラベルが作成されます。
システムをシングルユーザーモードにします。必要であれば、シングルユーザーモードでローカル CD-ROM またはネットワークからシステムをブートして、ディスクにアクセスします。
システムをブートする方法については、第 8 章「SPARC: システムのブートの手順」または第 9 章「x86: システムのブートの手順」を参照してください。
format ユーティリティを使用してディスクのラベルを作成し直します。
# format |
この時点で、format はラベルが付いていない SCSI ディスクを自動構成しようとします。ラベルが付いておらず破損したディスクを自動構成できない場合は、次のメッセージが表示されます。
cwtxdy: configured with capacity of xyzMB
次に、システム上のディスクのリストが表示されます。
画面に表示されたリストから、復元したいディスクの番号を入力します。
Specify disk (enter its number): 1 |
ディスクラベルの作成方法を決定します。
ディスクが正常に自動構成された場合 |
ディスクが正常に自動構成されなかった場合 |
---|---|
手順 5 と 6 を実行してから、手順 12 に進む。 |
手順 7 から 11 までを実行してから手順 12 に進む。 |
verify コマンドを使用してバックアップラベルを検索します。
format> verify Warning: Could not read primary label. Warning: Check the current partitioning and 'label' the disk or use the 'backup' command. Backup label contents: Volume name = < > ascii name = <SUN0424 cyl 1151 alt 2 hd 9 sec 80> pcyl = 2500 ncyl = 1151 acyl = 2 nhead = 9 nsect = 80 Part Tag Flag Cylinders Size Blocks 0 root wm 0 - 91 32.34MB (92/0/0) 66240 1 swap wu 92 - 183 32.34MB (92/0/0) 66240 2 backup wu 0 - 1150 404.65MB (1151/0/0) 828720 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 184 - 1150 339.96MB (967/0/0) 696240 7 unassigned wm 0 0 (0/0/0) 0 |
format でバックアップラベルが見つかり、バックアップラベルの内容が適切に表示された場合は、backup コマンドを実行し、バックアップラベルを使用してディスクにラベルをつけます。
format> backup Disk has a primary label, still continue? y Searching for backup labels...found. Restoring primary label |
ディスクラベルが復元されました。手順 12 へ進みます。
format でディスクを自動構成できなかった場合は、type コマンドを使用してディスクタイプを指定します。
format> type |
Available Devices Type メニューが表示されます。
0 を選択してディスクを自動構成するか、またはディスクタイプの候補のリストからディスクタイプを選択します。
Specify disk type (enter its number)[8]: 8 |
ディスクが正常に自動構成された場合は、ディスクラベルを作成するかどうか尋ねるプロンプトが表示されたときに no と応答します。
Disk not labeled. Label it now? no |
verify コマンドを使用してバックアップラベルを検索します。
format> verify Warning: Could not read primary label. Warning: Check the current partitioning and 'label' the disk or use the 'backup' command. . . . |
format でバックアップラベルが見つかり、その内容が適切な場合は、backup コマンドを実行し、バックアップラベルを使用してディスクにラベルを付けます。
format> backup Disk has a primary label, still continue? y Searching for backup labels...found. Restoring primary label |
ディスクラベルが復元されました。
q と入力して format ユーティリティを終了します。
format> q |
fsck コマンドを使用して、復元されたディスク上のファイルシステムを確認します。
fsck コマンドの使用方法については、第 31 章「ファイルシステムの整合性チェック」を参照してください。
Solaris 環境では、サードパーティの多数のディスクがサポートされます。ただし、デバイスドライバ、format.dat、またはその両方を用意しなければならない場合があります。
サードパーティのディスクが標準の SunOS オペレーティングシステム互換デバイスドライバで機能するように設計されている場合は、適切な format.dat エントリを作成するだけで、ディスクは format ユーティリティに認識されるはずです。それ以外の場合は、そのディスクをサポートするためにサードパーティのデバイスドライバをロードする必要があります。
Sun の format ユーティリティがサードパーティのどのディスクドライバでも正常に機能するとは限りません。ディスクドライバに Solaris の format ユーティリティとの互換性がない場合は、ディスクドライブのベンダーが独自のフォーマットプログラムを提供しているはずです。
ここでは、ソフトウェアサポートのいずれかが不足している場合に必要な作業について説明します。一般に、format ユーティリティを起動し、ディスクタイプが認識されないなどという場合に、不足しているソフトウェアサポートがあることがわかります。
この節の説明にしたがって不足しているソフトウェアを用意してから、第 23 章「SPARC: ディスク追加の手順」または 第 24 章「x86: ディスク追加の手順」で説明されている、システムディスクまたは二次ディスクを構成する手順を参照してください。
認識されないディスクは、そのディスクのジオメトリと運用パラメータに関する正確な情報がなければフォーマットできません。この情報は、/etc/format.dat ファイル内で指定します。
SCSI-2 ドライブには format.dat のエントリは不要です。Solaris 2.3 からは、再構成ブート時にドライブの電源が入っていれば、format ユーティリティは SCSI-2 ドライブを自動的に構成します。SCSI ドライブを自動的に構成する手順については、「SCSI ドライブを自動構成する方法」を参照してください。
ディスクが認識されない場合は、テキストエディタを使用して format.dat にディスクのエントリを作成します。作業を始める前に、ディスクとそのコントローラに関連するすべての技術仕様を収集する必要があります。この情報はディスクといっしょに提供されているはずです。提供されない場合は、ディスクメーカーまたは購入先に問い合わせてください。/etc/format.dat ファイルにエントリを追加する方法については、第 25 章「format ユーティリティの参照情報」を参照してください。
スーパーユーザーになります。
/etc/format.dat ファイルのコピーを作成します。
# cp /etc/format.dat /etc/format.dat.gen |
第 25 章「format ユーティリティの参照情報」で説明する format.dat 情報を使用して、/etc/format.dat ファイルに、サードパーティのディスクのエントリを入力します。
ディスクのハードウェア製品マニュアルを参照して、必要な情報を収集してください。
Solaris 2.3 およびその互換バージョンでは、/etc/format.dat ファイルに特定のドライブタイプが含まれていない場合でも、format ユーティリティは SCSI ディスクドライブを自動的に構成します。この機能により、ディスクデバイスモード検知に関する SCSI-2 仕様に準拠しているディスクドライブで、フォーマット、スライスへの分割、ラベルの作成が行えます。
次の手順にしたがって、自動構成により SCSI ドライブを構成します。
システムをシャットダウンする。
SCSI ディスクドライブをシステムに接続する。
ディスクドライブの電源をオンにする。
再構成用ブートを実行する。
format ユーティリティを使用して SCSI ディスクドライブを自動構成する。
再構成ブートを実行した後に、format ユーティリティを呼び出すと、format はディスクを構成しようとします。成功すると、ディスクが構成されたことを示すメッセージを表示します。SCSI ディスクドライブを自動構成する手順については、「SCSI ドライブを自動構成する方法」を参照してください。
次の表は、format がパーティションテーブルの作成に使用する規則を示しています。
表 22-2 SCSI ディスクスライスの規則
ディスクサイズ |
ルートファイルシステム |
スワップスライス |
---|---|---|
0 〜 180M バイト |
16M バイト |
16M バイト |
180 〜 280M バイト |
16M バイト |
32M バイト |
280 〜 380M バイト |
24M バイト |
32M バイト |
380 〜 600M バイト |
32M バイト |
32M バイト |
600M 〜 1.0G バイト |
32M バイト |
64M バイト |
1.0 〜 2.0G バイト |
64M バイト |
128M バイト |
2.0G バイト 〜 |
128M バイト |
128M バイト |
いずれの場合も、スライス 6 (/usr ファイルシステム) にディスク上の残りの領域が割り当てられます。
1.3G バイトの SCSI ディスクドライブに関して format で生成されるパーティションテーブルを示しています。
Part Tag Flag Cylinders Size Blocks 0 root wm 0 - 96 64.41MB (97/0/0) 1 swap wu 97 - 289 128.16MB (193/0/0) 2 backup wu 0 - 1964 1.27GB (1965/0/0) 6 usr wm 290 - 1964 1.09GB (1675/0/0) |
SCSI 自動構成機能の使用方法についての詳細は、第 25 章「format ユーティリティの参照情報」を参照してください。
スーパーユーザーになります。
システムのブート時に読み込まれる /reconfigure ファイルを作成します。
# touch /reconfigure |
システムをシャットダウンします。
# shutdown -i0 -g30 -y |
-i0 |
システムを init 状態 0 (電源切断) にする。 |
-g30 |
ログインしているユーザーに、30 秒後にシステムのシャットダウンを開始することを通知する。 |
-y |
ユーザーの介入なしでコマンドを実行するように指定する。 |
運用環境がシャットダウンされると、ok または > プロンプトが表示されます。
システムとすべての外部周辺デバイスの電源を切ります。
追加しようとするディスクに、システム上の他のデバイスとは異なるターゲット番号が設定されているかどうかを確認します。
通常は、この操作のためにディスクの裏側に小型のスイッチが付いています。
ディスクがシステムに正しく接続されているかどうかをチェックします。
インストールについての詳細は、ディスクのハードウェアインストールガイドを参照してください。
すべての外部周辺デバイスの電源を入れます。
システムの電源を入れます。
システムがブートされ、ログインプロンプトが表示されます。
スーパーユーザーとしてログインし、format ユーティリティを呼び出して、自動構成するディスクを選択します。
# format Searching for disks...done c1t0d0: configured with capacity of 404.65MB AVAILABLE DISK SELECTIONS: 0. c0t3d0 <SUN0424 cyl 1151 alt 2 hd 9 sec 80> /sbus@1,f8000000/esp@0,800000/sd@3,0 1. c1t0d0 <SUN0424 cyl 1151 alt 2 hd 9 sec 80> /sbus@1,f8000000/QLGC,isp@1,10000/sd@0,0 Specify disk (enter its number): 1 |
プロンプトで yes と入力してディスクにラベルを付けます。
y と入力すると、自動構成機能によってディスクラベルが生成され、ディスクに書き込まれます。
Disk not labeled. Label it now? y |
verify コマンドを使用してディスクラベルを確認します。
format> verify |
format> q |
システム上のディスクに欠陥セクターが存在する場合は、次の手順にしたがって修復できます。欠陥セクターを発見するのは次のような場合です。
ディスク上で表面解析を実行した場合
format ユーティリティの解析機能については、「analyze メニュー」を参照してください。
システムの実行中にレポートされる欠陥領域は正確ではない場合があります。システムは一度に多数のセクターでディスク処理を実行するので、通常は、どのセクターが所定のエラーの原因かを正確に突き止めるのは困難です。正確なセクターを検出するには、「表面解析を使用して欠陥セクターを調べる方法」を参照してください。
システムの実行中に、ディスクドライバからディスクの特定部分に関して多数のエラーメッセージが表示される場合
ディスクエラーに関連するメッセージは次のように出力されます。
WARNING: /io-unit@f,e0200000/sbi@0,0/QLGC,isp@1,10000/sd@3,0 (sd33): Error for command 'read' Error Level: Retryable Requested Block 126, Error Block: 179 Sense Key: Media Error Vendor 'SEAGATE': ASC = 0x11 (unrecovered read error), ASCQ = 0x0, FRU = 0x0 |
上記のコンソールメッセージは、ブロック 179 が不良であり、format ユーティリティの repair コマンドを使用して配置し直すか、または修復機能を使用可能にして表面解析を実行する必要があることを示しています。
スーパーユーザーになります。
欠陥セクターの存在するスライス内のファイルシステムをマウント解除します。
詳細は、mount(1M) のマニュアルページを参照してください。
# umount /dev/dsk/device-name |
format と入力して format ユーティリティを起動します。
# format |
調べるディスクを選択します。
Specify disk (enter its number):1 selecting c0t2d0: [disk formatted] Warning: Current Disk has mounted partitions. |
format> プロンプトで analyze と入力して、analyze メニューに入ります。
format> analyze |
analyze> プロンプトで setup と入力して検索手順に使用する解析パラメータを設定します。次のパラメータを使用してください。
analyze> setup Analyze entire disk [no]? n Enter starting block number [0, 0/0/0]: 12330 Enter ending block number [584159, 1216/9/47]: 12360 Loop continuously [no]? y Repair defective blocks [yes]? n Stop after first error [no]? n Use random bit patterns [no]? n Enter number of blocks per transfer [31, 0/0/31]: 1 Verify media after formatting [yes]? y Enable extended messages [no]? n Restore defect list [yes]? y Create defect label [yes]? y |
read コマンドを使用して欠陥を見つけます。
analyze> read Ready to analyze (won't harm SunOS). This takes a long time, but is interruptible with Control-C. Continue? y pass 0 25/7/24 pass 1 Block 12354 (18/4/18), Corrected media error (hard data ecc) 25/7/24 ^C Total of 1 defective blocks repaired. |
スーパーユーザーになります。
format ユーティリティに入り、欠陥セクターの存在するディスクを選択します。
# format Searching for disks...done AVAILABLE DISK SELECTIONS: 0. c0t2d0 <SUN1.05 cyl 2036 alt 2 hd 14 sec 72> /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,800000/sd@2,0 1. c0t3d0 <SUN0535 cyl 1866 alt 2 hd 7 sec 80> /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,800000/sd@3,0 Specify disk (enter its number): 1 selecting c0t3d0 [disk formatted] format> |
format> プロンプトで repair コマンドを入力します。
format> repair |
欠陥ブロック番号を入力します。
Enter absolute block number of defect: 12354 Ready to repair defect, continue? y Repairing block 12354 (18/4/18)...ok. format> |
format を使った欠陥セクターの識別方法がわからない場合は、「表面解析を使用して欠陥セクターを調べる方法」を参照してください。
次のヒントに従って、ディスクの管理効率を高めることができます。
format -M と入力して、SCSI デバイスに対してのみ有効な拡張メッセージと診断メッセージを出力するようにします。
次の例では、Inquiry: の下の一連の数字は、その右側に表示されている inquiry データの 16 進値を表わします。
# format -M Searching for disks...done AVAILABLE DISK SELECTIONS: 0. c0t3d0 <SUN0535 cyl 1866 alt 2 hd 7 sec 80> /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,800000/sd@3,0 Specify disk (enter its number): 0 selecting c0t3d0 [disk formatted] format> inquiry Inquiry: 00 00 02 02 27 00 00 12 43 4f 4e 4e 45 52 20 20 ....'...CONNER 43 50 33 30 35 34 30 20 20 53 55 4e 30 35 33 35 CP30540 SUN0535 42 30 42 42 39 33 30 38 46 39 30 B0BB9308F90 Vendor: CONNER Product: CP30540 SUN0535 Revision: B0BB format> |
prtvtoc コマンドと fmthard コマンドを使用して、同じディスクジオメトリを持つ複数のディスクにラベルを付けます。
この for ループをスクリプト内で使用して、1 台のディスクからディスクラベルをコピーし、複数のディスク上で複製します。
# for i in x y z > do > prtvtoc /dev/rdsk/cwtxdysz | fmthard -s - /dev/rdsk/cwt${i}d0s2 > done |
この例では、ディスクラベルがディスク c2t0d0s0 から他の 4 台のディスクにコピーされます。
# for i in 1 2 3 5 > do > prtvtoc /dev/rdsk/c2t0d0s0 | fmthard -s - /dev/rdsk/c2t${i}d0s2 > done fmthard: New volume table of contents now in place. fmthard: New volume table of contents now in place. fmthard: New volume table of contents now in place. fmthard: New volume table of contents now in place. # |