ファイルシステムをマウントするには、いくつかの方法があります。システムをブートするときに自動的にマウントされるようにするか、コマンド行から必要に応じてマウントするか、オートマウンタを使用します。オートマウンタには、ブート時のマウントやコマンド行からのマウントに比較していくつもの利点がありますが、状況によってこの 3 つの方法を組み合わせる必要があります。また、ファイルシステムのマウント時に使用するオプションに応じて、プロセスを有効または無効にする方法がいくつかあります。ファイルシステムのマウントに関するすべての作業のリストについては、次の表を参照してください。
表 14–2 ファイルシステムのマウントの作業マップ
作業 |
説明 |
参照先 |
---|---|---|
ブート時にファイルシステムをマウントする | システムがリブートされるときに必ずファイルシステムがマウントされるようにする手順 | ブート時のファイルシステムのマウント方法 |
コマンドを使用してファイルシステムをマウントする | システムの動作時にファイルシステムをマウントする手順。この手順はテストに有効 | コマンド行からファイルシステムをマウントする方法 |
オートマウンタによりマウントする | コマンド行を使用せずに、要求に応じてファイルシステムにアクセスする手順 | オートマウンタによるマウント |
大規模ファイルを避ける | ファイルシステム上に大規模ファイルが作成されないようにする手順 | NFS サーバー上で大規模ファイルを無効にする方法 |
クライアント側フェイルオーバーを開始する | サーバーの不良時、動作中のファイルシステムへの自動切り換えを有効にする手順 | クライアント側フェイルオーバーを使用する方法 |
クライアントに対するマウントアクセスを無効にする | 任意のクライアントがリモートシステムにアクセスする機能を無効にする手順 | 1 つのクライアントに対するマウントのアクセスを無効にする方法 |
ファイアウォールを越えてファイルシステムにアクセスを提供する | WebNFS プロトコルを使用してファイアウォールを越えてファイルシステムへのアクセスを許可する手順 | ファイアウォールを越えて NFS ファイルシステムをマウントする方法 |
NFS URL を使ってファイルシステムをマウントする | NFS URL を使ってファイルシステムへのアクセスを許可する手順。このプロセスによって、MOUNT プロトコルを使用しないでファイルシステムへのアクセスが可能になる | NFS URL を使用して NFS ファイルシステムをマウントする方法 |
autofs マップを使用するのではなく、ブート時にファイルシステムをマウントするには、次の手順に従います。リモートファイルシステムでは、この手順をクライアントごとに行います。
スーパーユーザー、またはそれと同等の役割になります。
役割については、『Solaris のシステム管理 (セキュリティサービス)』の「特権付きアプリケーションの使用」を参照してください。
ファイルシステムに関するエントリを /etc/vfstab に追加します。
/etc/vfstab ファイルのエントリ構文は、次のとおりです。
special fsckdev mountp fstype fsckpass mount-at-boot mntopts
詳細は、vfstab(4) のマニュアルページを参照してください。
NFS サーバーに NFS vfstab ファイルのエントリを作成するとデッドロックが発生する可能性があるため、作成しないでください。/etc/vfstab のエントリが確認された後、NFS サービスが起動します。次のようなことが考えられます。互いにファイルシステムをマウントしている 2 つのサーバーが同時に停止した場合、リブート時にハングアップする可能性があります。
wasp サーバーの /var/mail ディレクトリをクライアントマシンにマウントするとします。それには、クライアント側で、ファイルシステムを /var/mail としてマウントし、読み出しと書き込みの両方ができるようにします。この場合は、以下の項目をクライアントの vfstab ファイルに追加します。
wasp:/var/mail - /var/mail nfs - yes rw |
新規マウントポイントをテストするために、コマンド行からファイルシステムをマウントすることがあります。このようにしてマウントすると、オートマウンタでアクセスできないファイルシステムに、一時的にアクセスすることができます。
スーパーユーザー、またはそれと同等の役割になります。
役割については、『Solaris のシステム管理 (セキュリティサービス)』の「特権付きアプリケーションの使用」を参照してください。
ファイルシステムをマウントします。
# 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 としてアクセスする必要はありません。またファイルシステムのマウントを自動的に解除できるので、作業の終了後、ファイルシステムのマウントを解除する必要はありません。
2G バイトを超えるファイルを処理できないクライアントをサポートしているサーバーについては、大規模ファイルを作成する機能を無効にしておく必要があります。
Solaris 2.6 より前の動作環境では、大規模ファイルは使用できません。クライアントが大規模ファイルにアクセスする必要がある場合には、NFS サーバーのクライアントが Solaris 2.6 以降のリリースで動作していることを確認してください。
スーパーユーザー、またはそれと同等の役割になります。
役割については、『Solaris のシステム管理 (セキュリティサービス)』の「特権付きアプリケーションの使用」を参照してください。
ファイルシステム上に大規模ファイルが存在していないことを確認してください。
次の例は、大規模ファイルを検索するためのコマンドです。
# cd /export/home1 # find . -xdev -size +2000000 -exec ls -l {} \; |
システム上に大規模ファイルが存在する場合には、削除するか、他のファイルシステムに移動する必要があります。
ファイルシステムをアンマウントします。
# umount /export/home1 |
ファイルシステムがマウントされている場合は、largefiles を使ってファイルシステムをリセットします。
fsck は、ファイルシステム上に大規模ファイルが存在しない場合に、ファイルシステムの状態をリセットします。
# fsck /export/home1 |
nolargefiles を使用して、ファイルシステムをマウントします。
# mount -F ufs -o nolargefiles /export/home1 |
コマンド行からマウントすることができますが、オプションをさらに固定的にするには、/etc/vfstab に次のようなエントリを追加してください。
/dev/dsk/c0t3d0s1 /dev/rdsk/c0t3d0s1 /export/home1 ufs 2 yes nolargefiles |
スーパーユーザー、またはそれと同等の役割になります。
役割については、『Solaris のシステム管理 (セキュリティサービス)』の「特権付きアプリケーションの使用」を参照してください。
NFS クライアント上で、ro オプションを使用してファイルシステムをマウントします。
コマンド行からも、オートマウンタを使用しても、または /etc/vfstab ファイルに次のようなエントリを追加することによってもマウントできます。
bee,wasp:/export/share/local - /usr/local nfs - no ro |
この構文はオートマウンタでも指定できました。しかし、フェイルオーバー機能が使用できるのはサーバーが選択されているときだけで、ファイルシステムがマウントされるときには使用できませんでした。
NFS プロトコルの異なるバージョンを実行する複数のサーバーを、コマンド行や vfstab のエントリに混在させないでください。NFS バージョン 2 またはバージョン 3 のプロトコルをサポートしているサーバーを混在して使用できるのは、autofs を使用する場合だけです。autofs では、バージョン 2 またはバージョン 3 のサーバーの最適なサブセットが使用されます。
スーパーユーザー、またはそれと同等の役割になります。
役割については、『Solaris のシステム管理 (セキュリティサービス)』の「特権付きアプリケーションの使用」を参照してください。
/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) のマニュアルページを参照してください。
ファイルシステムを共有します。
/etc/dfs/dfstab への変更は、このファイルシステムがもう 1 度共有されるかサーバーがリブートされるまでは NFS サーバーに反映されません。
# shareall |
スーパーユーザー、またはそれと同等の役割になります。
役割については、『Solaris のシステム管理 (セキュリティサービス)』の「特権付きアプリケーションの使用」を参照してください。
次のコマンドを使用して、ファイルシステムを手動でマウントします。
# mount -F nfs bee:/export/share/local /mnt |
この例では、/export/share/local というファイルシステムは、公共ファイルハンドルを使ってローカルクライアントにマウントしています。標準のパス名の代わりに、NFS URL を使用することができます。ただし bee サーバーで公共ファイルハンドルがサポートされていないと、マウント操作は失敗します。
この手順では、NFS サーバーのファイルシステムを public オプションで共有する必要があります。また、クライアントとサーバー間のファイアウォールでは、ポート 2049 で TCP 接続できるようにする必要があります。Solaris 2.6 から、共有しているすべてのファイルシステムに、公共ファイルハンドルでアクセスできます。そのため、デフォルトでは、public オプションが適用されています。
スーパーユーザー、またはそれと同等の役割になります。
役割については、『Solaris のシステム管理 (セキュリティサービス)』の「特権付きアプリケーションの使用」を参照してください。
(省略可能) NFS バージョン 2 またはバージョン 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 オプションを指定すると、必ず公共ファイルハンドルを使用するように指定され、公共ファイルハンドルがサポートされていないとマウントは失敗します。