Solaris のシステム管理

第 27 章 ファイルシステムの作成手順

この章では、UFS ファイルシステム、一時ファイルシステム、ループバックファイルシステムをハードディスク上で作成して管理する方法について説明します。この章で説明する手順は、次のとおりです。

UFS ファイルシステムの作成

ファイルシステムは、インストールプロセスの一部としてシステムソフトウェアによって自動的に作成されるので、UFS ファイルシステムを作成しなければならないことはほとんどありません。次の場合には、UFS ファイルシステムを作成する (または作成し直す) 必要があります。

次の手順では、newfs コマンドを使用して UFS ファイルシステムを作成します。newfs コマンドは、新しいファイルシステムを作成する mkfs への便利なフロントエンドです。Solaris 2.x システムの場合、デフォルトでは、1 シリンダ当たりのトラック数や 1 トラック当たりのセクター数のような newfs のパラメタは、新しいファイルシステムを入れるディスクのラベルから読み込まれるので、選択したオプションは mkfs コマンドに渡され、ファイルシステムが作成されます。

ファイルシステムパラメタ

ディスクスライス上で新しいファイルシステムを作成するには、ほとんどの場合に newfs コマンドを使用します。表 27-1 は、newfs コマンドで使用するデフォルトのパラメタを示しています。

表 27-1 newfs コマンドで使用するデフォルトのパラメタ

パラメタ 

デフォルト値 

ブロックサイズ 

8K バイト 

フラグメントサイズ 

1K バイト 

最小空き領域 

10% 

回転遅延 

デバイスに依存 

最適化のタイプ 

領域 

i ノード数 

2K バイトのディスク領域ごとに 1 個 

前提条件

UFS ファイルシステムを作成する方法

  1. 「前提条件」の前提条件を満たしているかどうかを確認します。

  2. ファイルシステムを作成します。

    # newfs [-N] [-b size] [-i bytes] /dev/rdsk/device-name
    

    -N

    newfsmkfs に渡すすべてのパラメタを表示する。ファイルシステムは作成されない

    -b size

    ファイルシステムのブロックサイズを設定する。デフォルトは 8192 ブロック 

    -i bytes

    i ノード当たりのバイト数を設定する。デフォルトは 2048 バイト 

    device-name

    新しいファイルシステムを入れるデバイス 


    注意 - 注意 -

    次の手順を実行する前に、スライスに合ったデバイス名を指定したか確認してください。間違ったスライスを指定すると、その内容は新しいファイルの作成時に消去されます。


    システムから確認を促すプロンプトが表示されます。

  3. UFS ファイルシステムが作成されていることを確認するには、fsck コマンドを使用して新しいファイルシステムをチェックします。

    # fsck /dev/rdsk/device-name
    

    device-name

    新しいファイルシステムを入れるデバイス名 

    このユーティリティは、新しいファイルシステムの整合性をチェックして、見つかった問題を出力し、問題を修復する前にプロンプトを表示します。fsck の詳細は、第 31 章「ファイルシステムの完全性チェック」を参照してください。

例 - UFS ファイルシステムを作成する

次の例では、/dev/rdsk/c0t3d0s7 上でファイルシステムを作成します。

# newfs /dev/rdsk/c0t3d0s7
newfs: construct a new file system /dev/rdsk/c0t3d0s7 (y/n)? y
/dev/rdsk/c0t3d0s7:     163944 sectors in 506 cylinders of 9 tracks, 
       36 sectors 83.9MB in 32 cyl groups (16 c/g, 2.65MB/g, 1216 i/g)
super-block backups (for fsck -b #) at:
 32, 5264, 10496, 15728, 20960, 26192, 31424, 36656, 41888,
 47120, 52352, 57584, 62816, 68048, 73280, 78512, 82976, 88208,
 93440, 98672, 103904, 109136, 114368, 119600, 124832, 130064,
 135296, 140528, 145760, 150992, 156224, 161456,

次の手順

ファイルシステムを使用可能にするための操作 

参照先 

mount コマンドを使用してファイルシステムをマウントする

「UFS ファイルシステムをマウントする方法」

/etc/vfstab 内でエントリを作成し、システムのブート時にファイルシステムを自動的にマウントする

/etc/vfstab ファイルにエントリを追加する方法」

一時ファイルシステム (TMPFS) の作成

TMPFS が最もよく使用されるのは /tmp ディレクトリです。デフォルトでは、SunOS システムソフトウェアの /tmp ディレクトリは TMPFS であり、そのエントリはデフォルトの /etc/vfstab ファイルに入っています。TMPFS ディレクトリ内のファイルは、リブートまたはマウント解除すると削除されます。

複数の一時ファイルシステムを作成した場合は、そのすべてが同じシステム資源を使用するということに注意してください。mount コマンドの -o オプションを使用して TMPFS のサイズを制限しなければ、ある TMPFS ディレクトリの下で作成されたファイルが、他の TMPFS にとっても使用可能な領域を使い果たします。

一時ファイルシステムを作成する方法

  1. スーパーユーザーになります。

  2. 必要に応じて、TMPFS をマウントしたいディレクトリを作成し、アクセス権と所有権を設定します。

  3. 一時ファイルシステムを作成します。

    # mount -F tmpfs swap mount-point
    

    -F tmpfs swap

    TMPFS ファイルシステム 

    mount-point

    TMPFS ファイルシステムとしてマウントするディレクトリ 

  4. mount コマンドを使って、/visitors という一時ファイルシステムが作成され、/usr/tmp ディレクトリにマウントされていることを確認します。

    $ mount
                            .
                            .
                            .
    /visitors on /usr/tmp on Wed May 28 15:27:16 1997
    $ ls /usr/tmp
    NTa0006h    ps_data      visitors

例 - 一時ファイルシステムを作成する

次の例では、新しいディレクトリ /export/reports を作成し、そのディレクトリに一時ファイルシステムをマウントします。

# mkdir /export/reports
# chmod 777 /export/reports
# mount -F tmpfs swap /export/reports

詳細は、tmpfs(7FS) のマニュアルページを参照してください。

一時ファイルシステムとして保持する方法

/etc/vfstab ファイルにエントリを追加すると、リブートまたはマウント解除しても TMPFS として保持できます。このファイルを編集し、各フィールドをタブで区切って次のようなエントリを追加します。

swap - mount-point  tmpfs   -  yes  -

mount-point

デフォルトのマウントポイントディレクトリ 


注意 - 注意 -

TMPFS として保持されるだけで、そこに作成されたファイルは保持されません。


/etc/vfstab ファイルの編集の詳細は、第 28 章「ファイルシステムのマウントとマウント解除の手順」を参照してください。

ループバックファイルシステム (LOFS) の作成

LOFS は、既存のファイルシステムへの代替パスを提供する仮想ファイルシステムです。他のファイルシステムをループバックファイルシステムにマウントしても、元のファイルシステムは変化しません。

/etc/vfstab ファイルにエントリを追加すると、リブートまたはマウント解除する間も LOFS を保持できます。


注意 - 注意 -

ループバックマウントは慎重に作成してください。これらは仮想ファイルシステムなので、ユーザーやアプリケーションを混乱させる可能性があります。


ループバックファイルシステムを作成する方法

  1. スーパーユーザーになります。

  2. ループバックファイルシステムをマウントしたいディレクトリを作成し、適切なアクセス権と所有権を与えます。

  3. ループバックファイルシステムを作成します。

    # mount -F lofs loopback-directory mount-point
    

    loopback-directory

    ループバックマウントポイントにマウントするファイルシステム 

    mount-point

    LOFS をマウントするディレクトリ 

例 - ループバックファイルシステムを作成する

次の例は、chroot コマンドといっしょに新しいループバックファイルシステムを使用して、プロセスやプロセスファミリに完全な仮想ファイルシステムをアクセスできる方法を示しています。

# mount -F lofs / /tmp/newroot
# chroot /tmp/newroot command

詳細は、lofs(7FS) または mount(1M) のマニュアルページを参照してください。

ループバックファイルシステムを保持する方法

/etc/vfstab ファイルにエントリを追加すると、リブートまたはマウント解除する間もループバックファイルシステムを保持できます。ファイルを編集し、各フィールドをタブで区切って次のようなフィールドをファイルの終わりに追加します。

/    -   mount-point  lofs   -   yes     -

mount-point

デフォルトのマウントポイントディレクトリ (/tmp/newroot など)


注意 - 注意 -

ループバックエントリは、/etc/vfstab ファイル内の最後のエントリでなければなりません。/etc/vfstab ファイル内でループバックファイルシステムのエントリが、そこに組み込まれるファイルシステムよりも前にあると、ループバックファイルシステムを作成できません。


/etc/vfstab ファイルの詳細は、第 28 章「ファイルシステムのマウントとマウント解除の手順」を参照してください。