IBM Cloud Docs
CentOS へのファイル共有のマウント

CentOS へのファイル共有のマウント

CentOS Linux® ベースの IBM Cloud® 計算インスタンスをネットワーク・ファイル・システム (NFS) ファイル共有に接続するには、以下の手順を使用します。

開始前に

  1. ファイル共有がセキュリティグループアクセスモードで設定されている場合、計算ホストが共有と同じ セキュリティ グループに属していることを確認してください。 ファイル共有がVPCアクセスモードで設定されている場合は、共有をマウントするサーバーがファイル共有と同じゾーンにあることを確認します。 詳細については、 マウントターゲットのアクセス モードを参照のこと。

  2. サーバーがあるVPCに共有のマウントターゲットが存在することを確認します。 新規マウント・ターゲットが必要な場合は、「 ファイル共有およびマウント・ターゲットの作成」の説明に従ってください。

  3. マウント・ターゲットからファイル・シェアのマウント・パスを取得します。 マウントパスの情報は、 コンソールの ファイル共有詳細ページ、 CLIAPITerraformから 取得できます。

  4. トランジットで暗号化を使用したい場合は、メタデータ・サービスからIPsec証明書を取得する必要がある。 マウント・ターゲットに対して転送中の暗号化が有効になっていることを確認してください。 さらに、セキュア接続を使用してファイル共有をマウントします。 この機能は、 dp2 プロファイルおよびセキュリティー・グループ・アクセス・モードを使用するファイル共有にのみ使用できます。 詳しくは、 転送中の暗号化-ファイル共有とホストの間のマウント接続の保護 を参照してください。

    マウント・ヘルパー・ユーティリティー をインストールして実行し、転送中または暗号化接続なしで暗号化されたファイル共有をマウントします。

File Storage for VPC サービスには、 NFS バージョン v4.1 以上が必要です。

ファイル共有のマウント CentOS

以下の手順に従って、 CentOS ホストにファイル共有をマウントします。 例は CentOS 8に基づいている。 この手順は、 Red Hat Enterprise Linux® で説明されている手順と似ています。

ファイル共有をマウントする Compute インスタンスに SSH で接続 してから、以下の手順を続行します。

  1. 必要なツールをインストールします。

    yum install nfs-utils
    
  2. インスタンスにディレクトリーを作成します。

    mkdir /mnt/test
    
  3. リモート・ファイル共有をマウントします。

    mount -t nfs4 -o <options> <host:/mount_target> /mnt
    

    以下の例を参照してください。

    mount -t nfs4 -o sec=sys,nfsvers=4.1 10.240.64.11:/384f711c_0684_4643_b1c3_dc7acb36d04a /mnt/test
    
  4. ディスク・ファイル・システムのコマンドを使用して、マウントが成功したことを確認します。

    $ df -h
    Filesystem                                                                                    Size  Used Avail Use% Mounted on
    udev                                                                                          3.9G     0  3.9G   0% /dev
    tmpfs                                                                                         798M  660K  798M   1% /run
    /dev/vda2                                                                                      99G  1.6G   93G   2% /
    tmpfs                                                                                         3.9G     0  3.9G   0% /dev/shm
    tmpfs                                                                                         5.0M     0  5.0M   0% /run/lock
    tmpfs                                                                                         3.9G     0  3.9G   0% /sys/fs/cgroup
    /dev/vda1                                                                                     240M   73M  155M  33% /boot
    fsf-dal2433a-dz.adn.networklayer.com:/nxg_s_voll_246a9cb9-4679-4dc5-9522-4a7ed2575136  190G  384K  190G   1% /mnt/test
    tmpfs                                                                                         798M     0  798M   0% /run/user/0
    
  5. マウント・ポイントに移動してテスト・ファイルを作成し、すべてのファイルをリストして、共有が読み取り/書き込みとしてマウントされていることを確認します。

    touch /mnt/test/test.txt
    ls -al /mnt/test
    
    $ touch /mnt/test/test.txt
    ls -al /mnt/test
    total 12
    drwxr-xr-x   2 nobody nobody 4096 Apr 8 15:52 .
    dr-xr-xr-x. 22 root   root   4096 Apr 8 14:30 ..
    -rw-r--r--   1 nobody nobody    0 Apr 8 15:52 test.txt
    

    ファイルはrootによって作成され、所有権は nobody:nobody。 所有権を正しく表示するには、正しいドメイン設定で idmapd.conf を更新してください。 詳しくは、NFS の no_root_squash を実装する方法を参照してください。

  6. 始動時にリモート・ファイル共有をマウントします。 このセットアップを実行するには、ファイル・システム・テーブル (/etc/fstab) を編集して、始動時に自動的にマウントされるエントリーのリストにリモート・ファイル共有を追加します。 fstab にエントリを作成する前に、次の手順を実行して、マウントパスのホスト名を /etc/hosts に追加します。

    1. マウントパスの hostname.com 部分、例えば fsf-dal2433a-dz.adn.networklayer.com 、IPアドレスを取得する。 IP アドレスを調べるには、インスタンスで以下のコマンドを実行します。

      host hostname.com
      

      以下の例を参照してください。

      host fsf-dal2433a-dz.adn.networklayer.com
      fsf-dal2433a-dz.adn.networklayer.com has address 203.0.113.0
      

      host コマンドを実行したときに command not found エラーが発生した場合は、 yum install bind-utils を使用してインストールしてください。

    2. /etc/hosts を編集し、IP をホスト名エントリー追加します。

       <IP_Address> hostname.comhostname.com
      

      以下の例を参照してください。

      198.51.100.0 fsf-dal2433a-dz.adn.networklayer.com
      
    3. ファイルシステム・テーブル /etc/fstab を編集し、エントリーを追加する。

      (hostname):/(file_share_path) /mnt nfs_version options 0 0
      

      以下の例を参照してください。

      fsf-dal2433a-dz.adn.networklayer.com:/nxg_s_voll_246a9cb9-4679-4dc5-9522-4a7ed2575136 /mnt/test nfs4 nfsvers=4.1,sec=sys,_netdev 0 0
      
  7. 構成ファイルにエラーがないことを確認します。

    mount -fav
    

    エラーなしでコマンドが完了したら、セットアップは完了です。

    NFS 4.1 の場合は、mount コマンドに sec=sys を追加して、ファイル所有権の問題を回避してください。 _netdev 、すべてのネットワークコンポーネントが起動するまで、ストレージのマウントを待つ。

NFS 用の no_root_squash の実装 (オプション)

デフォルトでは、NFS では、root 権限で作成されたファイルが nobody ユーザーにダウングレードされます。 このセキュリティー機能によって、要求されない限り、特権が共有されないようにしています。

no_root_squash を設定することで、rootクライアントはリモートの NFS ファイル共有のroot権限を保持できる。

NFSv4.1 の場合、 nfsv4 ドメインを設定します: slnfsv4.com に設定し、 rpcidmapd またはOSで使用されている同様のサービスを開始する。 以下の例を参照してください。

  1. ホストから、 /etc/idmapd.conf でドメイン設定を行う。

    $ vi /etc/idmapd.conf
    [General]
    #Verbosity = 0
    #The following should be set to the local NFSv4 domain name
    #The default is the host's DNS domain name.
    Domain = slnfsv4.com
    [Mapping]
    Nobody-User = nobody
    Nobody-Group = nobody
    
  2. nfsidmap -c を実行します。

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

ホストに現在マウントされているファイル・システムをアンマウントするには、ディスク名またはマウント・ポイント名を指定して umount コマンドを実行します。

umount /dev/sdb
umount /mnt