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

ファイルシステムの自動共有

NFS 環境でファイルシステムを共有することにより、サーバーのファイルシステムにアクセスできるようになります。共有するファイルシステムは、share コマンドや /etc/dfs/dfstab ファイルに指定します。

/etc/dfs/dfstab ファイルの項目は、NFS サーバーオペレーションを起動したときに自動的に共有されます。同じファイルシステムを定期的に共有する必要がある場合は、自動共有を設定しなければなりません。たとえばサーバーがホームディレクトリをサポートしている場合、ホームディレクトリを常に使用できるようにしておく必要があります。ファイルシステムの共有はほとんどが自動的に行われます。共有を手動で実行するのは、テストまたは障害追跡の場合だけです。

dfstab ファイルには、サーバーがクライアントと共有しているすべてのファイルシステムがリストされています。このファイルを使用して、ファイルシステムをマウントできるクライアントを制御します。dfstab ファイルを変更して、ファイルシステムを追加または削除したり、共有方法を変更したりできます。その場合は、vi などのサポートされているテキストエディタを使って dfstab ファイルを編集します。コンピュータが次に実行レベル 3 に入ったときに、システムが更新された dfstab を読み、ファイルシステムの共有方法が自動的に判断されます。

dfstab ファイルの各行は、share コマンドで構成されています。その share コマンドは、コマンド行プロンプトに入力してファイルシステムを共有するのと同じコマンドです。share コマンドは、/usr/sbin に保存されています。

表 15–1 ファイルシステムの共有 (作業マップ)

作業 

説明 

参照先 

自動ファイルシステムの共有を確立する 

 サーバーのリブート時、ファイルシステムが自動的に共有されるようにサーバーを設定する手順 ファイルシステム自動共有を設定する方法

WebNFS を有効にする 

 ユーザーが WebNFS でファイルにアクセスできるようにサーバーを設定する手順 WebNFS アクセスを有効にする方法

NFS サーバーログを有効にする 

 NFS ログが選択したファイルシステム上で動作するようにサーバーを設定する手順NFS サーバーログを有効にする方法

ファイルシステム自動共有を設定する方法

  1. スーパーユーザー、またはそれと同等の役割になります。

    役割については、『Solaris のシステム管理 (セキュリティサービス)』の「特権付きアプリケーションの使用」を参照してください。

  2. 共有する対象の各ファイルシステムに関してエントリを追加します。

    /etc/dfs/dfstab を編集します。自動的に共有する各ファイルシステムのファイルにエントリを 1 つ追加します。各エントリは、ファイル中に 1 行で記述する必要があり、次のような構文を使用します。


    share [-F nfs] [-o specific-options] [-d description] pathname

    /etc/dfs/dfstab ファイルについては、dfstab(4) のマニュアルページを、全オプションのリストについては、share_nfs(1M) のマニュアルページを参照してください。

  3. NFS サービスがサーバー上で動作していることを確認します。

    share コマンドまたは share コマンドセットをはじめて実行する場合、NFS サービスが動作していないことがあります。次のコマンドを使用して、NFS デーモンのどれかが動作していることをチェックします。


    # pgrep nfsd
    318

    この例では、318nfsd のプロセス ID です。 ID が表示されない場合は、サービスが動作していないことを意味します。 次に、mountd が動作していることをチェックします。

  4. (省略可能) NFS サービスを起動します。

    前の手順を実行しても nfsd のプロセス ID が表示されない場合は、次のコマンドを使用して、NFS サービスを起動します。


    # /etc/init.d/nfs.server start
    

    このコマンドを実行すると、NFS サービスがサーバーで実行されます。リブート時にサーバーが実行レベル 3 であるときには、NFS サービスが自動的に再起動されます。

  5. (省略可能) ファイルシステムを共有します。

    エントリを /etc/dfs/dfstab に追加したあと、システムをリブートするか、shareall コマンドを使用して、ファイルシステムを共有可能にできます。NFS サービスを起動したすぐ後は、このコマンドはスクリプトにより実行されているため、実行する必要はありません。


    # shareall
    
  6. 情報が正しいことを確認します。

    share コマンドを実行し、適切なオプションが表示されていることを確認します。


    # share
    -        /export/share/man   ro   ""
    -        /usr/src     rw=eng   ""
    -        /export/ftp    ro,public  ""

次に進む手順

次の手順は、サーバー上で共有化したファイルシステムにクライアントがアクセスできるよう autofs マップを設定する手順です。autofs 管理作業の概要 を参照してください。

WebNFS アクセスを有効にする方法

Solaris 2.6 から、デフォルトでは、NFS のマウントが利用可能なファイルシステムはすべて、WebNFS アクセスも自動的に利用できます。この手順を使用する必要があるのは、次のいずれかの場合だけです。

WebNFS サービスを起動する際の注意事項については、WebNFS アクセスの計画 を参照してください。

  1. スーパーユーザー、またはそれと同等の役割になります。

    役割については、『Solaris のシステム管理 (セキュリティサービス)』の「特権付きアプリケーションの使用」を参照してください。

  2. WebNFS サービスを使用して、共有する各ファイルシステムのエントリを追加します。

    /etc/dfs/dfstab を編集します。各ファイルシステムごとにエントリを 1 つ追加します。次の例の public タグおよび index タグは省略できます。


    share -F nfs -o ro,public,index=index.html /export/ftp

    /etc/dfs/dfstab ファイルについては、dfstab(4) のマニュアルページを、全オプションのリストについては、share_nfs(1M) のマニュアルページを参照してください。

  3. NFS サービスがサーバー上で動作していることを確認します。

    share コマンドまたは share コマンドセットをはじめて実行する場合、NFS デーモンが動作していないことがあります。次のコマンドを使用して、NFS デーモンのどれかが動作していることをチェックします。


    # pgrep nfsd
    318

    この例では、318nfsd のプロセス ID です。 ID が表示されない場合は、サービスが動作していないことを意味します。 次に、mountd が動作していることをチェックします。

  4. (省略可能) NFS サービスを起動します。

    前の手順を実行しても nfsd のプロセス ID が表示されない場合は、次のコマンドを使用して、NFS サービスを起動します。


    # /etc/init.d/nfs.server start
    

    このコマンドを実行すると、NFS サービスがサーバーで実行されます。ブート時にサーバーが実行レベル 3 になったときには、NFS サービスが自動的に再起動されます。

  5. (省略可能) ファイルシステムを共有します。

    エントリを /etc/dfs/dfstab に追加したあと、システムをリブートするか、shareall コマンドを使用して、ファイルシステムを共有可能にできます。NFS サービスを起動したすぐ後は、このコマンドはスクリプトにより実行されているため、実行する必要はありません。


    # shareall
    
  6. 情報が正しいことを確認します。

    share コマンドを実行し、適切なオプションが表示されていることを確認します。


    # share
    -        /export/share/man   ro   ""
    -        /usr/src     rw=eng   ""
    -        /export/ftp    ro,public,index=index.html  ""

NFS サーバーログを有効にする方法

  1. スーパーユーザー、またはそれと同等の役割になります。

    役割については、『Solaris のシステム管理 (セキュリティサービス)』の「特権付きアプリケーションの使用」を参照してください。

  2. (省略可能) ファイルシステム構成の設定を変更します。

    /etc/nfs/nfslog.conf で設定を変更する方法は 2 つあります。すべてのファイルシステムについてデフォルトの設定を編集するには、global タグに関連するデータを変更します。または、このファイルシステムについて新しいタグを追加します。これらの変更が必要でない場合には、このファイルを変更する必要はありません。/etc/nfs/nfslog.conf の書式については、nfslog.conf(4) を参照してください。

  3. NFS サーバーログを使用して、共有する各ファイルシステムについてエントリを追加します。

    /etc/dfs/dfstab を編集します。NFS サーバー記録を有効にするファイルシステムについてエントリを 1 つ追加します。log=tag オプションとともに使用するタグは、/etc/nfs/nfslog.conf にも記述する必要があります。次の例では、global タグ内のデフォルト設定を使用しています。


    share -F nfs -o ro,log=global /export/ftp

    /etc/dfs/dfstab ファイルについては、dfstab(4) のマニュアルページを、全オプションのリストについては、share_nfs(1M) のマニュアルページを参照してください。

  4. NFS サービスがサーバー上で動作していることを確認します。

    share コマンドまたは share コマンドセットをはじめて実行する場合、NFS デーモンが動作していないことがあります。次のコマンドを使用して、NFS デーモンのいずれかが動作していることをチェックします。


    # pgrep nfsd
    318

    この例では、318nfsd のプロセス ID です。 ID が表示されない場合は、サービスが動作していないことを意味します。 次に、mountd が動作していることをチェックします。

  5. (省略可能) NFS サービスを起動します。

    前の手順を実行しても nfsd のプロセス ID が表示されない場合は、次のコマンドを使用して、NFS サービスを起動します。


    # /etc/init.d/nfs.server start
    

    このコマンドを実行すると、NFS サービスがサーバーで実行されます。ブート時にサーバーが実行レベル 3 になったときには、NFS サービスが自動的に再起動されます。

  6. (省略可能) ファイルシステムを共有します。

    エントリを /etc/dfs/dfstab に追加したあと、システムをリブートするか、shareall コマンドを使用して、ファイルシステムを共有可能にできます。NFS サービスを起動したすぐ後は、このコマンドはスクリプトにより実行されているため、実行する必要はありません。


    # shareall
    
  7. 情報が正しいことを確認します。

    share コマンドを実行し、適切なオプションが表示されていることを確認します。


    # share
    -        /export/share/man   ro   ""
    -        /usr/src     rw=eng   ""
    -        /export/ftp    ro,log=global  ""
  8. (省略可能) NFS ログデーモン nfslogd がすでに実行されていなければ、起動します。

    nfs.server スクリプトを使用して NFS デーモンの再起動をすると、nfslog.conf ファイルが存在している場合、デーモンが起動されます。それ以外の場合は、サーバーのリブート時にコマンドが自動的に再起動されるように、一度手動でコマンドを実行してファイルを作成する必要があります。


    # /usr/lib/nfs/nfslogd