UFS ファイルシステムをディスク上に作成する前に、そのディスクをフォーマットし、スライスに分割しなければなりません。「ディスクスライス」とは物理的なディスクのサブセットで、連続するブロックからなる 1 つの範囲のことです。スライスはスワップ空間などの raw デバイスとして使用することも、ディスクベースのファイルシステムとして使用することもできます。ディスクのフォーマットとスライスへの分割の方法については、第 10 章ディスクの管理 (概要)を参照してください。
Solaris ボリュームマネージャーなどのディスクおよびストレージ管理製品では、より洗練された「ボリューム」を作成できます。ボリュームは、1 つのスライスまたは 1 つのディスクの境界を超えて、拡張可能です。ボリュームの使用方法については、『Solaris ボリュームマネージャの管理』を参照してください。
Solaris のデバイス名は、用語「スライス (デバイス名内の文字は s)」を使用して、スライス番号を参照します。スライスは「パーティション」とも呼ばれます。
UFS ファイルシステムは、インストール手順の一部として Solaris オペレーティングシステムによって自動的に作成されるので、UFS ファイルシステムを作成しなければならないことはほとんどありません。次の場合には、UFS ファイルシステムを作成する (または作成し直す) 必要があります。
ディスクを追加または交換する場合
ディスクの既存のパーティション構造を変更する場合
ファイルシステムを完全に復元する場合
newfs コマンドを使用するのが、UFS ファイルシステムを作成する標準的な方法です。newfs コマンドは mkfs コマンドの使いやすいフロントエンドであり、実際に新しいファイルシステムを作成します。newfs コマンドは、パラメータのデフォルト値 (1 シリンダ当たりのトラック数や 1 トラック当たりのセクター数など) を、新しいファイルシステムが作成されるディスクのラベルから読み取ります。選択したオプションは、mkfs コマンドに渡され、ファイルシステムが作成されます。
newfs コマンドが使用するデフォルトのパラメータについては、newfs(1M) のマニュアルページを参照してください。
次の前提条件を満たしているかどうかを確認します。
ディスクがフォーマットされ、スライスに分割されている。
既存の UFS ファイルシステムを作成し直す場合は、そのマウントを解除する。
ファイルシステムを格納するスライスのデバイス名がわかっている。
ディスクおよびディスクスライス番号の検索方法については、第 11 章ディスクの管理 (手順)を参照してください。
ディスクのフォーマットとスライスへの分割方法については、第 10 章ディスクの管理 (概要)を参照してください。
スーパーユーザーになるか、同等の役割を引き受けます。
ファイルシステムを作成します。
# newfs [-N] [-b size] [-i bytes] /dev/rdsk/device-name |
newfs コマンドが mkfs コマンドに渡すパラメータを表示します。ファイルシステムは実際に作成されません。newfs コマンドをテス トするのに好ましい方法です。
ファイルシステムのブロックサイズを 1 ブロックあたり 4096 または 8192 バイトで指定します。デフォルトは 8192 バイトです。
i ノード 1 個当たりのバイト数を指定します。デフォルトはディスクのサイズによって異なります。詳細は、newfs(1M) のマニュアルページを参照してください。
新しいファイルシステムを作成するディスクデバイス名を指定します。
システムから、確認を促すプロンプトが表示されます。
この手順を実行する前に、スライスのデバイス名が正しく指定されていることを確認してください。間違ったスライスを指定すると、その内容は新しいファイルシステムの作成時に消去されます。そして、システムがパニックを起こす原因となる可能性があります。
UFS ファイルシステムが作成されていることを確認するには、新しいファイルシステムを検査します。
# fsck /dev/rdsk/device-name |
device-name 引数は、新しいファイルシステムを格納するディスクデバイスの名前を指定します。
fsck コマンドは、新しいファイルシステムの整合性を検査して、問題があれば通知し、問題を修復する前にプロンプトを表示します。fsck コマンドの詳細は、第 21 章UFS ファイルシステムの整合性検査 (手順)または fsck(1m) のマニュアルページを参照してください。
次の例は、/dev/rdsk/c0t1d0s7 上に UFS ファイルシステムを作成する方法を示しています。
# newfs /dev/rdsk/c0t1d0s7 /dev/rdsk/c0t1d0s7: 725760 sectors in 720 cylinders of 14 tracks, 72 sectors 354.4MB in 45 cyl groups (16 c/g, 7.88MB/g, 3776 i/g) super-block backups (for fsck -F ufs -o b=#) at: 32, 16240, 32448, 48656, 64864, 81072, 97280, 113488, 129696, 145904, 162112, 178320, 194528, 210736, 226944, 243152, 258080, 274288, 290496, 306704, 322912, 339120, 355328, 371536, 387744, 403952, 420160, 436368, 452576, 468784, 484992, 501200, 516128, 532336, 548544, 564752, 580960, 597168, 613376, 629584, 645792, 662000, 678208, 694416, 710624, fsck /dev/rdsk/c0t1d0s7 # |
UFS ファイルシステムをマウントし、使用可能にする場合は、第 18 章ファイルシステムのマウントとマウント解除 (手順)に進みます。
マルチテラバイトの UFS ファイルシステムは、Solaris ボリュームマネージャーまたは VxVM ボリューム、あるいは 1T バイトを超える物理ディスクとして提供されたマルチテラバイトの LUN が利用できることを前提にサポートされています。
マルチテラバイトの UFS ファイルシステムを作成する前に、次のいずれかを行う必要があります。
format ユーティリティーまたは Solaris インストールユーティリティーを使ってマルチテラバイトのディスクパーティションを作成しておきます
Solaris ボリュームマネージャーを使ってマルチテラバイトのボリュームを設定しておきます
マルチテラバイト UFS ファイルシステムの詳細は、「64 ビット: マルチテラバイトの UFS ファイルシステムのサポート」を参照してください。
スーパーユーザーになります。
論理ボリューム上にマルチテラバイトの UFS ファイルシステムを作成します。
たとえば、次のコマンドを実行すると、1.8T バイトボリュームの UFS ファイルシステムが作成されます。
# newfs /dev/md/rdsk/d99 newfs: construct a new file system /dev/md/rdsk/d99: (y/n)? y /dev/md/rdsk/d99: 3859402752 sectors in 628158 cylinders of 48 tracks, 128 sectors 1884474.0MB in 4393 cyl groups (143 c/g, 429.00MB/g, 448 i/g) super-block backups (for fsck -F ufs -o b=#) at: 32, 878752, 1757472, 2636192, 3514912, 4393632, 5272352, 6151072, 702... Initializing cylinder groups: ........................................................................ super-block backups for last 10 cylinder groups at: 3850872736, 3851751456, 3852630176, 3853508896, 3854387616, 3855266336, 3856145056, 3857023776, 3857902496, 3858781216, # |
新しく作成したファイルシステムの整合性を検査します。
次に例を示します。
# fsck /dev/md/rdsk/d99 ** /dev/md/rdsk/d99 ** Last Mounted on ** Phase 1 - Check Blocks and Sizes ** Phase 2 - Check Pathnames ** Phase 3 - Check Connectivity ** Phase 4 - Check Reference Counts ** Phase 5 - Check Cyl groups 2 files, 2 used, 241173122 free (0 frags, 241173122 blocks, 0.0% fragmentation) # |
新しく作成したファイルシステムをマウントして検査します。
次に例を示します。
# mount /dev/md/dsk/d99 /bigdir # df -h /bigdir Filesystem size used avail capacity Mounted on /dev/md/dsk/d99 1.8T 64M 1.8T 1% /bigdir |
マルチテラバイトの UFS ファイルシステムを作成したあとは、growfs コマンドを使ってファイルシステムを拡張できます。たとえば、前の手順でボリュームに作成したファイルシステムを使用すると、別のディスクをこのボリュームに追加できます。その後で、ファイルシステムを拡張します。
スーパーユーザーになります。
別のディスクをボリュームに追加します。
次に例を示します。
# metattach d99 c4t5d0s4 d99: component is attached # metastat d99: Concat/Stripe Size: 5145882624 blocks (2.4 TB) Stripe 0: Device Start Block Dbase Reloc c0t1d0s4 36864 Yes Yes Stripe 1: Device Start Block Dbase Reloc c3t7d0s4 0 No Yes Stripe 2: Device Start Block Dbase Reloc c1t1d0s4 0 No Yes Stripe 3: Device Start Block Dbase Reloc c4t5d0s4 0 No Yes |
ファイルシステムを拡張します。
次に例を示します。
# growfs -v /dev/md/rdsk/d99 /usr/lib/fs/ufs/mkfs -G /dev/md/rdsk/d99 5145882624 /dev/md/rdsk/d99: 5145882624 sectors in 837546 cylinders of 48 tracks, 128 sectors 2512638.0MB in 5857 cyl groups (143 c/g, 429.00MB/g, 448 i/g) super-block backups (for fsck -F ufs -o b=#) at: 32, 878752, 1757472, 2636192, 3514912, 4393632, 5272352, 6151072, 702... Initializing cylinder groups: ......................................................................... super-block backups for last 10 cylinder groups at: 5137130400, 5138009120, 5138887840, 5139766560, 5140645280, 5141524000, 5142402720, 5143281440, 5144160160, 5145038880, # |
拡張したファイルシステムをマウントして検査します。
次に例を示します。
# mount /dev/md/dsk/d99 /bigdir # df -h /bigdir Filesystem size used avail capacity Mounted on /dev/md/dsk/d99 2.4T 64M 2.4T 1% /bigdir |
UFS ファイルシステムを 1T バイトを超えるサイズに拡張するには、次の手順を実行します。この手順は、newfs -T オプションを使って UFS ファイルシステムを作成したことを前提としています。
スーパーユーザーになります。
現在のディスクまたはボリュームのサイズを特定します。
たとえば、次のボリュームは 800G バイトです。
# metastat d98 d98: Concat/Stripe Size: 1677754368 blocks (800 GB) Stripe 0: Device Start Block Dbase Reloc c0t1d0s4 0 No Yes Stripe 1: Device Start Block Dbase Reloc c3t7d0s4 0 No Yes |
このボリュームを 1T バイトよりも大きくします。
次に例を示します。
# metattach d98 c1t1d0s4 d98: component is attached # metastat d98 d98: Concat/Stripe Size: 2516631552 blocks (1.2 TB) Stripe 0: Device Start Block Dbase Reloc c0t1d0s4 0 No Yes Stripe 1: Device Start Block Dbase Reloc c3t7d0s4 0 No Yes Stripe 2: Device Start Block Dbase Reloc c1t1d0s4 0 No Yes |
ディスクまたはボリュームの UFS ファイルシステムを 1T バイトよりも大きくします。
次に例を示します。
growfs -v /dev/md/rdsk/d98 /usr/lib/fs/ufs/mkfs -G /dev/md/rdsk/d98 2516631552 /dev/md/rdsk/d98: 2516631552 sectors in 68268 cylinders of 144 tracks, 256 sectors 1228824.0MB in 2731 cyl groups (25 c/g, 450.00MB/g, 448 i/g) super-block backups (for fsck -F ufs -o b=#) at: 32, 921888, 1843744, 2765600, 3687456, 4609312, 5531168, 6453024, 737... 8296736, Initializing cylinder groups: ...................................................... super-block backups for last 10 cylinder groups at: 2507714848, 2508636704, 2509558560, 2510480416, 2511402272, 2512324128, 2513245984, 2514167840, 2515089696, 2516011552, |
拡張したファイルシステムをマウントして検査します。
次に例を示します。
# mount /dev/md/dsk/d98 /datadir # df -h /datadir Filesystem size used avail capacity Mounted on /dev/md/dsk/d98 1.2T 64M 1.2T 1% /datadir |
マルチテラバイトの UFS ファイルシステムに関する問題の障害追跡には、次のエラーメッセージと解決法を参考にしてください。
mount: /dev/rdsk/c0t0d0s0 is not this fstype. |
1T バイトを超える UFS ファイルシステムを、この機能をサポートしていない Solaris リリースが動作するシステムにマウントしようとしました。
1T バイトを超える UFS ファイルシステムは、現在の Solaris リリースが動作するシステムにマウントしてください。
"File system was not set up with the multi-terabyte format." "Its size cannot be increased to a terabyte or more." |
newfs -T コマンドを使わずに作成したファイルシステムを拡張しようとしました。
1T バイトより大きくするファイルシステムのデータをバックアップします。
newfs コマンドを使用して、ファイルシステムをマルチテラバイトファイルシステムに再作成します。
新しく作成したファイルシステムにバックアップされていたデータを復元します。