UNIXスタイルのインスタンスからのファイル・システムのマウント

UbuntuおよびLinuxオペレーティング・システムのユーザーは、コマンドラインを使用してファイル・システムに接続したり、ファイルに書き込むことができます。マウント・ターゲットは、ファイル・システムのネットワーク・アクセス・ポイントとして機能します。マウント・ターゲットにIPアドレスが割り当てられたら、それをエクスポート・パスとともに使用してファイル・システムをマウントできます。ファイル・システムのマウント元のインスタンスで、NFSクライアントをインストールしてマウント・ポイントを作成する必要があります。ファイル・システムをマウントする場合、マウント・ポイントは、実際はファイル・ストレージのファイル・システムのルート・ディレクトリを表し、インスタンスからファイル・システムにファイルを書き込むことができます。ファイル・システム内の任意のディレクトリにマウントできます。

前提条件

  • ファイル・システムには、少なくとも1つのマウント・ターゲットに少なくとも1つのエクスポートが必要です。新しいファイル・システムを作成すると、ファイル・システムのエクスポートが同時に作成されます。詳細は、ファイル・システムの作成を参照してください。
  • マウント・ターゲット用に正しく構成されたセキュリティ・ルール。Oracle Cloud Infrastructureでのセキュリティ・ルールの動作方法の詳細は、セキュリティ・ルールを参照してください。ファイル・ストレージに対するVCNセキュリティ・ルールの構成の手順を使用して、ファイル・システムにセキュリティ・ルールを正しく設定します。

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

次の手順を使用して、マウント・コマンドを作成します。または、コンソールを使用して、特定のマウント・ターゲットおよびファイル・システムに関するすべての情報を含むマウント・コマンドのサンプルを取得します。詳細は、Mount Command Samplesを参照してください。

マウント・コマンドのサンプルでは、ファイル・システムのルート・ディレクトリにファイル・システムをマウントします。マウント・コマンドのサンプルには、ファイル・システムのサブディレクトリ情報は含まれません。Linuxタイプのインスタンスをファイル・システムのサブディレクトリにマウントする場合は、サンプルを編集してエクスポート・パスにサブディレクトリ・パスを追加する必要があります。詳細は、ファイル・システムのサブディレクトリをマウントするにはを参照してください。

注意

ファイル・システムをマウントする場合、次のマウント・オプションの組合せはファイル・ストレージ・サービスでサポートされていません:

  • soft ファイル・システムが読取り/書込みマウント・オプション(-o rw)でマウントされている場合。この組合せによって、データが破損する可能性があります

次のマウント・オプションまたはマウント・オプションの組合せは、ファイル・ストレージ・サービスで使用することはお薦めしません:

  • softファイル・システムが読取り専用マウント・オプション(-o ro)でマウントされており、timeo300秒未満で指定されている場合。この組合せによって、I/Oのエラー・レスポンスが多数発生する可能性があります。
  • rsizeまたはwsizeこれらのオプションのために、パフォーマンスの問題が発生します。
ノート

ファイル・システムをマウントする際、Network Lock Manager (NLM)はデフォルトでファイル・ロックに対して有効になっています。デフォルトでは、指定されたマウント・オプションは必要ありません。一般的なNFSワークロードは通常、デフォルトを使用して機能します。

アプリケーションによっては、nolockマウント・オプションを指定することが必要になる場合があります。このマウント・オプションに関するベスト・プラクティスについては、アプリケーションのドキュメントを参照してください。

UbuntuまたはDebianからファイル・システムをマウントするには
  1. コマンド・ウィンドウを開きます。次に、コンソールからインストール・コマンドをコピーして貼り付けてNFSクライアントを取得するか、次を入力します:
    sudo apt-get install nfs-common
  2. コンソールからマウント・ポイント作成コマンドをコピーして貼り付けてマウント・ポイントを作成するか、次のように入力して、yourmountpointをファイル・システムへのアクセス元のローカル・ディレクトリに置き換えます。
    sudo mkdir -p /mnt/yourmountpoint
  3. コンソールからマウント・コマンドをコピーして貼り付けてファイル・システムをマウントするか、次のように入力します:

    sudo mount -o nosuid,resvport,sec=sys 10.x.x.x:/fs-export-path /mnt/yourmountpoint
    • 10.x.x.x:を、マウント・ターゲットに割り当てられているローカル・サブネットIPアドレスに置き換えます。
      ノート

      エクスポートでKerberos認証を使用する場合は、IPアドレスのかわりにマウント・ターゲットの完全修飾ドメイン名(FQDN)を使用します。
    • fs-export-pathを、ファイル・システムをマウント・ターゲットに関連付ける際に指定したエクスポート・パスに置き換えます。

    • yourmountpointをローカル・マウント・ポイントへのパスに置き換えます。
    • エクスポートでAUTH_SYSのみを使用している場合、secオプションはオプションです。エクスポートでKerberos認証を使用する場合は、syskrb5krb5iまたはkrb5pに置き換えます。
      ノート

      NFSクライアントが複数の認証タイプを持つエクスポートを使用し、ファイル・システムがsec=<auth_type>を指定せずにマウントされている場合、クライアントはエクスポートでサポートされている最も強い認証タイプを自動的に選択する必要があります。
    ヒント

    IPアドレス、ホスト名、FQDNおよびエクスポート・パス情報は、ファイル・システムに関連付けられたマウント・ターゲットの詳細ページで確認できます。詳細は、マウント・ターゲットの詳細の取得を参照してください。
    注意

    -o nosuidオプションを省略すると、権限のないユーザーがルートに権限のエスカレートを許可されることがあります。nosuidオプションは、マウントされたシステム内のset-user-identifierビットまたはset-group-identifierビットを無効にしますが、使用することはほとんどありません。
    ノート

    「特権ソース・ポートが必要」エクスポート・オプションが使用されている場合、-o resvportオプションは必須です。それ以外の場合はオプションです。これにより、マウントしているファイル・システムが特権ソース・ポート(1-1023)から接続されます。詳細は、NFSエクスポートおよびエクスポート・オプションの作業を参照してください。
  4. ファイル・システムを表示します。
    df -h
  5. 次のように入力して、ファイルをファイル・システムに書き込みます。yourmountpointをローカル・マウント・ポイントのパスに置き換え、helloworldをファイル名に置き換えます。

    sudo touch /mnt/yourmountpoint/helloworld
  6. 次を入力してファイルが表示されることを確認します。yourmountpointをローカル・マウント・ポイントへのパスに置き換えます。

    cd /mnt/yourmountpoint
    ls

発生する可能性がある一般的な問題の詳細は、ファイル・システムのトラブルシューティングマウント・コマンドの失敗を参照してください。

Solarisからファイル・システムをマウントするには
  1. コマンド・ウィンドウを開きます。
  2. 次のように入力し、yourmountpoint をファイル・システムへのアクセス元となるローカル・ディレクトリに置き換えて、マウント・ポイントを作成します。
    sudo mkdir -p /mnt/yourmountpoint
  3. 次のように入力して、ファイル・システムをマウントします:

    sudo mount -F nfs -o vers=3,sec=sys 10.x.x.x:/fs-export-path /mnt/yourmountpoint
    • 10.x.x.x:を、マウント・ターゲットに割り当てられているローカル・サブネットIPアドレスに置き換えます。
      ノート

      エクスポートでKerberos認証を使用する場合は、IPアドレスのかわりにマウント・ターゲットの完全修飾ドメイン名(FQDN)を使用します。
    • fs-export-pathを、ファイル・システムをマウント・ターゲットに関連付ける際に指定したエクスポート・パスに置き換えます。

    • yourmountpointをローカル・マウント・ポイントへのパスに置き換えます。
    • エクスポートでAUTH_SYSのみを使用している場合、secオプションはオプションです。エクスポートでKerberos認証を使用する場合は、syskrb5krb5iまたはkrb5pに置き換えます。
      ノート

      NFSクライアントが複数の認証タイプを持つエクスポートを使用し、ファイル・システムがsec=<auth_type>を指定せずにマウントされている場合、クライアントはエクスポートでサポートされている最も強い認証タイプを自動的に選択する必要があります。
    ヒント

    IPアドレス、ホスト名、FQDNおよびエクスポート・パス情報は、ファイル・システムに関連付けられたマウント・ターゲットの詳細ページで確認できます。詳細は、マウント・ターゲットの詳細の取得を参照してください。
  4. ファイル・システムを表示します。

    df -h
  5. 次のように入力して、ファイルをファイル・システムに書き込みます。yourmountpointをローカル・マウント・ポイントのパスに置き換え、helloworldをファイル名に置き換えます。

    sudo touch /mnt/yourmountpoint/helloworld
  6. 次を入力してファイルが表示されることを確認します。yourmountpointをローカル・マウント・ポイントへのパスに置き換えます。

    cd /mnt/yourmountpoint
    ls

発生する可能性がある一般的な問題の詳細は、ファイル・システムのトラブルシューティングマウント・コマンドの失敗を参照してください。

Linux、Red HatまたはCentOSからファイル・システムをマウントするには
  1. コマンド・ウィンドウを開きます。次に、コンソールからインストール・コマンドをコピーして貼り付けてNFSクライアントを取得するか、次を入力します:
    sudo yum install nfs-utils
  2. コンソールからマウント・ポイント作成コマンドをコピーして貼り付けてマウント・ポイントを作成するか、次のように入力して、yourmountpointをファイル・システムへのアクセス元のローカル・ディレクトリに置き換えます。
    sudo mkdir -p /mnt/yourmountpoint
  3. コンソールからマウント・コマンドをコピーして貼り付けてファイル・システムをマウントするか、次のように入力します:

    sudo mount -o nosuid,resvport,sec=sys 10.x.x.x:/fs-export-path /mnt/yourmountpoint
    • 10.x.x.x:を、マウント・ターゲットに割り当てられているローカル・サブネットIPアドレスに置き換えます。
      ノート

      エクスポートでKerberos認証を使用する場合は、IPアドレスのかわりにマウント・ターゲットの完全修飾ドメイン名(FQDN)を使用します。
    • fs-export-pathを、ファイル・システムをマウント・ターゲットに関連付ける際に指定したエクスポート・パスに置き換えます。

    • yourmountpointをローカル・マウント・ポイントへのパスに置き換えます。
    • エクスポートでAUTH_SYSのみを使用している場合、secオプションはオプションです。エクスポートでKerberos認証を使用する場合は、syskrb5krb5iまたはkrb5pに置き換えます。
      ノート

      NFSクライアントが複数の認証タイプを持つエクスポートを使用し、ファイル・システムがsec=<auth_type>を指定せずにマウントされている場合、クライアントはエクスポートでサポートされている最も強い認証タイプを自動的に選択する必要があります。
    ヒント

    IPアドレス、ホスト名、FQDNおよびエクスポート・パス情報は、ファイル・システムに関連付けられたマウント・ターゲットの詳細ページで確認できます。詳細は、マウント・ターゲットの詳細の取得を参照してください。
    注意

    -o nosuidオプションを省略すると、権限のないユーザーがルートに権限のエスカレートを許可されることがあります。nosuidオプションは、マウントされたシステム内のset-user-identifierビットまたはset-group-identifierビットを無効にしますが、使用することはほとんどありません。
    ノート

    「特権ソース・ポートが必要」エクスポート・オプションが使用されている場合、-o resvportオプションは必須です。それ以外の場合はオプションです。これにより、マウントしているファイル・システムが特権ソース・ポート(1-1023)から接続されます。詳細は、NFSエクスポートおよびエクスポート・オプションの作業を参照してください。
  4. ファイル・システムを表示します。
    df -h
  5. 次のように入力して、ファイルをファイル・システムに書き込みます。yourmountpointをローカル・マウント・ポイントのパスに置き換え、helloworldをファイル名に置き換えます。

    sudo touch /mnt/yourmountpoint/helloworld
  6. 次を入力してファイルが表示されることを確認します。yourmountpointをローカル・マウント・ポイントへのパスに置き換えます。

    cd /mnt/yourmountpoint
    ls

発生する可能性がある一般的な問題の詳細は、ファイル・システムのトラブルシューティングマウント・コマンドの失敗を参照してください。ファイル・システムのサブディレクトリをマウントする場合は参照してください。

データベースのVMインスタンスからファイル・システムをマウントするには

データベースのVMインスタンスは、バージョン7.4で実行されるOracle Linuxのコンピュート・インスタンスとは異なり、Oracle Linux 6.8上に構築されています。NFSユーティリティ・パッケージはDBインスタンスに事前にインストールされていますが、Open Network Computing Remote Procedure Call (ONC RPC)のrpcbindユーティリティはデフォルトで無効になっています。Oracle Linux 6.8にはsystemdがないため、DBインスタンスはOLコンピュート・インスタンスとは異なる方法で管理されます。Oracle DBインスタンスには、非データベース・ポートを除外し、マウント・ターゲットのトラフィックを許可するために更新する必要のあるiptablesルールのセットが付属しています。

  1. DBシステムにSSHを実行します。

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. 次のように入力してrpcbindサービスを起動します:

    sudo service rpcbind start
  3. chkconfigコマンドを使用して、システムの起動時にrpcbindサービスの起動を有効にします。

    sudo chkconfig rpcbind on
  4. マウント・ターゲットのIPアドレスを含めるようにiptablesのデフォルト構成を変更し、次を入力してトラフィックを許可します。10.x.x.xを、ファイル・システムのマウント・ターゲットに割り当てられたローカル・サブネット・アドレスに置き換えます。新しいiptablesエントリを保存します。

    sudo iptables -A INPUT -p tcp -s 10.x.x.x -j ACCEPT
    sudo iptables -A OUTPUT -p tcp -s 10.x.x.x -j ACCEPT
    sudo service iptables save
  5. 次のように入力し、yourmountpoint をファイル・システムへのアクセス元となるローカル・ディレクトリに置き換えて、マウント・ポイントを作成します。

    sudo mkdir -p /mnt/yourmountpoint
  6. コンソールからマウント・コマンドをコピーして貼り付けてファイル・システムをマウントするか、次のように入力します:

    sudo mount -t nfs -o nosuid,resvport,tcp,vers=3,sec=sys 10.x.x.x:/fs-export-path /mnt/yourmountpoint
    • 10.x.x.x:を、マウント・ターゲットに割り当てられているローカル・サブネットIPアドレスに置き換えます。
      ノート

      エクスポートでKerberos認証を使用する場合は、IPアドレスのかわりにマウント・ターゲットの完全修飾ドメイン名(FQDN)を使用します。
    • fs-export-pathを、ファイル・システムをマウント・ターゲットに関連付ける際に指定したエクスポート・パスに置き換えます。

    • yourmountpointをローカル・マウント・ポイントへのパスに置き換えます。
    • エクスポートでAUTH_SYSのみを使用している場合、secオプションはオプションです。エクスポートでKerberos認証を使用する場合は、syskrb5krb5iまたはkrb5pに置き換えます。
      ノート

      NFSクライアントが複数の認証タイプを持つエクスポートを使用し、ファイル・システムがsec=<auth_type>を指定せずにマウントされている場合、クライアントはエクスポートでサポートされている最も強い認証タイプを自動的に選択する必要があります。
    ヒント

    IPアドレス、ホスト名、FQDNおよびエクスポート・パス情報は、ファイル・システムに関連付けられたマウント・ターゲットの詳細ページで確認できます。詳細は、マウント・ターゲットの詳細の取得を参照してください。
    注意

    -o nosuidオプションを省略すると、権限のないユーザーがルートに権限のエスカレートを許可されることがあります。nosuidオプションは、マウントされたシステム内のset-user-identifierビットまたはset-group-identifierビットを無効にしますが、使用することはほとんどありません。
    ノート

    「特権ソース・ポートが必要」エクスポート・オプションが使用されている場合、-o resvportオプションは必須です。それ以外の場合はオプションです。これにより、マウントしているファイル・システムが特権ソース・ポート(1-1023)から接続されます。詳細は、NFSエクスポートおよびエクスポート・オプションの作業を参照してください。

発生する可能性がある一般的な問題の詳細は、ファイル・システムのトラブルシューティングマウント・コマンドの失敗を参照してください。

ファイル・システムを自動マウントするには

自動マウントでは、再起動された場合に、インスタンスにファイル・システムが自動的に再マウントされます。

  1. コマンド・ウィンドウを開きます。次に、前の項で説明したステップを使用して、ファイル・システムをマウントします。
  2. 次のコマンドを入力して、ファイル・システムのエントリ・ポイントを取得します:
    sudo cat /etc/mtab | grep -i nfs
  3. ファイル・システムのエントリ・ポイントをコピーして、/etc/fstabファイルを開きます:
    cd /etc
    vi fstab
  4. fstabファイルに次の行を追加します:

    <file_system_ip_address>:<file_system_path_name> <your_local_mount_point> nfs defaults,nofail,nosuid,resvport 0 0
    注意

    -o nosuidオプションを省略すると、権限のないユーザーがルートに権限のエスカレートを許可されることがあります。nosuidオプションは、マウントされたシステム内のset-user-identifierビットまたはset-group-identifierビットを無効にしますが、使用することはほとんどありません。
    重要

    必ず、各エントリにnofailオプションを追加してください。このオプションを選択すると、使用できないファイル・システムによりインスタンスの再起動プロセスが失敗しないようになります。
    ノート

    「特権ソース・ポートが必要」エクスポート・オプションが使用されている場合、-o resvportオプションは必須です。それ以外の場合はオプションです。これにより、マウントしているファイル・システムが特権ソース・ポート(1-1023)から接続されます。詳細は、NFSエクスポートおよびエクスポート・オプションの作業を参照してください。
  5. fstabファイルを保存します。

発生する可能性がある一般的な問題の詳細は、ファイル・システムのトラブルシューティングマウント・コマンドの失敗を参照してください。

ファイル・システムのサブディレクトリのマウント

ファイル・システムに既存のディレクトリ構造がある場合は、任意のファイル・システムのサブディレクトリをマウントできます。サブディレクトリは、インスタンスのマウント・ポイントで有効なルート・ディレクトリとなり、兄弟ディレクトリは除外されます。

たとえば、「FileSystem1」に/FileSystem1というエクスポート・パスと、次のようなディレクトリ構造があるとします:

この図は、ディレクトリ構造とマウント・ポイントの例を示しています。

ファイル・システムは、IPアドレスが10.0.0.16である「MountTarget1」からエクスポートされます。

次のコマンドでは、directoryAをインスタンス・マウント・ポイント/mnt/mymountpointにマウントします。

sudo mount -o nosuid,resvport 10.0.0.16:/FileSystem1/rootdirectory/directoryA /mnt/mymountpoint

directoryBFileBもインスタンス・マウント・ポイントからアクセスできません。

注意

兄弟ディレクトリへのアクセスを制限するためにサブディレクトリをマウントしても、ファイル・システムを保護するには十分ではありません。セキュリティ方法の詳細は、ファイル・ストレージのセキュリティについてを参照してください。
ファイル・システムのサブディレクトリをマウントするには
  1. コマンド・ウィンドウを開きます。次に、コンソールからインストール・コマンドをコピーして貼り付けてNFSクライアントを取得するか、次を入力します:
    sudo yum install nfs-utils
  2. コンソールからマウント・ポイント作成コマンドをコピーして貼り付けてマウント・ポイントを作成するか、次のように入力してyourmountpointをファイル・システムへのアクセス元のローカル・ディレクトリに置き換えます。
    sudo mkdir -p /mnt/yourmountpoint
  3. コンソールからマウント・コマンドをコピーして貼り付けてファイル・システムをマウントするか、次のように入力します:

    sudo mount -o nosuid,resvport 10.x.x.x:/fs-export-path/directory-path /mnt/yourmountpoint
    • 10.x.x.x:を、マウント・ターゲットに割り当てられているローカル・サブネットIPアドレスに置き換えます。
    • fs-export-pathを、ファイル・システムをマウント・ターゲットに関連付ける際に指定したエクスポート・パスに置き換えます。

    • directory-pathを、ルート・ディレクトリからマウントするサブディレクトリへのパスに置き換えます。
    • yourmountpointをローカル・マウント・ポイントへのパスに置き換えます。
    ヒント

    IPアドレスとエクスポート・パス情報は、ファイル・システムに関連付けられたマウント・ターゲットの詳細ページで確認できます。詳細は、マウント・ターゲットの詳細の取得を参照してください。
    注意

    -o nosuidオプションを省略すると、権限のないユーザーがルートに権限のエスカレートを許可されることがあります。nosuidオプションは、マウントされたシステム内のset-user-identifierビットまたはset-group-identifierビットを無効にしますが、使用することはほとんどありません。
    ノート

    「特権ソース・ポートが必要」エクスポート・オプションが使用されている場合、-o resvportオプションは必須です。それ以外の場合はオプションです。これにより、マウントしているファイル・システムが特権ソース・ポート(1-1023)から接続されます。詳細は、NFSエクスポートおよびエクスポート・オプションの作業を参照してください。
  4. ファイル・システムを表示します。
    df -h
  5. 次のように入力して、ファイルをファイル・システムに書き込みます。yourmountpointをローカル・マウント・ポイントのパスに置き換え、helloworldをファイル名に置き換えます。

    sudo touch /mnt/yourmountpoint/helloworld
  6. 次を入力してファイルが表示されることを確認します。yourmountpointをローカル・マウント・ポイントへのパスに置き換えます。

    cd /mnt/yourmountpoint
    ls
ファイル・システムをアンマウントするには
  1. インスタンス上でターミナル・ウィンドウを開きます。
  2. 次のコマンドを使って、ファイル・システムをアンマウントします:

    sudo umount /mnt/yourmountpoint

    yourmountpointをローカル・マウント・ポイントへのパスに置き換えます。

ファイル・システムへの書込み

ファイル・システムが作成されたとき、そのルート・ディレクトリはrootユーザーによって所有されます。LinuxまたはCentOSプラットフォーム・イメージを使用するインスタンスから接続する場合、デフォルト・ユーザーはopcです。Ubuntuプラットフォーム・イメージを使用するインスタンスから接続する場合、デフォルト・ユーザーはubuntuです。これらのデフォルト・ユーザーはrootユーザーではないため、これらのユーザーを使用すると、最初はファイルまたはディレクトリを新しいファイル・システムに書き込むことができません。セキュリティ要件によって異なりますが、続行する方法がいくつかあります: 

  • rootユーザーとして接続します。次に、新しいファイル・システムにファイルまたはディレクトリを作成します。
  • rootユーザーとして接続します。次に、他のユーザー(opcubuntuなど)がファイル・システムに書き込めるように、ファイル・システムのルート・ディレクトリの所有権または権限を変更します。

  • rootユーザーとして接続します。次に、他のユーザーがサブディレクトリに書き込むことができるように所有権または権限を設定して、サブディレクトリを作成します。

    ファイルおよびディレクトリの所有権と権限の更新についてさらに学習します。

  • デフォルト・ユーザーとして接続します。次に、sudoコマンドを使用して、ファイルまたはディレクトリに書き込むか、ファイルまたはディレクトリの権限または所有権を変更します。sudoコマンドは、通常のユーザーにrootユーザー権限を一時的に提供します。次に、sudoコマンドを使用してファイル・システムに書き込む例を示します:

    sudo touch /mnt/yourmountpoint/helloworld

    sudoコマンドについてさらに学習します。

インスタンスへのアクセスの詳細は、インスタンスへの接続を参照してください。

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

  1. ターミナル・ウィンドウを開きます。
  2. 次のコマンドを入力して、ファイル・システムをアンマウントします:

    sudo umount 10.x.x.x:/fs-export-path /mnt/yourmountpoint
    • 10.x.x.x:を、マウント・ターゲットに割り当てられているローカル・サブネットIPアドレスに置き換えます。
    • fs-export-pathを、ファイル・システムをマウント・ターゲットに関連付ける際に指定したエクスポート・パスに置き換えます。

    • yourmountpointをローカル・マウント・ポイントへのパスに置き換えます。
    ノート

    アンマウントする際に、場合によっては-fフラグをumountコマンドで使用する必要があります。例:
    sudo umount -f 10.x.x.x:/fs-export-path /mnt/yourmountpoint