6    UNIX ファイル・システム (UFS) の管理

この章では,ファイル・システムの概要を説明するとともに,ファイル・システムに関連する基本的なシステム管理作業について説明します。 さまざまなファイル・システムがサポートされていますが,アプリケーションおよび UNIX オペレーティング・システムの構成要素で使用される主なファイル・システムは,AdvFS (Advanced File System) と UNIX ファイル・システム (UFS) です。 出荷時にオペレーティング・システムがインストール済みのシステムでは,省略時のファイル・システムとして AdvFS が構成されています。 AdvFS の管理についての詳細は,『AdvFS 管理ガイド』 を参照してください。

この章では,各ファイル・システムに関して,次のようなシステム管理作業について説明します。

この他にも,システム管理作業およびファイル・システムに関する情報源があります。 この章では,これらの情報源について必要に応じて説明します。

6.1    ファイル・システムの概要

ユーザがオペレーティング・システムをインストールする場合には,1 つまたは複数の UFS ファイル・システムを作成することができます。 出荷時に AdvFS が構成されているシステムでも,UFS ファイル・システムを作成することができます。 両方のファイル・システムを,システム上で同時に使用することができます。 システム・ディスクの場合や,AdvFS の拡張機能を必要としない場合には,多くの管理者は使い慣れている UFS ファイル・システムを使用します。

オペレーティング・システムは,以下のファイル・システムを含む,さまざまなファイル・システムの最新のバージョンをサポートしています。

また,次のマニュアルも参照してください。

この節の後半および以降の節では,ファイル・システムの作成とその管理での重要な概念について説明します。 この情報は,基本的なファイル・システムの作成とその管理に必要な事項ではありませんが,高度な作業やトラブルシューティングを行う場合に役立ちます。

以降の項で詳細を説明する項目について,概要を次に示します。

ディレクトリ階層

ファイル・システムは,ローカルにマウントされているかリモートでマウントされているかにかかわらず,システムやクラスタのディレクトリ階層全体の一部です。 ファイル・システムは,基本システム階層にディレクトリ階層を追加するたびにルート・ファイル・システム (/) から成長し,分岐するツリーであると考えることができます。 /usr/usrs/projects などの UFS ファイル・システムを作成する場合は,既存の /usr/usrs ブランチの下に,新しいブランチとして追加します。

ディスク・パーティション

どのシステムでも,ファイル・システムを格納するための一般的な記憶域はハード・ディスクです。 これらのデバイスの管理については,『ハードウェア管理ガイド』で説明しています。 1 つのディスクは,論理パーティションに分割されます。 論理パーティションはディスク全体 (パーティション c) とすることも,パーティション ah のようにディスクの一部分とすることもできます。 ディスクのサイズによりパーティションのサイズは異なり,そのサイズは通常 M バイト (MB) で示されます。 最初にファイル・システムを作成する場合は,ディスク・パーティションにファイル・システムを作成し,限られたサイズ (ディスク・スペース) を割り当てます。 UFS ファイル・システムのサイズを大きくするには,より大きなパーティションまたはディスクにそのファイル・システムを移動する必要があります。

ファイル・システムの構造

ファイル・システムには,物理メディア上のデータのレイアウトを示す,ディスク上のデータ構造があります。 ファイル・システムのトラブルシューティングまたはチューニングなどの高度な作業を行う場合には,この構造を理解していなければなりません。 大半の一般的な作業では,この情報を細かい点まで理解していなくても構いません。 参照情報については,以降の項で説明します。

ディレクトリおよびファイルのタイプ

さまざまなディレクトリおよびファイルのタイプが,一般的なコマンドの出力に表示されます。 シンボリック・リンクやソケットなどのファイル・タイプを識別できるように,参照情報が用意されています。 詳細については,次のリファレンス・ページを参照してください。

通常ファイル

file(1)

ディレクトリ

ls(1) および dir(4)

デバイス特殊ファイル

ハードウェア管理ガイド

ソケット

socket(2),『ネットワーク管理ガイド:接続編』,および 『ネットワーク・プログラミング・ガイド

パイプ

pipe(2)

シンボリック・リンク

link(1) および ln(1)

6.1.1    ファイル・システムのディレクトリ階層

ファイル・システムの位置は,ルート (/) ディレクトリから始まる UNIX ディレクトリ階層を基準にしています。 作成したファイル・システムは,ディレクトリ階層のマウント・ポイントにマウントされたときに使用可能 (有効) になります。 たとえば,オペレーティング・システムのインストール中に,usr ファイル・システムを (UFS として) 作成したとします。 このファイル・システムは,ルート (/) に自動的にマウントされ,パス名はこの階層内の /usr となります。

システムの標準ディレクトリ階層は,効率的に構成されています。 ディレクトリ階層により,機能および目的別にファイルが分類されます。 ファイル・システムの効果的な使用方法の一例としては,.cshrc.profile または .login などのユーザ設定ファイルで指定された通常の検索パスにあるディレクトリにコマンド・ファイルを置くことがあります。 ディレクトリの中には,実際にはシンボリック・リンクされているものもあります。 X11 ウィンドウ・システムの階層を含む,オペレーティング・システムのディレクトリ階層についての詳細は,リファレンス・ページの hier(5) を参照してください。

ファイル・システムは,マウントすることにより使用可能になります。 システムのルート・ディレクトリ下のファイル・システム階層にファイル・システムを接続 (マウント) するには,mount コマンドを使用します。 ファイル・システムの接続解除 (アンマウント) には,umount コマンドを使用します。 ファイル・システムをマウントする場合,ファイル・システムを接続する位置 (システムのルート・ディレクトリ下のマウント・ポイント) を指定します。 ファイル・システムのマウントおよびアンマウントについての詳細は, mount(8) を参照してください。

マウントされたファイル・システムのルート・ディレクトリは,そのマウント・ポイントでもあります。 システムは,ルート・ディレクトリをシステム初期化ファイルのソースとして使用するため,システムにはルート・ディレクトリは 1 つしか存在しません。 この結果,オペレーティング・システムのローカル・ファイル・システムはすべて,システムのルート・ディレクトリの下にマウントされます。

6.1.2    ディスク・パーティション

ディスクは,セクタと呼ばれる物理的な記憶ユニットから構成されています。 各セクタは通常 512 バイトです。 セクタは論理ブロック番号 (LBN) によってアドレス指定されます。 LBN は,アドレス指定によるユーザ・アクセスが可能なデータ領域の基本単位です。 最小の LBN は 0 で,最大の LBN は,ユーザ・アクセス可能領域の LBN 数より 1 つ少ない値です。

各セクタはグループ化され,最大 8 個のディスク・パーティションを形成します。 ただし,パーティションの数とサイズはディスクによって異なります。 /etc/disktab ファイルには,システムでサポートされるディスクおよび省略時のパーティション・サイズのリストが含まれています。 詳しい説明は, disktab(4) を参照してください。

ディスク・パーティションはディスクの論理的な区画で,これにより,ファイルをさまざまなサイズの別々の領域に書き込むことが可能になります。 パーティションは,ファイル・システムと呼ばれる構造でデータを保管し,ページングおよびスワッピング等のシステム操作で使用することができます。 ファイル・システムは, hier(5) で説明されているようなディレクトリおよびファイルの階層構造を持っています。

ディスク・パーティションにはディスク・タイプごとに省略時のサイズがあり,このサイズは disklabel コマンドまたは diskconfig グラフィカル・ユーザ・インタフェースを使用して変更することができます。 各パーティションには,a から h までの名前を割り当てることができます。 1 つのパーティションに割り当てられたスペースが別のパーティションと重なることは可能ですが,省略時のパーティションが重なり合うことはありません。 また,適切に使用されているディスクでは,相互に重なり合うパーティションにはファイル・システムを置くことはありません。

では,モデル RZ1DF-CB ディスクの省略時のパーティションの例を,次のコマンドを使用して示します。

# disklabel -r /dev/rdisk/dsk0a

この出力例では,ディスク・テーブルの部分だけを示します。 また, rz(7) に示されている RZ1DF-CB ディスクと HSZ RAID ディスクの例も,次にリストします。

例 6-1:  省略時のパーティション

(RZ1DF-CB Disk)
 
8 partitions:
#          size     offset    fstype   [fsize bsize   cpg] # NOTE: values not exact
  a:     262144          0    4.2BSD     1024  8192    16       # (Cyl.    0 - 78*)
  b:    1048576     262144      swap                            # (Cyl.   78*- 390*)
  c:   17773524          0    unused        0     0             # (Cyl.    0 - 5289*)
  d:    1048576    1310720      swap                            # (Cyl.  390*- 702*)
  e:    9664482    2359296     AdvFS                            # (Cyl.  702*- 3578*)
  f:    5749746   12023778    unused        0     0             # (Cyl. 3578*- 5289*)
  g:    1433600     524288    unused        0     0             # (Cyl.  156*- 582*)
  h:   15815636    1957888    unused        0     0             # (Cyl.  582*- 5289*)
 
HSZ10, HSZ40, HSZ50, HSZ70  (RAID) Partitions
 
       Disk      Start     Length
 
       dsk?a     0         131072
       dsk?b     131072    262144
       dsk?c     0         end of media
       dsk?d     0         0
       dsk?e     0         0
       dsk?f     0         0
       dsk?g     393216  end of media
       dsk?h     0         0

ディスク・ラベルは,ディスクの最初のセクタ内のブロック 0 (ゼロ) に置かれます。 ディスク・ラベルは,ディスクのジオメトリと,そのディスクがどのようなパーティションに分割されているかに関する詳細な情報を提供します。 システム・ディスク・ドライバおよびブート・プログラムは,ディスク・ラベルの情報を使用して,ドライブ,ディスク・パーティション,およびファイル・システムを認識します。 その他の情報は,ディスクを最も効率的に使用したり,重要なファイル・システムの情報を検索したりするためにオペレーティング・システムによって使用されます。

各パーティションのディスク・ラベルの記述には,パーティションのタイプ (たとえば,標準ファイル・システム,スワップ領域など) を識別する識別子が含まれています。 ディスク・ラベルには 2 つのコピーが存在し,ひとつはディスク上に,もうひとつはシステム・メモリの中にあります。 I/O を実行するよりもシステム・メモリにアクセスする方が速いため,システムがディスクを認識すると,メモリにそのラベルがコピーされます。 ファイル・システムについての情報が不完全な場合,ファイル・システムはラベルのメモリ内コピーをアップデートします。 ラベルは disklabel コマンドを使用して変更することができます。 コマンド行インタフェースについての詳細は, disklabel(8) を参照してください。 ディスク構成ユーティリティ diskconfig については,『ハードウェア管理ガイド』を参照してください。

6.1.3    UFS バージョン 4.0

UFS の現在のバージョンは,リビジョン 4.0 です。 このバージョンのディスク上のデータ・レイアウトは,6.1.4 項に説明されている UFS バージョン 3.0 のデータ・レイアウトと同じですが,データ容量が大きくなっています。

バージョン 3.0 では,32767 個のハード・リンクまたはサブディレクトリをサポートしていますが,バージョン 4.0 では,65533 個のハード・リンクまたはサブディレクトリをサポートしています。 実際のディレクトリ数は,32765 (32k) と 65531 (64k) です。 これは,空のディレクトリに,自分自身と親ディレクトリへのハード・リンクがすでに存在するためです。 ls -a コマンドを使用すると,これらのリンクはそれぞれ ... で表示されます。 以降この項の例は,32k 個を超えるハード・リンクを持つファイルにも適用されますが,すべて 32k のサブディレクトリについて説明します。

考慮すべき事項と重要な制限 (特に両方のバージョンを使用する場合) について次に示します。

newfs コマンドまたは diskconfig コマンドによるファイル・システムの作成

newfs コマンドまたは diskconfig コマンドを使用して新しいファイル・システムを作成すると,非互換の問題を最小限にするために,新しいファイル・システムは必ずバージョン 3.0 (32k のサブディレクトリまたはハード・リンク) として作成されます。

fsck コマンドによるファイル・システムの検査

fsck コマンドを使用して,問題のあるファイル・システム (システム・クラッシュなどの理由により正常にアンマウントされていないなど) を検査する場合は,見つかったサブディレクトリの最大数により,そのファイル・システムがバージョン 3.0 かバージョン 4.0 かがマークされます。 fsck コマンドで 32K を超える数のサブディレクトリが見つかった場合は,そのファイル・システムはバージョン 4.0 とマークされます。 fsck コマンドで 32K を超える数のハード・リンクを持つディレクトリが見つからない場合は,そのファイル・システムはバージョン 3.0 とマークされます。 ファイル・システムは通常,ユーザが 32K のサブディレクトリの制限数を超えて使用するとすぐに,バージョン 4.0 に変換されます。

fsck コマンドに新しいオプション -B が追加されました。 このオプションを使用すると,バージョン 4.0 のファイル・システムをバージョン 3.0 のファイル・システムに変換することができます。 fsck コマンドでこのオプションを使用すると,そのファイル・システムに 32K を超える数のサブディレクトリを持つディレクトリがなく,かつ 32K を超える数のハード・リンクを持つファイルが存在しない場合にだけ,変換が行われます。

以前のバージョンのオペレーティング・システム (V4.0F など) を実行しているシステムで UFS バージョン 3.0 とバージョン 4.0 の両方を使用する場合の重要な制限を次に示します。

バージョン 3.0 から バージョン 4.0 への自動変換

この 2 つの UFS バージョンの間にはディスク上のデータ・レイアウトに違いがないため,従来のバージョン 3.0 のファイル・システムを最新のリリースのオペレーティング・システムにマウントすることができます。 バージョン 3.0 のファイル・システム上で 32K を超える数のハード・リンクを作成しようとすると,そのファイル・システムはバージョン 4.0 のファイル・システムに自動的に変換されます。 この変換時に出力されるシステム・メッセージの例を次に示します。

Marking /dev/disk/dsk023 as Tru64 UNIX UFS v.4

バージョン 3.0 から バージョン 4.0 への手動変換

32K を超える数のサブディレクトリを持たないバージョン 4.0 のファイル・システムを共用またはマウントする場合は,バージョン 3.0 のファイル・システムだけをサポートする以前のオペレーティング・システム (たとえば Tru64 UNIX バージョン 4.0F) を実行しているシステムにマウントすることができます。 ただし,最初にバージョン 4.0 のファイル・システムを次のように変換しなければなりません。

6.1.4    ファイル・システムの構造: UFS

UFS ファイル・システムは次の 4 つの主要部分から構成されます。

これらのブロックについて,以降の項で説明します。

AdvFS ファイル・システムの構造については『AdvFS 管理ガイド』で説明されています。

6.1.4.1    ブート・ブロック

各ファイル・システムの最初のブロック (ブロック 0) は,ブートまたは初期化プログラムのために予約されています。

6.1.4.2    スーパブロック

各ファイル・システムのブロック 1 はスーパブロックと呼ばれ,次の情報が含まれています。

6.1.4.3    i ノード・ブロック

スーパブロックの次のブロックのグループ。 これらの各ブロックには多くの i ノードが含まれています。 各 i ノードには,i ノード番号が対応しています。 i ノードは,ファイル・システム内の個々のファイルの管理情報を記述しています。 ファイル・システムのファイルごとに 1 つの i ノードがあります。 各ファイル・システムには i ノード数の上限があるため,ファイル・システムに収めることができるファイルには上限があります。 i ノード数の上限はファイル・システムのサイズによって異なります。

各ファイル・システムの最初の i ノード (i ノード 1) には名前がなく,使用されません。 2 番目の i ノード (i ノード 2) はファイル・システムのルート・ディレクトリと対応していなければなりません。 ファイル・システム内のファイルはすべて,ファイル・システムのルート・ディレクトリの下に存在します。 i ノード 3 以降は,どの i ノードをどのファイルに割り当てても構いません。 また,どのデータ・ブロックをどのファイルに割り当てても構いません。 i ノードとブロックの割り当てには,特に順番はありません。

i ノードをファイルに割り当てた場合,i ノードには次の情報を含めることができます。

6.1.4.4    データ・ブロック

データ・ブロックは,ユーザ・データあるいはシステム・ファイルを保持します。

6.1.5    ディレクトリおよびファイルのタイプ

オペレーティング・システムはファイルをビット・ストリームとして認識し,ディスク上のデータ,名前付きパイプ,UNIX ドメイン・ソケット,および端末をファイルとして処理することができます。 このオブジェクト・タイプ透過性により,さまざまなストレージおよび通信機能の定義と動作のためのメカニズムが簡素化されています。 オペレーティング・システムは,内部処理を構成して管理する際に,さまざまなレベルの抽象表現を扱います。

外部インタフェースだけでなく,システムが認識するさまざまなファイル・タイプを理解する必要があります。 システムは,次のファイル・タイプをサポートしています。

6.1.6    デバイス特殊ファイル

デバイス特殊ファイルは,物理デバイス,擬似デバイス,および名前付きパイプを表しています。 デバイス特殊ファイルは /dev ディレクトリに置かれます。 デバイス特殊ファイルは,システムとデバイス・ドライバの間のリンクの役割を果たします。 それぞれのデバイス特殊ファイルは,物理デバイス (たとえば,ディスク,テープ・ドライブ,プリンタ,または端末),または擬似デバイス (たとえば,ネットワーク・インタフェース,名前付きパイプ,または UNIX ドメイン・ソケット) に対応しています。 デバイス・ドライバはすべての読み取りおよび書き込み操作を行い,デバイスが必要とするプロトコルに従います。

次の 3 種類のデバイス特殊ファイルがあります。

デバイス特殊ファイルとその命名規則の詳細については,『ハードウェア管理ガイド』を参照してください。

6.2    コンテキスト依存シンボリック・リンクとクラスタ

この節では,システムを結合してクラスタにするディレクトリ階層機能である,コンテキスト依存シンボリック・リンク (CDSL) について説明します。 CDSL には,すべてのシステムのファイル・システムとディレクトリ階層 (現在クラスタのメンバではないものも含む) に対する,一定の必要条件があります。 必要条件は,次のとおりです。

ディレクトリの構造については, hier(5) を参照してください。

CDSL を使用すると,クラスタのメンバとして結合されたシステムは,共用する必要があるすべてのファイルとディレクトリに対してグローバルな名前領域を持つことができます。 CDSL により,基本構成要素とレイヤード・アプリケーションをクラスタ対応にすることができます。 共用ファイルとディレクトリは,クラスタと単一システムで同じように動作します。 また,ファイル・システムの管理ツールも,クラスタと単一システムで同じように動作します。

システムが将来的にクラスタ・メンバになる可能性があるために,CDSL が重要な場合には,以降の項を参照してください。 CDSL がないことを示すエラー (アップデート・インストレーションの失敗など) が発生した場合は,以降の項で説明するように,CDSL の保守や,確認,修正を行わなければなわなければならないことがあります。

6.2.1    関連ドキュメント

CDSL の説明については,次のマニュアルを参照してください。

6.2.2    CDSL の説明

個々のシステムを接続してクラスタとし,ユーザからは 1 つのシステムに見えるようにできます。 1 つのクラスタ内の単一システムは,メンバと呼ばれます。 Tru64 UNIX クラスタの説明については,TruCluster のドキュメントを参照してください。 クラスタ処理を容易にするために,ファイル・システムには,一部のファイルを個々のクラスタ・メンバ内で一意とする構造と識別可能なパス名,およびメンバ固有の情報がなければなりません。

この他のファイルは,クラスタ内のすべてのメンバで共用する必要があります。 CDSL パス名を使用すると,クラスタ内の異なるシステムが同じファイル階層を共用することができます。 ユーザとアプリケーションは,共用であるかメンバ固有であるかに関係なく,従来のパス名を使用してファイルとディレクトリにアクセスできます。

たとえば,2 つのシステムがスタンドアロンである場合または単にネットワーク・リンクで接続されている場合は,登録ユーザの情報を含む /etc/passwd ファイルが,それぞれのシステムにあります。 2 つのシステムが 1 つのクラスタのメンバの場合は,両方のシステムの登録ユーザの情報を含む共通の /etc/passwd ファイルを共用します。

他の共用ファイルは次のとおりです。

一部のファイルは,必ずメンバ固有でなければなりません。 つまり,共用可能でないファイルがあります。 メンバ固有ファイルの例は /etc/rc.config で,共用ファイルの例は rc.config.common です。 これらのファイルには,個別のシステムにだけ適用される構成情報,またはクラスタ内のすべてのメンバに適用される構成情報が含まれます。 クラスタ・システムで CDSL を使用すると,ファイルを共用したり,メンバ固有ファイルを識別して保守することができます。 この他にメンバ固有ファイルには,次のカテゴリがあります。

システムがクラスタに接続されていない場合でも,パス名はまだ存在しています。 ただし,これはユーザには透過的です。 クラスタ・ファイルの命名規則を理解し,そのファイル構造を維持しなければなりません。 CDSL を誤って削除した場合は,再作成する必要があります。

6.2.2.1    CDSL の構造

CDSL は単に, ln(1) で説明されているシンボリック・リンクです。 このリンクには,クラスタ・メンバである各システムを識別する変数が含まれています。 この変数は,実行時にターゲットに対応して解決されます。 CDSL の構造は次のとおりです。

/etc/rc.config -> /cluster/members/{memb}/etc/rc.config

クラスタがサポートされる前は,このファイルのパス名は /etc/rc.config でした。 このファイルは現在,CDSL によってメンバ固有のターゲットにリンクされています。 このリンクの構造は,次のように解釈されます。

ルート内の /.local.. ファイルは,cluster/members/{memb} へのリンクで,システム固有ファイルを定義します。 システム固有ファイルは,/.local.. パス名で参照または作成できます。 /.local../etc/[filename] として作成されたファイルは,/etc が共用ディレクトリのため,/etc/[filename] のパスでアクセスすることはできません。 このファイルには,/.local../etc/[filename] および /cluster/members/{memb}/etc/[filename] のパス名でのみアクセスできます。

単一システムが他のシステムと一緒にクラスタ化されない場合は,generic:memberid 変数には自動的にゼロが設定されます。 単一システム上の一般的な CDSL の例を次に示します。

/cluster/members/{memb}/etc/rc.config

この CDSL は,次のように解決されます。

/cluster/members/member0/etc/rc.config

システムが他の 2 つのシステムと一緒にクラスタ化され,generic:memberid 変数に 3 が設定された場合,同じ CDSL は次のように解決されます。

/cluster/members/member3/etc/rc.config

クラスタで動作中の場合は,メンバ固有のファイルは次の 3 つの方法で参照できます。

クラスタのメンバに対してだけ,次の 2 つの特別な CDSL があります。

詳細については,TruCluster のドキュメントを参照してください。

6.2.3    CDSL の管理

シンボル・リンクされたファイルに適用される保護は,すべてのファイルで行われている一般的な,ユーザおよびファイル・アクセス・モードによる保護だけです。 特別な保護はありません。 また,CDSL にも特別な保護はありません。 単独システムで CDSL が破壊された場合に発生する障害を,次にいくつか示します。

6.2.3.1    CDSL インベントリの検査

単独システム上の CDSL インベントリを検査するには,/usr/sbin/cdslinvchk スクリプトを使用します。 定期的にインベントリを更新して,CDSL を確認します。 詳細は, cdslinvchk(8) を参照してください。

6.2.3.2    CDSL の作成

CDSL が誤って破壊された場合または CDSL を新たに作成する必要がある場合のリンクの修正処理または作成処理については, ln(1) を参照してください。 たとえば,/etc/rc.config リンクが破壊された場合は,リンクを次のように作成します。

6.3    UFS ファイル・システムの手動作成

オペレーティング・システムの基本ファイル・システムの構成は,インストレーション中にシステムのルート・ファイル・システムが構築されるときに定義されます。 インストレーション後は,必要に応じてファイル・システムを作成することができます。 以降の項では,ファイル・システムをコマンド行で手動で作成する方法について説明します。 コンソールで作業していて,システムがシングルユーザ・モードでグラフィカル・ユーティリティが使用できないときは,ファイル・システムに対する操作をコマンド行で行わなければなりません。

AdvFS ファイル・システムの作成については,『AdvFS 管理ガイド』を参照してください。

6.3.1    newfs による新しいファイル・システムの作成

ファイル・システムの一般的な作成手順を次に示します。

  1. 新しいパーティションとして使用するディスク・デバイスと raw ディスク・パーティションを確認します。 このパーティションが正しくラベル付けされてフォーマットされていることと,まだ使用されていないことを確認します。 コマンド行インタフェース hwmgr および dsfmgr を使用して,デバイスを指定したり,新しいデバイスを追加してデバイス特殊ファイルを作成したりします。 この手順については,『ハードウェア管理ガイド』を参照してください。 このコマンドのオプションについては, hwmgr(8)dsfmgr(8) を参照してください。

    必要な場合には,disklabel -p コマンドを使用して,ディスクの現在のパーティションの状態を読み取ります。 /etc/fstab ファイルを調べて,パーティションがファイル・システムにまだ割り当てられていないことと,スワップ・デバイスとして使用されていないことを確認します。 詳細については, disklabel(8) および fstab(4) を参照してください。

  2. 使用する未使用の raw (文字型) ディスク・パーティションの確認が完了すると,そのパーティションのデバイス特殊ファイルの名前が分かります。 たとえば,ディスク 2 のパーティション g のデバイス特殊ファイル名は /dev/rdisk/dsk2g です。 デバイス特殊ファイルの名前については,『ハードウェア管理ガイド』を参照してください。

  3. newfs コマンドを使用して,ファイル・システムをターゲット・パーティションに作成します。 詳細については, newfs(8) を参照してください。

  4. マウント・ポイントのディレクトリを作成し,mount コマンドで新しいファイル・システムをマウントして使用できる状態にします。 リブート後もマウントされるようにしたい場合は,mount コマンドを /etc/fstab ファイルに追加します。 ファイル・システムをエクスポートしたい場合は,そのファイル・システムを /etc/exports ファイルに追加します。 詳細については, mount(8) を参照してください。

  5. chmod コマンドを使用して,アクセス制御の制限のチェックと調整を行います。 詳細については, chmod(1) を参照してください。

これらの手順については,この項の残りの部分で詳細に説明します。

newfs コマンドは,ディスク・パーティションを初期化して UFS ファイル・システムを作成します。 newfs コマンドは,ディスク・ラベルの情報または /etc/disktab ファイルに指定された省略時の値を使用して,特定のディスク・パーティションにファイル・システムを作成します。 newfs コマンドのオプションを使用して,ディスクのジオメトリを指定することもできます。

注意

省略時のディスクのジオメトリの値を変更すると,標準スーパブロックが失われた場合に,fsck プログラムは代替スーパブロックを検出できなくなります。

newfs コマンドの構文は次のとおりです。

/sbin/newfs [-N] [newfs_options] special_device [disk_type]

デバイス名には,アンマウントされている raw デバイス (たとえば /dev/rdisk/dsk0a) を指定しなければなりません。

ファイル・システム固有のコマンド・オプションについての説明は, newfs(8) を参照してください。 また,このリファレンス・ページでは,mfs コマンドについて説明し,メモリ・ファイル・システム (mfs) の作成方法についても説明しています。

新しいファイル・システムの作成例を次に示します。

  1. ターゲット・ディスクとパーティションを確認します。 ほとんどのシステムの場合,ローカルの管理ログを調べることで,システムに接続されているディスク・デバイスおよび割り当てられているパーティションが分かります。 ただし,管理するシステムの状態が不明の場合もあります。 つまり,デバイスが取り外されたり,追加されたりした場合です。 次のコマンドとユーティリティを使用して,ターゲット・ディスクとパーティションを確認します。

    1. /dev/disk ディレクトリの内容を調べます。 検出されている各ディスク・デバイスには,パーティション・レイアウトに対応した一連のデバイス特殊ファイルがあります。 たとえば,/dev/disk/dsk1a/dev/disk/dsk1h は,dsk1 という名前のデバイスが存在することを示します。

    2. デバイスは使用可能な状態であっても,デバイス特殊ファイルがシステムに存在しないこともあります。 次のように hwmgr コマンドを使用して,物理的にシステムのバスに接続されているすべてのデバイスを調べます。

      # hwmgr -view devices -category disk
       HWID:            DSF Name    Model       Location
      -------------------------------------------------------
         15:  /dev/disk/floppy0c    3.5in         fdi0-unit-0
         17:     /dev/disk/dsk0c RZ1DF-CB  bus-0-targ-0-lun-0
         19:                     RZ1DF-CB  bus-0-targ-1-lun-0
         19:   /dev/disk/cdrom0c    RRD47  bus-0-targ-4-lun-0
      

      デバイス特殊ファイルがないデバイスが見つかった場合は,dsfmgr ユーティリティを使用して,デバイス特殊ファイルを作成することができます。

      注意

      通常,デバイス特殊ファイルは,新しいディスク・デバイスがシステムに追加されたときに自動的に作成されます。 デバイス特殊ファイルを手動で作成しなければならないのは,『ハードウェア管理ガイド』で説明している状況の場合だけです。

    3. デバイスの確認ができたら,次のように disklabel コマンド使用して,使用されているパーティションを調べます。

      # disklabel -r /dev/rdisk/dsk0a
      

      8 partitions:
      #       size  offset fstype [fsize bsize cpg] #NOTE: values not
                                                      exact
       a:   262144        0 4.2BSD 1024 8192  16  #(Cyl.   0 -78*)
       b:  1048576   262144   swap                #(Cyl.  78*-390*)
       c: 17773524        0 unused    0    0      #(Cyl.   0 -5289*)
       d:  1048576  1310720   swap                #(Cyl. 390*-702*)
       e:  9664482  2359296  AdvFS                #(Cyl. 702*-3578*)
       f:  5749746 12023778 unused    0    0      #(Cyl.3578*-5289*)
       g:  1433600   524288 unused    0    0      #(Cyl. 156*-582*)
       h: 15815636  1957888 unused    0    0      #(Cyl. 582*-5289*)
      

  2. disklabel コマンドの出力で,使用されていないパーティションがいくつかあることが分かります。 ただし,パーティション c は他のパーティションと重なっているため,使用することはできません。 ディスクにカスタム・ディスク・ラベルが作成されていない限り,使用可能な標準パーティションのテーブルは,表 6-1 に示す 3 種類だけです。

    表 6-1:  ディスク・パーティション・テーブル

    パーティション・テーブル 説明
    c ディスク全体が,シングル・パーティションとしてラベル付けされます。 他のパーティションは c と重なり合うため,使用することはできません。
    a b g h ディスクは 4 つのパーティションに分割されます。 パーティション a は,ブート・パーティションとして使用できます。 パーティション cde,および f は重なり合うため使用できません。
    a b d e f ディスクは 5 つのパーティションに分割されます。 パーティション a は,ブート・パーティションとして使用できます。 パーティション cg,および h は重なり合うため使用できません。

    ステップ 1.c の disklabel コマンドの出力にリストされているディスクでは,すでにパーティション abd,および e が使用されています。 このため,このディスクには 5 つのパーティションが定義されています。 パーティション f は,未使用のため,新しいファイル・システム用に使用することができます。

    注意

    カスタム・ディスク・ラベルがディスクに書き込まれ,パーティションが拡張されている場合は,パーティションが未使用でも使用することはできません。 この場合には,newfs コマンドはファイル・システムを作成できず,エラー・メッセージを表示します。

  3. 次のように newfs コマンドを使用して,ターゲット・パーティションにファイル・システムを作成します。

    # newfs /dev/rdisk/dsk0f
     
    Warning: 2574 sector(s) in last cylinder unallocated
    /dev/rdisk/dsk0f:  5749746 sectors in 1712 cylinders of \
    20 tracks, 168 sectors
       2807.5MB in 107 cyl groups (16 c/g, 26.25MB/g, 6336 i/g)
    super-block backups (for fsck -b #) at:
     32, 53968, 107904, 161840, 215776, 269712, 323648,
    377584, 431520, 485456, 539392, 593328, 647264, 701200,
    755136, 809072, 863008, 916944, 970880, 1024816, 1078752,
    1132688, 1186624, 1240560,
    .
    .
    .
    

    コマンドの出力には,新しいファイル・システムのサイズが表示され,ファイル・システムのチェック・ユーティリティ fsck が使用するスーパブロック・バックアップがリストされます。 詳細については,リファレンス・ページの fsck(8) を参照してください。

  4. 以降の項で説明するように,ファイル・システムをマウントします。

6.3.2    ファイル・システムをユーザからアクセス可能とする

mount コマンドを使用してファイル・システムをファイル・システム階層構造に接続すると,ファイル・システムが使用できるようになります。 mount コマンドは,ファイル・システムをそのマウント・ポイントとなる既存のディレクトリに接続します。

注意

このオペレーティング・システムでは,4 K バイト・ブロック・サイズのファイル・システムはサポートしていません。 ファイル・システムの省略時のブロック・サイズは,8 K バイトです。 4 K バイト・ブロック・サイズのファイル・システムを含むディスク上のデータにアクセスするには,テープまたは 8 K バイト・ブロック・サイズのファイル・システムを持つディスクにデータのバックアップをとる必要があります。

システムのブート時には,/etc/fstab ファイルで定義されたファイル・システムがマウントされます。 /etc/fstab ファイルには,ファイル・システムが存在するデバイスとパーティション,マウント・ポイント,ファイル・システム・タイプなどファイル・システムに関する情報を指定するエントリが記述されています。 シングルユーザ・モードで使用している場合,ルート・ファイル・システムは読み取り専用モードでマウントされます。

ファイル・システムのマウント時に "dirty file system" エラーが表示された場合,そのファイル・システムに対して fsck コマンドを実行する必要があります。

ファイル・システムのマウント状態を変更するには,-u オプションを指定して mount コマンドを実行してください。 このオプションは,リブートするときに /etc/fstab ファイルが利用できない場合に役立ちます。

リブートしようとして /etc/fstab ファイルが壊れている場合は,次のコマンドを使用します。

# mount -u /dev/disk/dsk0a /

/dev/disk/dsk0a デバイスはルート・ファイル・システムです。

6.3.3    /etc/fstab ファイルの使用

ルート・ファイル・システムには,AdvFS と UFS のどちらも使用できます。 ただし,インストレーションの際に UFS を指定しないと,省略時のファイル・システムとして AdvFS が使用されます。 出荷時にオペレーティング・システムがインストール済みのシステムでは,ルート・ファイル・システムは AdvFS です。 オペレーティング・システムは,ルート・ファイル・システムを 1 つだけサポートし,そこから実行可能カーネル (/vmunix) と,ブートや初期化に必要なその他のバイナリやファイルにアクセスします。 ルート・ファイル・システムは,ブート時にマウントされ,アンマウントすることはできません。 他のファイル・システムは,マウントしなければならず,/etc/fstab ファイルで,ブート・システムに対してどのファイル・システムをどこにマウントするかを指示します。

/etc/fstab ファイルにはファイル・システムについての情報が記述されており,mount コマンドなどのコマンドによって読み取られます。 システムをブートすると /etc/fstab ファイルが読み取られ,そのファイルに記述されているファイル・システムがファイルに記述されている順番にマウントされます。 各ファイル・システムの情報は 1 行で記述されており,各行の情報はタブまたはスペースで区切られています。

mount コマンドと umount コマンドは,/etc/fstab ファイルに記述されている順にファイル・エントリを読み取り実行するため,ファイル内のエントリの順番は重要です。

/etc/fstab ファイルを編集するには,root ユーザ特権が必要です。 ファイルの変更後,すぐに変更を有効にしたい場合は,mount -a コマンドを実行します。 このコマンドを実行しなかった場合,ファイルに対するすべての変更内容は,システムのリブート時に有効となります。

次に /etc/fstab ファイルの例を示します。

/dev/disk/dsk2a   /                  ufs     rw      1       1
/dev/disk/dsk0g   /usr               ufs     rw      1       2
/dev/disk/dsk2g   /var               ufs     rw      1       2
/usr/man@tuscon   /usr/man           nfs     rw,bg   0       0
proj_dmn#testing  /projects/testing  advfs   rw      0       0
|                 |                  |       |       |       [6]
|                 |                  |       |       [5]            
|                 |                  |       [4]     
|                 |                  [3]   
|                 [2]    
[1]
 

各行にはエントリが 1 つ含まれており,情報はタブまたはスペースで区切られています。 /etc/fstab ファイルの各エントリは次の情報を表します。

  1. マウントするブロック型特殊デバイスまたはリモート・ファイル・システム。 UFS の場合は,特殊ファイル名として文字型特殊ファイル名ではなく,ブロック型特殊ファイル名を指定します。 AdvFS の場合には,特殊ファイル名はファイル・ドメインの名前,番号記号 (#) およびファイルセット名の組み合わせです。 [例に戻る]

  2. ファイル・システムまたはリモート・ディレクトリのマウント・ポイント (たとえば /usr/man),あるいは /projects/testing [例に戻る]

  3. ファイル・システムのタイプ

    cdfs ISO 9660 または HS 形式の CD-ROM ファイル・システム
    nfs NFS
    procfs デバッグに使用する /proc ファイル・システム
    ufs UFS ファイル・システムまたはスワップ・パーティション
    advfs AdvFS ファイル・システム

    [例に戻る]

  4. そのパーティションに対するマウント・オプションを指定します。 オプションは,コンマで区切って複数指定できます。 通常,次のように,ファイル・システム・タイプに適したマウント・タイプおよび追加オプションを指定します。

    ro

    ファイル・システムを読み取り専用アクセスでマウントします。

    rw

    ファイル・システムを読み取り書き込みアクセスでマウントします。

    userquota groupquota

    ファイル・システムが quotacheck コマンドにより自動的に処理され,quotaon コマンドでファイル・システム・クォータが有効になるように指定します。

    省略時の設定では,ファイル・システムのユーザおよびグループのクォータは quota.user ファイルと quota.group ファイルに含まれていますが,これらのファイルは,マウント・ポイントによって指定されたディレクトリにあります。 たとえば,/usr にマウントされているファイル・システムのクォータ定義ファイルは /usr ディレクトリに置かれています。 また,次に示す形式で別のファイル名と位置を指定することもできます。 userquota=/var/quotas/tmp.user

    xx

    ファイル・システムのエントリを無視します。

    [例に戻る]

  5. バックアップする UFS ファイル・システムを決定するために dump コマンドが使用する値。 値 1 を指定すると,ファイル・システムはバックアップされます。 値を指定しないか,または 0 (ゼロ) を指定すると,ファイル・システムはバックアップされません。 [例に戻る]

  6. これはパス番号で,/etc/fstab ファイル内のすべてのエントリを処理するときに,fsck (UFS) および quotacheck (UFS と AdvFS) ユーティリティの並列処理を制御するために使用します。 このフィールドを使用して,スタートアップ時のファイル・システムの検査の順番を制御することで,同じ I/O サブシステムへ過度の I/O が集中してシステムが過負荷になるのを防ぎます。

    パス番号を指定しないか,0 (ゼロ) を指定した場合は,ファイル・システムは検査されません。 パス番号が 1 のエントリはすべて,一度に 1 つずつ処理されます (並列処理は行われません)。 ルート・ファイル・システムには,必ず 1 を指定してください。 パス番号が 2 以上のエントリは,割り当てられたパス番号に従って並列処理されます (例外もあります)。 パス番号が 2 のエントリがすべて処理された後にパス番号 3 のエントリが処理され,パス番号 3 のエントリがすべて処理された後にパス番号 4 のエントリが処理されます。 以降,同様に処理が続きます。 例外は,同じディスク上の異なるパーティションに複数の UFS ファイル・システムがある場合や,同じドメイン内に複数の AdvFS ファイルセットがある場合です。 これらのファイル・システムのパス番号がすべて同じ場合には,1 つずつ処理されます。 同じパス番号を持つ他のファイル・システムは,すべて並列処理されます。 [例に戻る]

フィールドおよびオプションについての詳細は, fstab(4) を参照してください。

スワップ・パーティションは,次の例のように,/etc/sysconfigtab ファイルで構成されます。

        swapdevice=/dev/disk/dsk0b,/dev/disk/dsk0d
        vm-swap-eager=1

スワッピングとスワップ・パーティションの詳細については,『ハードウェア管理ガイド』,第 12 章,および swapon(8) を参照してください。

6.3.4    手動による UFS ファイル・システムのマウント

mount コマンドを使用してファイル・システムを使用できる状態に設定します。 ファイル・システムを /etc/fstab ファイルに追加しない限り,マウントは一時的なものとなり,システムをリブートするとマウントが外されます。

mount コマンドは,UFS,AdvFS,NFS,CDFS,および /proc ファイル・システムをサポートしています。

すべてのファイル・システムに対して次の構文で mount コマンドを使用します。

mount [- adflruv ] [-o option ] [-t type] [file_system ] [ mount_point]

AdvFS では,ファイル・システム引数は domain#fileset の形式になります。 引数として,ファイル・システムおよびマウント・ポイントを指定してください。 マウント・ポイントとは,ファイル・システムをマウントしたいディレクトリです。 このディレクトリは,すでにシステムに存在するものでなければなりません。 リモート・ファイル・システムをマウントする場合は,ファイル・システムの指定には次のいずれかの構文を使用します。

host:remote_directory
remote_directory@host

次のコマンドは,現在マウントされているファイル・システムとそのファイル・システム・オプションをリストします。

# mount -l
/dev/disk/dsk2a on / type ufs (rw,exec,suid,dev,nosync,noquota)
/dev/disk/dsk0g on /usr type ufs (rw,exec,suid,dev,nosync,noquota)
/dev/disk/dsk2g on /var type ufs (rw,exec,suid,dev,nosync,noquota)
/dev/disk/dsk3c on /usr/users type ufs (rw,exec,suid,dev,nosync,noquota)
/usr/share/man@tuscon on /usr/share/man type nfs (rw,exec,suid,dev,
nosync,noquota,hard,intr,ac,cto,noconn,wsize=8192,rsize=8192,
timeo=10,retrans=10,acregmin=3,acregmax=60,acdirmin=30,acdirmax=60)
proj_dmn#testing on /alpha_src type advfs (rw,exec,suid,dev,nosync,noquota)
 

次のコマンドは,ホスト acton の /usr/homer ファイル・システムを,ローカルのマウント・ポイント /homer に読み取り/書き込みモードでマウントします。

# mount -t nfs -o rw acton:/usr/homer /homer

一般的なオプションおよびファイル・システム・タイプに固有のオプションについての詳細は, mount(8) を参照してください。

6.3.5    手動による UFS ファイル・システムのアンマウント

ファイル・システムをアンマウントするには,umount コマンドを使用します。 以下の状況では,ファイル・システムをアンマウントしなければなりません。

umount コマンドの構文は次のとおりです。

umount [- afv ] [- h host ] [- t type ] [ mount_point ]

cd コマンドを含めて,なんらかのユーザ・プロセスがファイル・システムを使用している場合には,ファイル・システムをアンマウントすることはできません。 このコマンドを起動したときにファイル・システムが使用中の場合は,次のエラー・メッセージが表示されます。

mount device busy

umount コマンドでルート・ファイル・システムをアンマウントすることはできません。

6.3.6    UFS ファイル・システムの拡張

UFS ファイル・システムの容量は,1 つのディスクまたは Logical Storage Manager (LSM) ボリュームで利用可能なストレージの量まで増やすことができます。 UFS ファイル・システムの容量 (サイズ) を増やす処理のことを,ファイル・システムの拡張といいます。

ファイル・システムがオンライン (マウント状態) の場合は,mount のオプションで拡張できます。 この操作は,ファイル・システムがオフライン (ディスマウント状態) の場合に extendfs コマンドを使用して行うこともできます。 ファイル・システムが満杯であることをシステムが通知した場合,この手順を一時的ソリューションとして使用することも,恒久的なソリューションとして使用することもできます。 ファイル・システムは,ストレージ・デバイスの物理的な限界に達するまで,必要に応じて何度でも拡張できます。

この操作を元に戻すことはできません。 ファイル・システムを元のボリュームに戻すためには,dump またはバックアップ・ユーティリティを使用してファイル・システムをバックアップしてから,ファイル・システムを適切なサイズのディスク・パーティションへリストアする必要があります。

ファイル・システムを拡張するのに必要な条件は,次のとおりです。

ファイル・システムを確認する。

次のように more コマンドを使用して /etc/fstab ファイルを表示し,ファイル・システムと,ファイル・システムが存在するパーティションを確認します。

# /usr/bin/more /etc/fstab
/dev/disk/dsk0a on / type ufs (rw)
/proc on /proc type procfs (rw)
.
.
.
/dev/disk/dsk15e on /databases type ufs (rw)
/dev/disk/dsk4g on /projects type ufs (rw)
 
 

ファイル・システムのバックアップ・ステータスを確認する

この手順はファイル・システムを変更せず,必要な場合に素早く実行できるように設計されています。 ただし,重要なデータ・ファイルはバックアップしてください。

利用可能なディスク・ストレージ容量を調べる

UFS ファイル・システムは,1 つのディスク・パーティションまたは LSM ボリューム上に存在します。 ファイル・システムを拡張するには,次の方法でディスク・スペースを大きくします。

たとえば,現在使用中の次のようなディスクがあるとします。

前述の例では,b パーティション上の UFS ファイル・システムは,未使用の 6 GB を使用して拡張することができます。 1 回の拡張で 6 GB 全部を使用する必要はありません。 拡張を段階的に行って,ディスク・スペースを節約することができます。

ファイル・システムを拡張するためのディスク容量が不足している場合は,ファイル・システムをバックアップし,新しいディスク・ボリュームとしてリストアします (第 9 章を参照)。

パーティション・サイズを再設定する

disklabel コマンドを使用して,ファイル・システムが置かれているパーティションのサイズを再設定します。 次の手順は,disklabel コマンドの使用方法です。

注意

グラフィック・ディスク構成ユーティリティ diskconfig を使用して,この操作を実行することはできません。 diskconfig ユーティリティはパーティションの検査を省略しないので,使用中のパーティションの再構成ができないためです。

  1. パーティションを編集できるように,現在のディスク・ラベルをファイルに保存します。 たとえば,次のコマンドを入力します。

    # /sbin/disklabel -r /dev/disk/dsk4 > d4label
     
     
    

  2. 保存したラベルを編集して,使用中のパーティションの容量を大きくし,未使用のパーティションの容量を同じだけ小さくします。


    .
    .
    .
    b: 10192000 1048576 4.2BSD 1024 8192 16 # (Cyl. 312*- 2750*) g: 7104147 8669377 unused 1024 8192 # (Cyl. 2580*- 5289*)

    たとえば,パーティション b のサイズを 3,000,000 ブロック大きくするには,ラベルを次のように変更します。


    .
    .
    .
    b: 13192000 1048576 4.2BSD 1024 8192 16 # (Cyl. 312*- 2750*) g: 4104147 8669377 unused 1024 8192 # (Cyl. 2580*- 5289*)

    ディスク・ラベルをファイルに保存して,エディタを終了します。

  3. 編集したファイルを次のように指定して,raw ディスクにラベルを書き込みます。

    # /sbin/disklabel -R /dev/rdisk/dsk4 d4label
     
     
    

詳細は, disklabel(8) を参照してください。

ディスク・スペースを追加すると,以降の項で説明している方法のいずれかでファイル・システムを拡張できます。

6.3.6.1    ディスマウント状態のファイル・システムの拡張

オフライン状態で使用中のファイル・システムを拡張するには,extendfs コマンドを使用します。 1 回の操作でパーティション全体に拡張することも,段階的にファイル・システムを拡張することもできます。 extendfs コマンドを,次のいずれかの方法で使用します。 これらの手順は,ディスク・パーティション・サイズを大きくする準備作業 (6.3.6 項を参照) が完了していることを前提としています。

6.3.6.2    マウント状態のファイル・システムの拡張

オンライン (マウント状態) で使用中のファイル・システムを拡張するには,mount コマンドを使用します。 この手順は,マウント状態のパーティションを確認し,ディスク・パーティション・サイズを大きくする準備作業 (6.3.6 項を参照) が完了していることを前提としています。

mount コマンドの構文は,6.3.4 項で説明されています。 ファイル・システムを拡張するには,-o オプションとともに extend オプションを使用し,マウント・ポイントを次のように指定します。

# /sbin/mount -u -o extend /projects
extending file system, please wait.

mount コマンドは,この操作の完了やエラーは出力しません。 完了するまでの時間はパーティションのサイズによって異なり,場合によっては数分かかります。 このため,df コマンドを次のように使用して,操作の結果を確認しなければなりません。

# /usr/bin/df /projects
 

このコマンドの出力により,操作が成功したかどうかを確認できます。 操作が成功しなかった場合は,ディスク・パーティションが正しいかどうかや,マウント・ポイントが存在しているかを確認します。

6.4    SysMan Menu による UFS ファイル・システムの管理

このオペレーティング・システムには,手動によるファイル・システムの作成と管理の他に,グラフィカル・ツールや,さまざまなユーザ環境で使用できる SysMan Menu タスクが用意されています。 SysMan の起動と使用については,第 1 章を参照してください。 共通デスクトップ環境 (CDE) を使用している場合は,他のグラフィカル・ユーティリティが使用できます。 これらのユーティリティは,CDE アプリケーション・マネージャのメイン・フォルダから次のようにしてアクセスします。

  1. CDE フロント・パネルでアプリケーション・マネージャのアイコンを選択します。

  2. 「アプリケーション・マネージャ」フォルダ・ウィンドウで「システム管理」アイコンを選択します。

  3. 「アプリケーション・マネージャ - システム管理」フォルダ・ウィンドウで「ストレージ管理」アイコンを選択します。

システムにインストールされライセンスされているオプションに従って,このウィンドウでは以下のアイコンが使用できます。

Advanced File System

AdvFS グラフィカル・ユーザ・インタフェースを起動するには,このアイコンを選択します。 詳細については,『AdvFS 管理ガイド』を参照してください。

コマンド行で AdvFS グラフィカル・インタフェースを起動する方法については, dtadvfs(8) を参照してください。

ブート・テープ

SysMan Menu のブート可能テープ作成インタフェースを起動するには,このアイコンを選択します。 このインタフェースを使用して,ブート可能システム・イメージをテープ上に作成します。 このイメージには,スタンドアロン・カーネルと,作成時に選択したファイル・システムのコピーが含められます。 btextract ユーティリティを使用すると,このイメージを復元することができます。 ブート可能テープ・インタフェースの使用については,第 9 章を参照してください。 詳細は, btcreate(8)btextract(8),および bttape(8) を参照してください。 bttape コマンドを使用すると,コマンド行またはスクリプトからブート可能テープ・グラフィカル・ユーザ・インタフェースを起動できます。

ファイル・システム管理

この項で説明している SysMan Storage ユーティリティを起動するには,このアイコンを選択します。

Logical Storage Manager (LSM)

LSM グラフィカル・ユーザ・インタフェースを起動するには,このアイコンを選択します。 LSM を使用すると,システムやアプリケーションから単一のデバイスとして見える仮想ディスク・ボリュームを作成することができます。 詳細については,『Logical Storage Manager』を参照してください。 LSM コマンドの一覧については, lsm(8) を参照してください。

コマンド行からこのインタフェースを起動するには,lsmsa コマンドまたは dxlsm コマンドを使用します。 詳細については, lsmsa(8) を参照してください。 dxlsm は,オペレーティング・システムの今後のリリースでは,削除される予定です。

Prestoserve I/O Accelerator

Prestoserve グラフィカル・インタフェースを起動するには,このアイコンを選択します。 Prestoserve は,ディスクへの同期書き込みをディスクではなく,不揮発性メモリに書き込みます。 格納されたデータは,必要に応じて非同期にディスクに書き込まれるか,マシンが停止するときディスクに書き込まれます。 詳細については,『Guide to Prestoserve』を参照してください。 コマンド行インタフェースについては, presto(8) を参照してください。

コマンド行からこのインタフェースを起動するには,dxpresto コマンドを使用します。 詳細については, dxpresto(8) を参照してください。

以降の項では,SysMan Menu にある UFS ファイル・システム・ユーティリティについて説明します。

6.4.1    SysMan Menu でのファイル・システムの作業

SysMan Menu には,[ストレージ] という名前のメイン・メニュー・オプションがあります。 このオプションは,次のとおりです。

- ストレージ [storage]
    - ファイルシステム管理ユーティリティ [filesystems]
        - 一般的なファイルシステム・ユーティリティ [generalfs]
            | ファイルシステムのアンマウント [dismount]
            | 現在マウントされているファイルシステムの表示 [df]
            | ファイルシステムのマウント [mount]
            | ローカル・ディレクトリ(/etc/exports)の共有 [export]
            | ネットワーク・ディレクトリ(/etc/fstab)のマウント [net_mount]
        - Advanced File System (AdvFS) ユーティリティ [advfs]
            | AdvFS ドメインの管理 [domain_manager]
            | AdvFS ファイルの管理 [file_manager]
            | AdvFS ドメインのデフラグメント [defrag]
            | 新しい AdvFS ドメインの作成 [mkfdmn]
            | 新しい AdvFS ファイル・セットの作成 [mkfset]
            | AdvFS ドメインのファイルの修復 [salvage]
            | AdvFS ドメインの修復 [verify]
        - UNIX File System (UFS) ユーティリティ [ufs]
            | 新しい UFS ファイルシステムの作成 [newfs]
        - Logical Storage Manager (LSM) の管理 [lsm]
            | Logical Storage Manager (LSM) の初期化 [volsetup]
            | Logical Storage Manager (LSM) 管理 [lsmmgr]
 

各オプションには,基本的なファイル・システムの管理作業を 1 ステップずつ実行するインタフェースがあります。 SysMan Menu の起動と使用方法については,第 1 章を参照してください。 SysMan Station からファイル・システム・ユーティリティを起動することもできます。 たとえば,SysMan Station を使用して「Mounted_Filesystems」ビューを表示している場合は,MB3 を押して次の作業を行うことができます。

SysMan Station の「Physical_Filesystems」ビューでは,物理デバイスにマップされているファイル・システムのグラフィカル・ビューを表示し,既存のドメインで AdvFS ファイルセットの作成などの作業を行うことができます。 SysMan Station の起動と使用方法については,第 1 章を参照してください。 ファイル・システム・オプションの使用については,オンライン・ヘルプを参照してください。

次の SysMan Menu の [ストレージ] オプションについては,他のマニュアルで説明します。

Advanced File System (AdvFS) Utilities

AdvFS 管理ガイド』を参照してください。

Logical Storage Manager (LSM) ユーティリティ

Logical Storage Manager』を参照してください。

以降の項では,SysMan Menu から使用できる [一般的なファイルシステム・ユーティリティ] と [UNIX File System (UFS) ユーティリティ] のファイル・システム作業について説明します。 SysMan Menu のタスクの構成は同じ順序にはなっていませんが,ファイル・システムの一般的な作成手順は,6.3 節に説明されている手順とまったく同じです。 これらのタスクは,ファイル・システムの作成と管理を行うためにいつでも使用できる,汎用のユーティリティです。

6.4.2    SysMan によるファイル・システムのディスマウント

ファイル・システムをディスマウントするには,そのマウント・ポイント,デバイス特殊ファイル名,または AdvFS ドメイン名を指定しなければなりません。 これらの情報は,more コマンドを使用して /etc/fstab ファイルの内容を表示したり,6.4.3 項 に説明されている SysMan Menu の [ストレージ] オプションの [現在マウントされているファイルシステムの表示] を使用して取得することができます。 コマンド行のオプションについては, mount(8)umount(8) を参照してください。

[ファイルシステムのアンマウント] オプションは,SysMan Menu の [ストレージ] オプションから使用できます。 このオプションが表示されていない場合は,メニューを展開して [一般的なファイルシステム・ユーティリティ] を選択します。 [ファイルシステムのアンマウント] オプションを選択すると「ファイルシステムのアンマウント」ウィンドウが表示され,次のフィールドのどちらかを入力するように求められます。 両方のフィールドを入力する必要はありません。

  1. マウント・ポイント

    /mnt など,ファイル・システムが現在マウントされているマウント・ポイントを入力します。

  2. ファイル・システム名

    マウントされたパーティションのデバイス特殊ファイル名 (たとえば,/dev/disk/dsk0f) か,AdvFS ドメイン名 (たとえば,accounting_domain#act) を入力します。

[適用] ボタンを選択してファイル・システムをディスマウントした後,他のファイル・システムのディスマウント処理を続けるか,[了解] ボタンを選択してファイル・システムをディスマウントして終了します。

6.4.3    SysMan によるマウントされているファイル・システムの表示

マウントされているファイル・システムを表示するオプションが,SysMan Menu の [ストレージ] オプションで使用できます。 メニューを展開して,[一般的なファイルシステム・ユーティリティ - 現在マウントされているファイルシステムの表示] を選択してください。 このオプションを選択すると,次のようなファイル・システムのリストを含む,「現在マウントされているファイルシステムの表示」ウィンドウが表示されます。

/dev/disk/dsk0a         /
/proc                   /proc
usr_domain#usr          /usr
usr_domain#var          /var
19serv:/share/19serv/tools/tools /tmp_mnt/19serv/tools
 
 

このウィンドウに表示される情報は次のとおりです。

ファイル・システム

次のいずれかのファイル・システムです。

19serv:/share/19serv/tools/tools   /tmp_mnt/19serv/tools

マウント・ポイント

/usr/accounting_files などの,ファイル・システムがマウントされているディレクトリ。

現在マウントされているファイル・システムの数によっては,大規模なリストになることがあります。 このリストでは,/etc/fstab ファイルにリストされていない,現在の file-on-file マウント情報を知ることができます。 このリストでは,/etc/fstab ファイルに指定されているファイル・システムでも,現在マウントされていないものは表示されません。

「現在マウントしているファイルシステム」ウィンドウでは,次のオプションが使用できます。

[詳細...]

ファイル・システム・データの詳細 (ファイル・システムのプロパティ) を表示するには,このオプションを使用します。 このオプションで表示されるデータは次のとおりです。

File system name: /dev/disk/dsk0a
Mount point:      /
File system size: 132 MBytes
Space used:       82 MBytes
Space available:  35 MBytes
Space used %:     70%

[アンマウント...]

選択したファイル・システムをディスマウントするには,このオプションを使用します。 ディスマウント要求を確認するプロンプトが表示されます。 ファイル・システムが現在使用中の場合や,ユーザが cd コマンドを使用して,ディスマウントするファイル・システムへディレクトリを変更している場合でも,そのファイル・システムをディスマウントすることはできません。 ユーザにファイル・システムの使用をやめるように連絡するには,wall コマンドを使用します。

[更新]

「現在マウントしているファイルシステム」リストを再表示して,ディスマウントされたファイル・システムを反映するには,このオプションを使用します。

コマンド行でファイル・システムをマウントした場合や,NFS マウントした場合には,ユーティリティを一度終了してから再度起動するまで,新たにマウントされたファイル・システムは表示されません。

[終了]

「現在マウントしているファイルシステム」ウィンドウを終了して SysMan Menu に戻るには,このボタンを押します。

6.4.4    SysMan によるファイル・システムのマウント

ファイル・システムのマウント操作には,次の前提条件があります。

ファイル・システムをマウントするオプションは,SysMan Menu の [ストレージ] オプションで使用できます。 メニューを展開して [一般的なファイルシステム・ユーティリティ - ファイルシステムのマウント] を選択し,「マウント操作」ウィンドウを表示します。 このインタフェースは, mount(8) に説明されている mount コマンドの代わりになるものです。 このユーティリティの操作対象は,/etc/fstab ファイルに現在リストされているファイル・システムだけです。 マウントされているファイル・システムについての情報は,6.4.3 項に説明されている [現在マウントされているファイルシステムの表示] SysMan Menu オプションを使用して取得できます。

「マウント操作」ウィンドウには,次の 4 つの排他的な選択可能オプションがあります。

  1. 指定したファイル・システムのマウント

    特定のファイル・システムを 1 つマウントするには,このオプションを選択します。 「ファイル・システム名とマウント・ポイント」ウィンドウが表示され,次のどちらかのフィールドへ入力を行うように要求されます。

    マウント・ポイント

    /etc/fstab ファイルに指定されているマウント・ポイント・ディレクトリ (たとえば,/cdrom) を入力します。

    ファイル・システム名

    /dev/disk/cdrom0c などのデバイス特殊ファイル名を入力します。 または,usr_domain#usr などの,AdvFS ドメイン名を入力します。

    次に,「ファイル・システムのマウント・オプション」ウィンドウが表示されます。 このウィンドウはさまざまなマウント操作に共通なので,このリストの最後で説明します。

  2. /etc/fstab にリストされているすべてのファイル・システムのマウント

    /etc/fstab ファイルに現在リストされているすべてのファイル・システムをマウントするには,このオプションを使用します。 このオプションでは,指定されたすべてのパーティションまたはドメインがオンラインで,すべてのマウント・ポイントが作成されていることを前提としています。

    次に,「ファイル・システムのマウント・オプション」ウィンドウが表示されます。 このウィンドウはさまざまなマウント操作に共通なので,このリストの最後で説明します。

  3. 指定したタイプのファイル・システムだけのマウント

    /etc/fstab ファイルにリストされているファイル・システムのうち,指定したタイプをすべてマウントするには,このオプションを使用します。 このオプションでは,指定されたすべてのパーティションまたはドメインがオンラインで,すべてのマウント・ポイントが作成されていることを前提としています。

    次に表示される「ファイル・システムのマウント・オプション」ウィンドウで,ファイル・システムのタイプを指定します。 このウィンドウはさまざまなマウント操作に共通なので,このリストの最後で説明します。 たとえば,AdvFS ファイル・システムだけを選択することができます。

  4. 選択したタイプ以外のすべてのファイル・システムのマウント

    /etc/fstab ファイルにリストされているファイル・システムのうち,指定したタイプを除いてマウントするには,このオプションを使用します。 このオプションでは,指定されたすべてのパーティションまたはドメインがオンラインで,すべてのマウント・ポイントが作成されていることを前提としています。

    次に表示される「ファイル・システムのマウント・オプション」ウィンドウで,除外するファイル・システム・タイプを指定します。 このウィンドウはさまざまなマウント操作に共通なので,このリストの最後で説明します。 たとえば,UFS ファイル・システムだけを除外するように選択することができます。

「ファイル・システムのマウント・オプション」ウィンドウは,前述したさまざまなマウント操作に共通で,マウント操作の操作特性を追加指定することができます。 実行するマウント操作のタイプによっては,使用できないオプションもあります。 このウィンドウで使用できるオプションは,次のとおりです。

アクセス・モード

使用可能にしたいアクセス・タイプを選択します。

読み/書き

権限のあるユーザがファイル・システム内のファイルから読み取ったり,ファイルを書き込んだりできるようにするには,このオプションを選択します。

読み取り専用

権限のあるユーザがファイル・システムからファイルの読み取りだけを行えるようにしたり,CD-ROM ボリュームなどの読み取り専用メディアをマウントするには,このオプションを選択します。

ファイル・システム・タイプ

メニューから,次のいずれかのオプションを選択します。

指定なし

すべてのファイル・システムを指定するには,このオプションを選択します。

AdvFS

Advanced File System タイプを指定するには,このオプションを選択します。 詳細については,『AdvFS 管理ガイド』または advfs(4) を参照してください。

UFS

UNIX ファイル・システム・タイプを指定するには,このオプションを選択します。 このファイル・システムの説明については,6.1.4 項を参照してください。

NFS

ネットワーク・ファイル・システムを指定するには,このオプションを選択します。 詳細については,『ネットワーク管理ガイド:サービス編 』と, nfs(4) を参照してください。

CDFS

コンパクト・ディスク読み取り専用ファイル・システムを指定するには,このオプションを選択します。 詳細については, cdfs(4) を参照してください。

その他

次に説明する「その他のファイル・システム・タイプ:」フィールドに独自のファイル・システムを入力するには,このオプションを選択します。

その他のファイル・システム・タイプ

メモリ・ファイル・システム (RAM ディスク) の mfs など,指定するファイル・システムを入力します。 サポートされているファイル・システムについての詳細は, mount(8) を参照してください。 また,メモリ・ファイル・システムの newfs(8) など,個々のファイル・システムのリファレンス・ページも参照してください。

拡張マウント・オプション

ファイル・システムに対する拡張マウント・オプションを入力します。 たとえば,システム・クラッシュなどでファイル・システムが正常にディスマウントされなかった場合でもそのファイル・システムをマウントできるようにする,dirty オプションを入力できます。 各種のオプションについての詳細は, mount(8) を参照してください。

オプションを指定したら [完了] ボタンを選択して,マウント操作を行い SysMan Menu オプションに戻ります。 「マウント操作」ウィンドウに戻って新しいマウント操作を行うには,[戻る] ボタンを使用します。 マウント操作を打ち切るには,[終了] ボタンを使用します。

フィールドのデータが不完全か誤っている場合は,マウント操作の開始前に,データを修正するように求められます。

6.4.5    SysMan によるローカル・ディレクトリの共用

ファイルの共用を行う場合は,ファイル・システムを /etc/exports ファイルに追加します。 この追加により,他のホスト・システムのユーザは,NFS (ネットワーク・ファイル・システム) を介して共用ディレクトリをマウントすることができます。 ASU (Advanced Server for UNIX) をインストールして実行している場合は,PC クライアントとファイル・システムを共用することもできます。 『Advanced Server for UNIX コンセプトとプランニング・ガイド』を参照してください。

また,リモート・ホストが共用ディレクトリをマウントできるように,ご使用のシステムへのネットワーク・アクセスを使用可能にしなければならないこともあります。 たとえば,ホストを /etc/hosts ファイルに追加して,NFS を設定し,dxhosts を実行します。 共用ファイル・システムへの接続を許可するようにシステムを構成する方法については,『ネットワーク管理ガイド:サービス編』を参照してください。

dxfileshare グラフィカル・ユーザ・インタフェースを使用して,共用ファイル・システムを管理することもできます。 このインタフェースは,コマンド行または CDE の「アプリケーション・マネージャ - 日常管理」フォルダから起動できます。 このフォルダ内の「ファイル共有」オプションを参照してください。 このインタフェースには,オンライン・ヘルプがあります。 このインタフェースの起動についての詳細は, dxfileshare(8) を参照してください。

共用ファイル・システムの唯一の前提条件は,共用に適したディスク・ファイル・システムがすでに作成されていることです。 作成方法は,6.3.1 項 (手動) または 6.4.7 項 (SysMan Menu オプションの使用) のとおりです。 共用ファイル・システムは,ディレクトリのパス名 (たとえば,/usr/users/share) で指定します。

ファイル・システム共用オプションは,次の SysMan Menu [ストレージ] ブランチで使用できます。

- ストレージ [storage]
    - ファイルシステム管理ユーティリティ [filesystems]
        - 一般的なファイルシステム・ユーティリティ [generalfs]
            | ローカル・ディレクトリ(/etc/exports)の共有 [export]
 

6.4.5.1    ファイル・システムの共用

既存のファイル・システムを共用するには,次の手順に従います。

  1. 「ローカル・ディレクトリの共有: hostname.xxx.yyy.xxx」ウィンドウの最初のボックスに,既存の共用がディレクトリ・パス名で表示されます。

    [追加...] ボタンを押して,ディレクトリをリストに追加します。 「ローカル・ディレクトリの共有: ローカル・ディレクトリの追加」ウィンドウが開きます。

  2. 「共有するディレクトリ:」フィールドに,/usr/users/share/tools などのディレクトリ・パス名を入力します。

  3. ディレクトリを読み取り/書き込みアクセスで共用するか,読み取り専用アクセスで共用するかを選択します。 省略時には,「読み書き両用」が選択されます。

  4. 適切なすべてのホスト (リモート・システム) についてディレクトリを共用するか,次のように指定されたホストについてだけディレクトリを共用するかを選択します。

    [すべて]

    すべてのホストの場合には,これを選択します。

    [選択]

    選択したホストだけの場合には,これを選択します。

  5. 前の手順で [選択] を選択した場合は,ホスト名とアドレス (たとえば,dplhst.xxx.yyy.com) を入力します。 このホストは,/etc/hosts ファイルまたはドメイン・ネーム・サーバ (DNS) によってローカル・ホストが認識できなければなりません。 詳細については,『ネットワーク管理ガイド:サービス編』を参照してください。

  6. [了解] を選択して,データを有効にしダイアログ・ボックスをクローズします。 そして,「ローカル・ディレクトリの共有: host name」ウィンドウに戻ります。

    すべての変更は,このウィンドウで [了解] を選択しない限り適用されません。

    [了解] を選択すると,そのディレクトリの共用が可能になります。

6.4.5.2    共用ファイル・システムの削除

共用を外すには,次のように同じユーティリティを使用します。

  1. アクセス・リストからホストを削除します。

  2. 読み取り/書き込み許可を変更して共用ファイル・システムへのアクセスを変更するか,選択したホストをアクセス・リストから削除します。

  3. すべてのアクセスを防止するには,共用リストから共用ファイル・システムを削除します。

6.4.6    SysMan によるネットワーク・ファイル・システムのマウント

ネットワーク・ファイル・システム (NFS) を使用すると,他のホストと共用 (エクスポート) される共用ファイル・システムをマウントすることができます。 リモート・ホストへのネットワーク・アクセスを設定するなど,ローカル・システム (ホスト) を構成して NFS 共用ファイル・システムをインポートしなければなりません。 リモート・システム (ホスト) を構成して,/etc/exports ファイルに自分のシステムを指定しファイル・システムを共用またはエクスポートしなければなりません。 次のいくつかの方法で,NFS 共用ファイル・システムをマウントできます。

リブートすると解除される,一時的なマウント。

マウント・ポイントが作成され,現在のセッションの間だけファイル・システムが接続されます。 何らかの理由でシステムがシャットダウンされると,マウント・ポイントはそのまま残りますが,ファイル・システムの接続は失われます。 この接続は,システムのリブート時には再接続されません。

ローカル・システムの /etc/fstab ファイルに共用 NFS ファイル・システムを指定することによる,永続的なマウント。

たとえば,/etc/fstab ファイルには,次のような NFS ファイル・システムのエントリがすでにいくつか定義されている場合があります。

/usr/lib/toolbox@ntsv /usr/lib/toolbox nfs rw,bg,soft,nosuid 0 0
 

/etc/fstab ファイルの構造については,6.3.3 項を参照してください。

NFS automount ユーティリティによる,ユーザの要求に応じた自動マウント。

このオプションの使用については,『ネットワーク管理ガイド:サービス編 』と, automount(8) を参照してください。 automount を使用すると,ローカル・ユーザはローカル・システムにエクスポートされ共用されるファイル・システムを,透過的にマウントすることができます。 ユーザからのマウント要求に対して絶えず応答する必要はありません。

この項では,NFS 共用を /etc/fstab ファイルに永続的に追加したり,共用ファイル・システムを一時的にインポートする方法を説明します。

SysMan Menu オプションを使用した,ファイル・システムの共用 (エクスポート) の処理については,6.4.5 項を参照してください。

「ファイル共用」グラフィカル・ユーザ・インタフェース (GUI) を使用して,共用ファイル・システムを管理することができます。 このインタフェースは,コマンド行,または CDE の「アプリケーション・マネージャ - 日常管理」フォルダから起動することができます。 このフォルダ内の「ファイル共有」オプションを参照してください。 このインタフェースには,オンライン・ヘルプがあります。 このインタフェースの起動については, dxfileshare(8) を参照してください。

6.4.6.1    共用ネットワーク・ファイル・システムのマウント

NFS ファイル・システムのマウント・オプションが SysMan Menu [ストレージ] オプションで使用できます。 メニューを展開して,[一般的なファイルシステム・ユーティリティ - ネットワーク・ディレクトリ(/etc/fstab)のマウント] を選択します。 共用ファイル・システムをマウントするには,次の手順に従ってください。

  1. 「ネットワーク・ディレクトリのマウント: hostname」ウィンドウに,/etc/fstab ファイルにリストされている使用可能な既存の NFS 共用ファイル・システムが表示されます。 このリストには次の情報があります。

    ディレクトリとホスト

    ホストの名前と,ローカル・システムにエクスポートされるディレクトリの名前。

    マウント先

    共用ファイル・システムがマウントされるローカル・マウント・ポイント。 このマウント・ポイントは,/tools/bin/imaging のような,ディレクトリのパス名です。

    オプション

    ディレクトリのアクセス・オプション。 アクセス・オプションには,次のものがあります。

    読み書き両用

    共用ファイル・システム上のデータの読み書きをユーザに許可します。 ただし,共用ファイル・システムをエクスポートしているホストが設定したアクセス条件に依存します。

    読み取り専用

    共用ファイル・システム上のデータの読み取りだけをユーザに許可します。

    リブート

    システムが何らかの理由でシャットダウンされた後に再度マウントが行われるかどうかを,次のように示します。

    true

    永続的なマウント。 エントリがローカル・システムの /etc/fstab ファイルに存在し,リブート後もマウントされます。

    false

    一時的なマウント。 ローカル・システムの /etc/fstab ファイルにエントリが存在せず,リブート後はマウントされません。

6.4.6.2    ネットワーク・ディレクトリの追加

ファイル・システムを NFS 共用ディレクトリのリストに追加するには,[追加...] ボタンを選択します。 「ネットワーク・ディレクトリのマウント: ネットワーク・ディレクトリの追加」ウィンドウが表示されます。

このオプションを使用すると,ファイル・システムが,省略時のオプション hard (応答を受信するまでリトライ) と bg (バックグラウンドでのマウント) でマウントされます。 これらのオプションについての詳細は, mount(8) を参照してください。

6.4.7    SysMan による UFS ファイル・システムの作成

newfs コマンドによる UFS ファイル・システムの手動作成については,6.3.1 項で説明しています。 同じ前提条件とデータ・ソースが,SysMan Menu オプションによるファイル・システムの作成時にも適用されます。 ただし,SysMan Menu オプションでは,標準ディスク・パーティションのみに制限されます。 カスタム・パーティションを使用する場合は,『ハードウェア管理ガイド』に説明されている diskconfig ユーティリティを使用してください。

まず,次のデータ項目を取得します。

新しい UFS ファイル・システムを作成するオプションは,SysMan Menu の [ストレージ] オプションから使用できます。 メニューを開いて,[UNIX File System (UFS) ユーティリティ - 新しい UFS ファイルシステムの作成] を選択します。 次に,「新しい UFS ファイルシステムの作成」ウィンドウが表示されます。

ファイル・システムを作成するには,次の手順に従います。

  1. 「パーティションか LSM ボリューム」フィールドに,ファイル・システムを格納するディスク・パーティションまたは LSM ボリュームの名前を入力します。

  2. 「ディスク・タイプ」フィールドに,HB00931B93 などの,ディスク・モデルの名前を入力します。

  3. 「拡張 newfs オプション」フィールドに,64 K バイトのブロック・サイズを示す -b 64 など,オプション・フラグを入力します。

    使用するオプションが不確かな場合は,すべてのフィールドをクリアしてから [適用] を選択してください。 これにより,フラグ・オプションのリストを含む,newfs 情報ウィンドウが表示されます。

[了解] を選択して,ファイル・システムを作成し SysMan Menu を終了するか,[適用] を選択して,ファイル・システムを作成し他のファイル・システムの作成を継続します。 操作を終了する場合は,[取消] を選択します。

新しく作成したファイル・システムをマウントするには,6.4.4 項で説明した SysMan Menu オプションの [ファイルシステムのマウント] を使用します。

6.5    クォータの管理

以降の項では,UFS のユーザ・クォータとグループ・クォータについて説明します。 また,AdvFS も,ファイルセットのスペース使用量を制限するクォータをサポートしています。 AdvFS ファイルセットのクォータについては,『AdvFS 管理ガイド』を参照してください。 このドキュメントには,ユーザ・クォータおよびグループ・クォータについての,AdvFS 固有の情報も説明されています。

システム管理者は,ファイル・システムに対してクォータを設定することにより,ユーザ・アカウントおよびグループの単位で使用量の制限を設けることができます。 このため,ユーザ・クォータおよびグループ・クォータは,ファイル・システム・クォータと呼ばれます。 また,ファイル・システム・クォータは,ユーザ・アカウントとユーザ・グループの単位で,使用するディスク・ブロック数を制限することから,ディスク・クォータと呼ばれます。

ユーザ・アカウントおよびグループへのクォータの設定は,ファイル・システムごとに行います。 たとえば,1 つのユーザ・アカウントがファイル・システム上の複数のグループのメンバになり,別のファイル・システム上の別のグループのメンバにもなることができます。 この場合,このユーザ・アカウントに対するファイル・システム制限は,そのファイル・システム上にある,このユーザ・アカウントのファイルに対する制限となります。 ユーザ・アカウントのクォータが超過するのは,そのファイル・システム上で使用しているブロック (または i ノード) 数が超過した場合です。

ユーザ・アカウントのクォータと同様,グループのクォータが超過するのは,特定のファイル・システム上で使用されているブロック (または i ノード) 数が超過した場合です。 ただし,グループのブロックまたは i ノードを使用して,グループのクォータとしてカウントされるのは,作成されたファイルにグループのID (GID) が割り当てられている場合だけです。 グループのメンバが書き込みを行っても,グループの GID が割り当てられていないファイルは,グループのクォータとしてはカウントされません。

注意

クォータ・コマンドでのブロック・サイズは,一般的な 512 バイトではなく,1024 バイトで表示されます。

ユーザ・アカウントまたはユーザ・グループに割り当て可能なブロック数および i ノード数 (またはファイル数) の上限を設定するために,ファイル・システムにクォータを適用することができます。 各ファイル・システム上で,ユーザまたはユーザ・グループごとに,異なるクォータ値を設定することができます。 /usr/users などのホーム・ディレクトリを持つファイル・システムは他のファイル・システムと比較して使用量が増大する可能性が高いため,これらのファイル・システムにクォータを設定することが考えられます。 /tmp ファイル・システムにクォータを設定することは避けてください。

6.5.1    物理クォータ制限と論理クォータ制限

ファイル・システム・クォータには,論理 (ソフト) クォータ制限と物理 (ハード) クォータ制限を設定することができます。 物理制限に達した場合,制限を超えるようなディスク・スペースの割り当てまたはファイルの作成は許可されません。 物理制限とは,クォータ制限が有効な場合に許可される値を 1 単位 (ブロック,ファイル,i ノードなど) 超えた値です。

クォータは,上限値まで (上限値は含まない) を指します。 たとえば,ファイル・システムの各ユーザ・アカウントに対して 10,000 ディスク・ブロックの物理制限を設定した場合,9,999 ディスク・ブロックが割り当てられると,アカウントは物理制限に達します。 ユーザ・アカウントに対して最大 10,000 ブロックを完全に割り当てたい場合は,物理制限として 10,001 を設定しなければなりません。

論理制限ではある一定の間 (猶予期間) 上限を超えることができます。 猶予期間を過ぎても論理制限を越えている場合,十分なディスク・スペースを解放するかまたはファイルを削除して,論理制限に設定されたディスク・スペース使用量またはファイル数を下回るまで,ディスク・スペースの割り当てまたはファイルの作成は許可されません。

システム管理者は,ユーザが現在の作業を終了し,ファイルを削除して設定されている制限をクォータが下回るようにするための十分な猶予期間を設定しなければなりません。

注意

ファイルの書き込み中に,物理制限および論理制限の両方のクォータ制限に到達した場合は,ファイルが部分的に書き込まれることがあります。 この結果,ファイルを別の場所に保存するか,処理を停止しない限り,データが失われます。

たとえば,ファイルの編集中にクォータ制限を超えた場合は,データが失われる可能性があるため,エディタを打ち切ったり,ファイルへの書き込みを行ったりしないでください。 この場合,使用中のエディタから一度抜け出し,ファイルを削除してからエディタに戻ります。 または別のファイル・システムにファイルを書き込んだ後,クォータに達したファイル・システムから不要なファイルを削除し,ファイルをもとのファイル・システムに移動して戻すことができます。

6.5.2    ファイル・システム・クォータの設定

UFS にファイル・システム・クォータを設定するには,次の手順を実行します。

  1. システム構成にファイル・システム・クォータ・サブシステムが組み込まれるようにシステム構成ファイルを編集します。 /sys/conf/NAME システム構成ファイルに次の行を追加します。

    options       QUOTA
    

  2. /etc/fstab ファイルを編集してファイル・システムのエントリの 4 番目のフィールドを変更し,rw および userquotagroupquota を設定します。 詳細については, fstab(4) を参照してください。

  3. quotacheck コマンドを使用して,クォータ・ファイルを作成します。

    クォータ・サブシステムは,現在の割り当てとクォータの上限値をクォータ・ファイルに格納します。 quotacheck コマンドについての詳細は, quotacheck(8) を参照してください。

  4. edquota コマンドを使用してクォータ・エディタを起動し,各ユーザに対するクォータ・エントリを作成します。

    edquota は,指定した各ユーザまたは各グループごとにテキスト・エディタで編集できる一時的な ASCII ファイルを作成します。 このファイルを編集して,クォータを設定する各ファイル・システムのエントリ,および論理制限,物理制限,および猶予期間を記述します。

    2 つ以上のユーザ名またはグループ名を edquota コマンド行に指定した場合,編集内容は各ユーザまたはグループに対して反映されます。 またプロトタイプを使用すると,6.5.3 項に説明されているように,ユーザ・グループに対するクォータを迅速に設定することもできます。

  5. quotaon コマンドを使用して,クォータ・システムを起動します。

    設定したクォータの有効化についての詳細は, quotaon(8) を参照してください。

  6. システム・スタートアップ時にファイル・システム・クォータを確認して有効にするには,次のコマンド使用して /etc/rc.config ファイルのファイル・システム・クォータ構成変数を設定します。

    # /usr/sbin/rcmgr set QUOTA_CONFIG yes
    

    注意

    QUOTQ_CONFIG に yes を設定すると,スタートアップ時に quotacheck コマンドが UFS ファイル・システムに対して実行されます。 AdvFS では,このサービスは必要ありません。 次のコマンドを使用すると,スタートアップ時に quotacheck コマンドを,UFS と AdvFS ファイル・システムの両方に対して強制的に実行することができます。 ただし,この使用方法はお勧めしません。

    # /usr/sbin/rcmgr set QUOTACHECK_CONFIG -a
    

    省略時の,UFS だけの quotacheck 動作に戻すには,次のコマンドを使用します。

    # /usr/sbin/rcmgr set QUOTACHECK_CONFIG ""
    

クォータ制限を解除する場合は,quotaoff コマンドを使用します。 また,umount コマンドは,クォータ制限を解除してからファイル・システムをアンマウントします。 詳しい説明については, quotaoff(8) を参照してください。

6.5.3    ユーザ・アカウントへのファイル・システム・クォータの設定

ファイル・システム・クォータをユーザに設定するには,クォータ・プロトタイプを作成するか,既存のクォータ・プロトタイプをそのユーザ用にコピーします。 クォータ・プロトタイプは,既存のユーザ・クォータをプロトタイプ・ファイルにしたもので,他のユーザに対して同一のユーザ・クォータを生成する場合に使用できます。 プロトタイプの作成には,edquota コマンドを使用します。 クォータ・プロトタイプがない場合は,次の手順で作成してください。

  1. root でログインし,次の構文で edquota コマンドを使用します。

    edquota proto-user users

    たとえば,ユーザ eddie に対して large という名前のクォータ・プロトタイプを設定するには,次のコマンドを入力します。

    # edquota large eddie
    

    これによって,ユーザ eddie に対して large クォータ・プロトタイプが作成されます。 users 引数には,実際のログイン名を使用しなければなりません。

  2. edquota プログラムでオープンされたクォータ・ファイルを編集して,ユーザ eddie からアクセスできる各ファイル・システムにクォータを設定します。

既存のクォータ・プロトタイプをユーザ用に使用するには,次の手順に従います。

  1. edquota コマンドを次の構文で入力します。

    edquota -p proto-userusers

    たとえば,large プロトタイプを使用してユーザ marcy に対するファイル・システム・クォータを設定するには,次のコマンドを入力します。

    # edquota -p large marcy
    

  2. ユーザ marcy に対して,期待したとおりにクォータが設定されているか確認します。

    期待したとおりでない場合は,クォータ・ファイルを編集して,ユーザ marcy からアクセスできる各ファイル・システムに新しいクォータを設定します。

6.5.4    ファイル・システム・クォータの確認

ユーザ・ファイル・システム・クォータを設定している場合,クォータ・システムを定期的に確認する必要があります。 quotacheckquota,および repquota コマンドを使用して,設定された上限を実際の使用量と比較することができます。

quotacheck コマンドは,実際のブロック使用量が,設定された制限に合っているかどうかを確認します。 quotacheck コマンドは,ファイル・システムでクォータが最初に有効になったとき (UFS と AdvFS) と,各リブート後 (UFS のみ) の 2 回実行してください。 このコマンドは,システムが処理をまったく行っていない場合に,より正確な情報を示します。

quota コマンドは,ファイル・システムの各ユーザごとに,実際のブロック使用量を表示します。 quota コマンドは,root ユーザのみが実行できます。

repquota コマンドは,指定されたファイル・システムに関する実際のディスク使用量とクォータを表示します。 ユーザごとに,現在のファイル数とディスク使用量 (K バイト単位) をクォータとともに表示します。

設定済みのクォータを変更する場合は,edquota コマンドを使用します。 このコマンドは各ユーザの上限の設定や変更を行うものです。

ファイル・システム・クォータについての詳細は, quotacheck(8)quota(1),および repquota(8) を参照してください。

6.6    ファイル・システムのバックアップとリストア

AdvFS および UFS の両方のファイル・システム用の主なバックアップおよびリストア・ユーティリティは,vdump ユーティリティと vrestore ユーティリティです。 これらのユーティリティは,AdvFS ファイル・システムと UFS ファイル・システムのローカル操作で使用されます。 これらのユーティリティについては, vdump(8)vrestore(8) を参照してください。 AdvFS および UFS の両方のファイル・システム用のリモート・バックアップ操作とリモート・リストア操作を行うユーティリティは,rvdumprvrestore です。

UFS ファイル・システムだけをバックアップする管理者は, dump(8)restore(8) で,従来のユーティリティについて参照してください。

AdvFS のバックアップおよびリストア操作の例は,『AdvFS 管理ガイド』で説明しています。 UFS のバックアップおよびリストア操作の例は,第 9 章で説明しています。 この章では,ブート可能テープの作成処理についても説明しています。 このテープは,厳密な意味ではバックアップではありませんが,ルート・ファイル・システムと重要なシステム・ファイルのブート可能テープのコピーを作成することができます。 ルート・ディスクの破壊などの障害時に,このテープからシステムをブートして,システムを回復することができます。

この他にも,第 9 章で説明されている Networker Save and Restore というアーカイブ・サービスがあります。

6.7    ファイル・システムのモニタリングとチューニング

以降の項では,UFS ファイル・システムの情報表示および検査に使用するコマンドについて説明します。 また,ファイル・システムのチューニングの基本的な情報についても説明します。 チューニングについての詳細は,『システムの構成とチューニング』を参照してください。

6.7.1    UFS の一貫性の検査

fsck プログラムは,UFS ファイル・システムを検査して,ディスクへのファイルの保存が確実に行えるように修復を行います。 fsck プログラムは,参照されていない i ノード,空きリスト内の存在しないブロック,スーパブロック内のカウントの誤りなどの,ファイル・システムの矛盾を修復できます。

ファイル・システムは,不適切なシャットダウン手順,ハードウェア障害,停電,電源のサージなど,いろいろな状況で壊れることがあります。 また,マウントされているファイル・システムに物理的に書き込み保護をかけたり,マウントされているファイル・システムをオフラインにしたり,システムをシャットダウンする前に sync コマンドを使用しなかった場合にも,ファイル・システムが壊れることがあります。

システムはブート時に fsck を非対話形式で実行し,安全に行える修復については自動的に実行します。 システムが予期していなかった矛盾を発見すると fsck プログラムは終了し,システムはシングルユーザ・モードになります。 この際,fsck プログラムを手動で実行するよう警告メッセージが表示されます。 手動で実行すると,fsck はプロンプトを表示するため,ユーザは yes または no で応えることができます。

fsck プログラムを呼び出すコマンドの構文は,次のとおりです。

/usr/sbin/fsck [options ...] [file_system ...]

ファイル・システムの指定を省略すると,/etc/fstab ファイル内の全ファイル・システムが検査されます。 ファイル・システムを指定する場合は,必ず raw デバイスを使用します。

コマンド・オプションについての説明は, fsck(8) を参照してください。

注意

ルート・ファイル・システムを検査するには,シングルユーザ・モードでなければなりません。 また,ファイル・システムは読み取り専用でマウントされていなければなりません。 システムをシャットダウンしてシングルユーザ・モードにするには,第 2 章に説明されている shutdown コマンドを使用します。

6.7.2    ファイル・システムのディスク使用量のモニタリング

適切な量のディスクの空きスペースを確保するには,次のいずれかの方法で,構成されているファイル・システムのディスク使用量を定期的にモニタリングする必要があります。

quota コマンドは,root ユーザのみ使用できます。

6.7.2.1    使用可能な空きスペースの確認

構成されているファイル・システムに十分なスペースを確保するには,df コマンドを定期的に使用して,マウントされているすべてのファイル・システムのディスクの空きスペースの容量を確認しなければなりません。 df コマンドは,指定されたファイル・システムの空きディスク・スペース,または指定されたファイルを含むファイル・システムの空きディスク・スペースについての統計値を表示します。

df コマンドの構文は次のとおりです。

df [- eiknPt ] [-F fstype ] [file ] [ file_system ...]

df コマンドの引数やオプションを省略すると,マウントされているすべてのファイル・システムの空きディスク・スペースが表示されます。 df コマンドは,各ファイル・システムのサイズを 512 バイトのブロック単位で表示します。 ただし,-k オプションを指定すると,サイズは K バイトのブロック単位で表示されます。 このコマンドは,スペースの総容量,現在使用中の容量,現在使用可能な (未使用の) 容量,使用率,およびファイル・システムがマウントされているディレクトリを表示します。

AdvFS ファイル・ドメインに対しては,df は各ファイルセットのディスク使用量を表示します。

ファイル・システムがまったくマウントされていないデバイスを指定した場合,df はルート・ファイル・システムの情報を表示します。

ファイル・パス名を指定すると,そのファイルが含まれるファイル・システムの使用可能なディスク・スペース量を表示することができます。

df コマンドにブロック型特殊デバイス名または文字型特殊デバイス名を指定して,アンマウントされたファイル・システムの空きスペースを表示することはできません。 この場合には,dumpfs コマンドを使用してください。

詳細については, df(1) を参照してください。

次の例では,マウントされているすべてのファイル・システムに関するディスク・スペース情報を表示しています。

# /sbin/df 
Filesystem         512-blks   used  avail capacity Mounted on
/dev/disk/dsk2a      30686  21438   6178    77%   /
/dev/disk/dsk0g     549328 378778 115616    76%   /usr
/dev/disk/dsk2      101372   5376  85858     5%   /var
/dev/disk/dsk3      394796     12 355304     0%   /usr/users
/usr/share/man@tsts 557614 449234  52620    89%   /usr/share/man
domain#usr          838432 680320  158112   81%   /usr

注意

newfs コマンドは,割り当てやブロック・レイアウト用に,一定の割合のファイル・システム・ディスク・スペースを予約します。 このため df コマンドでは,ファイル・システムの使用量が容量の 100 % を超えた値で報告されることがあります。 tunefs コマンドで -minfree フラグを指定することにより,この割合を変更することができます。

6.7.2.2    ディスク使用量の確認

ファイル・システムに使用可能スペースが十分にない場合は,du コマンドまたは quot コマンドを使用して,スペースがどのように使用されているかを確認します。

du コマンドは,ディスク・スペース割り当てを,ディレクトリごとに正確に表示します。 この情報によって,ディスク・スペースを最も多く使用しているユーザや,ディスク・スペースを解放すべきユーザを判断することができます。

du コマンドの構文は次のとおりです。

/usr/bin/du [- aklrsx ] [ directory... filename...]

du コマンドは,指定されたディレクトリ,指定されたファイル名,または現在の作業ディレクトリ (何も指定されたなかった場合) 内の全ディレクトリに含まれるブロックの数を再帰的にリストして表示します。 システムが使用するクラスタ・サイズにかかわらず,ブロックは,各ファイルの間接ブロックを 1 K バイト単位でカウントします。

オプションを省略すると,各ディレクトリに対するエントリのみが生成されます。 コマンド・オプションについての詳細は,リファレンス・ページの du(1) を参照してください。

次の例では,/usr/users ディレクトリの各サブディレクトリで使用しているブロック数を表示しています。

# /usr/bin/du -s /usr/users/*  
440     /usr/users/barnam
43      /usr/users/broland
747     /usr/users/frome
6804    /usr/users/norse
11183   /usr/users/rubin
2274    /usr/users/somer

この情報から,ユーザ rubin が最も多くのディスク・スペースを使用していることが分かります。

次の例では,/usr/users/rubin/online ディレクトリ内の各ファイルおよびサブディレクトリで使用しているスペースを表示しています。

# /usr/bin/du -a /usr/users/rubin/online
1       /usr/users/rubin/online/inof/license
2       /usr/users/rubin/online/inof
7       /usr/users/rubin/online/TOC_ft1
16      /usr/users/rubin/online/build
  .
  .
  .
251     /usr/users/rubin/online

du コマンドの代わりに,ls -s コマンドを使用してファイルのサイズと使用量を取得することもできます。 使用量を取得する際には,ls -l コマンドは使用しないでください。 ls -l コマンドでは,ファイル・サイズだけが表示されます。

quot コマンドを使用すると,指定したファイル・システム内で現在各ユーザが所有しているブロック数をリストすることができます。 quot コマンドの実行には,root ユーザ特権が必要です。

quot コマンドの構文は次のとおりです。

/usr/sbin/quot [-c] [-f] [-n] [file_system]

次の例では,/dev/disk/dsk0h ファイル・システム内で各ユーザが使用しているブロック数と,各ユーザが所有しているファイル数を表示します。

# /usr/sbin/quot -f /dev/disk/dsk0h 

デバイスをマウントするとブロック型デバイス特殊ファイルはビジーになるため,UFS ファイルの情報を表示するためには文字型デバイス特殊ファイルを使用しなければなりません。

詳細は, quot(8) を参照してください。

6.7.3    UFS 読み取り効率の改善

UFS の読み取り効率を向上するには,tunefs コマンドを使用して,レイアウト・ポリシに影響する,ファイル・システムの動的パラメータを変更します。

tunefs コマンドの構文は次のとおりです。

tunefs [- a maxc ] [- d rotd ] [- e maxb ] [- m minf ] [- o op t] [ file_s ]

tunefs コマンドは,マウントされたファイル・システムとアンマウントされたファイル・システムの両方に使用できます。 ただし,変更は,アンマウントされたファイル・システムに対してコマンドを使用した場合のみ可能です。 ルート・ファイル・システムを指定した場合は,変更内容を有効にするにはリブートしなければなりません。

コマンド・オプションを使用すると,ディスク・パーティション・レイアウト・ポリシに影響する動的パラメータを指定することができます。 コマンド・オプションについての詳細は, tunefs(8) を参照してください。 UFS サブシステム属性についての詳細は, sys_attrs_ufs(5) を参照してください。

6.8    ファイル・システムのトラブルシューティング

次のツールを使用すると,UFS ファイル・システムに関連する問題の解決に役立ちます。