CentOS へのファイル共有のマウント
CentOS の Linux® コンピュートインスタンスに、 NFS のファイル共有をマウントします。転送中のIPsec暗号化はオプションで設定可能です( dp2 プロファイルおよびセキュリティグループのアクセスモードが必要です)。
開始前に
-
コンピュートホストが共有と同じ セキュリティ グループに属していることを確認してください。 詳しくは、 Granular authorizationを 参照のこと。
-
サーバーがあるVPCに共有のマウントターゲットが存在することを確認します。 新規マウント・ターゲットが必要な場合は、「 ファイル共有およびマウント・ターゲットの作成」の説明に従ってください。
-
マウント・ターゲットからファイル・シェアのマウント・パスを取得します。 マウントパスの情報は、 コンソールの ファイル共有詳細ページ、 CLI、 API、 Terraformから 取得できます。
-
トランジットで暗号化を使用したい場合は、メタデータ・サービスからIPsec証明書を取得する必要がある。 マウント・ターゲットに対して転送中の暗号化が有効になっていることを確認してください。 さらに、セキュア接続を使用してファイル共有をマウントします。 この機能は、
dp2プロファイルおよびセキュリティー・グループ・アクセス・モードを使用するファイル共有にのみ使用できます。 詳しくは、 転送中の暗号化-ファイル共有とホストの間のマウント接続の保護 を参照してください。マウント・ヘルパー・ユーティリティー をインストールして実行し、転送中または暗号化接続なしで暗号化されたファイル共有をマウントします。
File Storage for VPC サービスには NFS バージョン v4.1 以上が必要です。
ファイル共有をマウントするには CentOS
以下の手順に従って、 CentOS ホストにファイル共有をマウントします。 これらの例は、 CentOS 8に基づいています。 この手順は、 Red Hat Enterprise Linux® で説明されている手順と似ています。
ファイル共有をマウントする Compute インスタンスに SSH で接続 してから、以下の手順を続行します。
-
必要なツールをインストールします。
dnf install nfs-utils -
インスタンスにディレクトリーを作成します。
mkdir /mnt/test -
リモート・ファイル共有をマウントします。
mount -t nfs4 -o <options> <host:/mount_target> /mnt以下の例を参照してください。
mount -t nfs4 -o sec=sys 10.240.64.11:/384f711c_0684_4643_b1c3_dc7acb36d04a /mnt/test -
ディスク・ファイル・システムのコマンドを使用して、マウントが成功したことを確認します。
$ 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 -
マウント・ポイントに移動してテスト・ファイルを作成し、すべてのファイルをリストして、共有が読み取り/書き込みとしてマウントされていることを確認します。
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 を実装する方法を参照してください。 -
始動時にリモート・ファイル共有をマウントします。 このセットアップを実行するには、ファイル・システム・テーブル (
/etc/fstab) を編集して、始動時に自動的にマウントされるエントリーのリストにリモート・ファイル共有を追加します。fstabにエントリを作成する前に、次の手順に従って、マウントパスのホスト名を/etc/hostsに追加してください。-
マウントパスの「
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.0hostコマンドを実行した際に「コマンドが見つかりません」というエラーが表示された場合は、dnf install bind-utilsを実行してインストールしてください。 -
/etc/hostsを編集し、IP をホスト名エントリー追加します。<IP_Address> hostname.comhostname.com以下の例を参照してください。
198.51.100.0 fsf-dal2433a-dz.adn.networklayer.com -
ファイルシステムテーブル
/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
-
-
構成ファイルにエラーがないことを確認します。
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 で使用されている同様のサービスを開始してください。 以下の例を参照してください。
-
ホスト側で、
/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 -
nfsidmap -cを実行します。
ファイル・システムのアンマウント
ホストに現在マウントされているファイル・システムをアンマウントするには、ディスク名またはマウント・ポイント名を指定して umount コマンドを実行します。
umount /dev/sdb
umount /mnt