Solaris のシステム管理 (ネットワークサービス)

ファイルシステムのマウント

ファイルシステムをマウントするには、いくつかの方法があります。システムをブートするときに自動的にマウントされるようにするか、コマンド行から必要に応じてマウントするか、オートマウンタを使用します。オートマウンタには、ブート時のマウントやコマンド行からのマウントに比較していくつもの利点がありますが、状況によってこの 3 つの方法を組み合わせる必要があります。また、ファイルシステムのマウント時に使用するオプションに応じて、プロセスを有効または無効にする方法がいくつかあります。ファイルシステムのマウントに関するすべての作業のリストについては、次の表を参照してください。

表 5–2 ファイルシステムのマウントの作業マップ

作業 

説明 

参照先 

ブート時にファイルシステムをマウントします 

システムがリブートされるときに必ずファイルシステムがマウントされるようにする手順。 

「ブート時にファイルシステムにマウントする方法」

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

システムの動作時にファイルシステムをマウントする手順。この手順はテストに有効です。 

「コマンド行からファイルシステムをマウントする方法」

オートマウンタによりマウントします 

コマンド行を使用せずに、要求に応じてファイルシステムにアクセスする手順。 

「オートマウンタによるマウント」

大規模ファイルを避けます 

ファイルシステム上に大規模ファイルが作成されないようにする手順。 

「NFS サーバー上で大規模ファイルを無効にする方法」

クライアント側フェイルオーバーを開始します 

サーバーの不良時、動作中のファイルシステムへの自動切り換えを有効にする手順。 

「クライアント側フェイルオーバーを使用する方法」

クライアントに対するマウントアクセスを無効にします 

任意のクライアントがリモートシステムにアクセスする機能を無効にする手順。 

「1 つのクライアントに対するマウントアクセスを無効にする方法」

ファイアウォールを越えてファイルシステムにアクセスを提供します 

WebNFS プロトコルでファイアウォールを越えてファイルシステムへのアクセスを許可する手順。 

「ファイアウォールを越えて NFS ファイルシステムをマウントする方法」

NFS URL を使ってファイルシステムをマウントします 

NFS URL を使ってファイルシステムへのアクセスを許可する手順。このプロセスによって、MOUNT プロトコルを使用しないでファイルシステムへのアクセスが可能になります。 

「NFS URL を使用して NFS ファイルシステムをマウントする方法」

Procedureブート時にファイルシステムにマウントする方法

autofs マップを使用するのではなく、ブート時にファイルシステムをマウントするには、次の手順に従います。リモートファイルシステムにアクセスするクライアントごとに、この手順を行う必要があります。

  1. スーパーユーザーになるか、同等の役割を引き受けます。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. ファイルシステムに関するエントリを /etc/vfstab に追加します。

    /etc/vfstab ファイルのエントリ構文は、次のとおりです。

    special  fsckdev  mountp  fstype  fsckpass  mount-at-boot  mntopts

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


    注意 – 注意 –

    NFS クライアントの vfstab エントリも持つ NFS サーバーでは、リブート時のハングアップを避けるために、常に bg オプションを指定する必要があります。詳細は、「NFS ファイルシステム用の mount オプション」を参照してください。



例 5–1 クライアントの vfstab ファイル内のエントリ

wasp サーバーの /var/mail ディレクトリをクライアントマシンにマウントさせたいとします。それには、そのファイルシステムをクライアント上の /var/mail としてマウントし、読み取りと書き込みの両方ができるようにします。この場合は、次の項目をクライアントの vfstab ファイルに追加します。


wasp:/var/mail - /var/mail nfs - yes rw

Procedureコマンド行からファイルシステムをマウントする方法

新規マウントポイントをテストするために、コマンド行からファイルシステムをマウントすることがあります。このようにしてマウントすると、オートマウンタでアクセスできないファイルシステムに、一時的にアクセスすることができます。

  1. スーパーユーザーになるか、同等の役割を引き受けます。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. ファイルシステムをマウントします。

    次のコマンドを入力します。


    # mount -F nfs -o ro bee:/export/share/local /mnt
    

    上の例では、bee サーバーの /export/share/local ファイルシステムが、ローカルシステムの /mnt に読み取り専用でマウントされます。コマンド行からこのようにマウントすることにより、ファイルシステムを一時的に表示することができます。umount を実行するかローカルホストをリブートすると、このマウントは解除されます。


    注意 – 注意 –

    Solaris 2.6 およびそれ以降に出たパッチに置き換えられた mount コマンドでは、無効なオプションを指定しても警告されません。解釈できないオプションがあると無視されるだけです。予想外の結果が生じるのを避けるために、使用するオプションはすべて確認してください。


オートマウンタによるマウント

「autofs 管理作業の概要」では、オートマウンタによるマウントの確立とサポートについて詳細に説明します。通常のシステムに変更を加えることなく、リモートファイルシステムが /net マウントポイントでアクセスできるようになります。前述の例の /export/share/local ファイルシステムをマウントする場合は、次のように入力します。


% cd /net/bee/export/share/local

オートマウンタでは、すべてのユーザーがファイルシステムをマウントできるので、root としてアクセスする必要はありません。またファイルシステムのマウントを自動的に解除できるので、作業の終了後、ファイルシステムのマウントを解除する必要はありません。

ProcedureNFS サーバー上で大規模ファイルを無効にする方法

2G バイト超のファイルを処理できないクライアントをサポートするサーバーでは、大規模ファイル作成機能の無効化が必要になることがあります。


注 –

Solaris 2.6 より前の動作環境では、大規模ファイルは使用できません。クライアントが大規模ファイルにアクセスする必要がある場合には、NFS サーバーのクライアントが Solaris 2.6 以降のリリースで動作していることを確認してください。


  1. スーパーユーザーになるか、同等の役割を引き受けます。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. ファイルシステム上に大規模ファイルが存在していないことを確認してください。

    次に例を示します。


    # cd /export/home1
    # find . -xdev -size +2000000 -exec ls -l {} \;
    

    システム上に大規模ファイルが存在する場合には、削除するか、他のファイルシステムに移動する必要があります。

  3. ファイルシステムをマウント解除します。


    # umount /export/home1
    
  4. largefiles を使用してファイルシステムがマウントされている場合は、ファイルシステムの状態をリセットします。

    fsck は、ファイルシステム上に大規模ファイルが存在しない場合に、ファイルシステムの状態をリセットします。


    # fsck /export/home1
    
  5. nolargefiles を使用して、ファイルシステムをマウントします。


    # mount -F ufs -o nolargefiles /export/home1
    

    コマンド行からマウントすることができますが、オプションを常時使用するようにするには、/etc/vfstab に次のようなエントリを追加してください。


    /dev/dsk/c0t3d0s1 /dev/rdsk/c0t3d0s1 /export/home1  ufs  2  yes  nolargefiles

Procedureクライアント側フェイルオーバーを使用する方法

  1. スーパーユーザーになるか、同等の役割を引き受けます。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. NFS クライアント上で、ro オプションを使用してファイルシステムをマウントします。

    コマンド行からも、オートマウンタを使用しても、また/etc/vfstab ファイルに次のようなエントリを追加することによってもマウントできます。


    bee,wasp:/export/share/local  -  /usr/local  nfs  -  no  ro

    この構文はオートマウンタでも指定できました。しかし、フェイルオーバー機能が使用できるのは単一のサーバーが選択されているときだけで、ファイルシステムがマウントされている間は使用できませんでした。


    注 –

    異なるバージョンの NFS プロトコルを実行しているサーバーを、コマンド行や vfstab のエントリに混在させないでください。NFS version 2、version 3、または version 4 のプロトコルをサポートしているサーバーを混在して使用できるのは、autofs を使用する場合だけです。autofs では、version 2 、version 3、または version 4 のサーバーの最適なサブセットが使用されます。


Procedure1 つのクライアントに対するマウントアクセスを無効にする方法

  1. スーパーユーザーになるか、同等の役割を引き受けます。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. /etc/dfs/dfstab にエントリを追加します。

    最初の例では、rose という名前のホストを除き、eng ネットグループ内のすべてのクライアントへのマウントアクセスを許可しています。2 つめの例では、rose を除き、eng.sun.com DNS ドメイン内にあるすべてのクライアントへのマウントアクセスを許可しています。


    share -F nfs -o ro=-rose:eng /export/share/man
    share -F nfs -o ro=-rose:.eng.example.com /export/share/man

    アクセスリストに関する補足情報については、share コマンドを使ってアクセスリストを設定する」を参照してください。/etc/dfs/dfstab については、dfstab(4) のマニュアルページを参照してください。

  3. ファイルシステムを共有します。

    /etc/dfs/dfstab への変更は、このファイルシステムがもう一度共有されるかサーバーがリブートされるまでは NFS サーバーに反映されません。


    # shareall

Procedureファイアウォールを越えて NFS ファイルシステムをマウントする方法

ファイアウォールを越えてファイルシステムにアクセスするには、次の手順を実行します。

  1. スーパーユーザーになるか、同等の役割を引き受けます。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. 次のコマンドを使用して、ファイルシステムを手動でマウントします。


    # mount -F nfs bee:/export/share/local /mnt
    

    この例では、/export/share/local というファイルシステムは、公開ファイルハンドルを使ってローカルクライアントにマウントしています。標準のパス名の代わりに、NFS URL を使用することができます。ただし bee サーバーで公開ファイルハンドルがサポートされていないと、マウント操作は失敗します。


    注 –

    この手順では、NFS サーバーのファイルシステムを public オプションで共有する必要があります。また、クライアントとサーバー間のファイアウォールでは、ポート 2049 で TCP 接続できるようにする必要があります。Solaris 2.6 以降のリリースでは、共有しているすべてのファイルシステムに、公開ファイルハンドルでアクセスできます。そのため、デフォルトでは、public オプションが適用されています。


ProcedureNFS URL を使用して NFS ファイルシステムをマウントする方法

  1. スーパーユーザーになるか、同等の役割を引き受けます。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. (省略可能) NFS version 2 または version 3 を使用している場合、次のコマンドを使用して、ファイルシステムを手動でマウントします。


    # mount -F nfs nfs://bee:3000/export/share/local /mnt
    

    この例では、サーバー bee/export/share/local というファイルシステムが、NFS ポート番号 3000 を使ってマウントされます。ポート番号を指定する必要はありません。その場合、デフォルトの NFS ポート番号である 2049 が使用されます。NFS URL に、public オプションを含めるかどうかを選択できます。public オプションを指定しない場合、サーバーが公開ファイルハンドルをサポートしていなければ、MOUNT プロトコルが使用されます。public オプションを指定すると、必ず公開ファイルハンドルを使用するように指定され、公開ファイルハンドルがサポートされていないとマウントは失敗します。

  3. (省略可能) NFS version 4 を使用している場合、次のコマンドを使用して、ファイルシステムを手動でマウントします。


    # mount -F nfs -o vers=4 nfs://bee:3000/export/share/local /mnt