Red Hat Linux への File Storage for Classic のマウント
Red Hat Enterprise Linux® ベースの IBM Cloud® コンピュートインスタンスをネットワークファイルシステム( NFS )の共有に接続するには、以下の手順に従ってください。 IBM Cloud® File Storage for Classic の注文方法について詳しくは、入門チュートリアルを参照してください。
作業を開始する前に、 File Storage for Classic ボリュームにアクセスするホストが承認済みであることを確認してください。 詳細については、コンソールでホストを承認するCLIからホストを認証するTerraform でホストを承認する。
File Storage for Classicの共有のマウント
-
必要なツールをインストールします。
# yum install nfs-utils
-
インスタンスにディレクトリーを作成します。
mkdir /mnt/test
-
コンソールで File Storage for Classic の詳細ページからマウントポイント情報を取得するには、APIコール(
SoftLayer_Network_Storage::getNetworkMountAddress()
)を使用するか、Terraformのibm_storage_file
リソースを参照します。 -
リモート共有をマウントします。
# mount -t nfs -o <options> <host:mount_point> /mnt
storage_as_a_service
ボリュームの例を記します。#mount -t nfs -o nfsvers=3 fsf-wdc0403a-fz.service.softlayer.com:/IBM02SEV1414935_66/data01 /mnt
enterprise
ボリュームの例を記します。# mount -t nfs -o nfsvers=3 nfshou0201d-fz.service.softlayer.com:/IBM01SEV1414935_2 /mnt
NFS 4.1 を使用する場合は、mount コマンドに
sec=sys
を追加して、ファイル所有権の問題を回避してください。 NFSv3 または NFS 4.1 を使用している場合は、_netdev
を追加して、すべてのネットワークコンポーネントが起動した後にストレージがマウントされるのを待ちます。mount
コマンドおよびそのオプションの詳細については 、mount(8)マニュアルページを参照してください。 -
ディスク・ファイル・システム・コマンドを使用してマウントが成功したことを確認します。
# df -h Filesystem Size Used Avail Use% Mounted on /dev/xvda2 25G 1.4G 22G 6% / /tmpfs 1.9G 0 1.9G 0% /dev/shm /dev/xvda1 97M 51M 42M 55%
-
マウント・ポイントに移動し、ファイルを読み取り/書き込みます。
# touch /mnt/test # ls -la /mnt total 12 drwxr-xr-x 2 nobody nobody 4096 Sep 8 15:52 . dr-xr-xr-x. 22 root root 4096 Sep 8 14:30 .. -rw-r--r-- 1 nobody nobody 0 Sep 8 15:52 test
root を使用して作成したファイルの所有権は
nobody:nobody
になります。 所有権を正しく表示するには、idmapd.conf
を正しいドメイン設定に更新する必要があります。 詳しくは、「no_root_squash
for NFS(オプション) 」セクションを参照してください。 -
始動時にリモート共有をマウントします。 セットアップを完了するには、ファイル・システム・テーブル (
/etc/fstab
) を編集して、始動時に自動的にマウントされるエントリーのリストにリモート共有を追加します。(hostname):/(username) /mnt nfs_version options 0 0
以下の例を参照してください。
fsf-wdc0403a-fz.service.softlayer.com:/IBM02SEV1414935_66/data01 /mnt nfs nfsvers=3 0 0 fsf-wdc0403a-fz.service.softlayer.com:/IBM02SEV1414935_66/data01 /mnt nfs options 0 0 fsf-wdc0403a-fz.service.softlayer.com:/IBM02SEV1414935_66/data01 /mnt nfs4 options 0 0 fsf-wdc0403a-fz.service.softlayer.com:/IBM02SEV1414935_66/data01 /mnt nfs _netdev,nfsvers=3 0 0
詳細については、 Linux
/etc/fstab
ファイルの紹介を参照してください。 -
構成ファイルにエラーがないことを確認します。
# mount -fav
コマンドがエラーなしで完了したら、セットアップは完了です。
ホスト OS が CentOS である場合は、さらに多くのオプションを構成できます。 詳しくは、CentOS での File Storage for Classic のマウントを参照してください。
マウントされたファイル共有のコンテンツに対するユーザー権限の管理
システム管理者として、マウントされたファイルストレージボリューム上のデータへのアクセスを管理することができます。 ファイル共有がマウントされた後、 chown
および chmod
コマンドを使用して、個々のユーザーおよびグループに読み取り、書き込み、実行の権限を割り当てることで、アクセス制御をさらに厳密にすることができます。 詳細については、 Red Hat のチュートリアル「ユーザー、グループ、その他のための Linux の権限管理方法 」をご覧ください。
NFS 用の no_root_squash
の実装 (オプション)
デフォルトでは、NFS は、root 権限で作成されたファイルを nobody ユーザーにダウングレードします。 このセキュリティー機能によって、要求されない限り、特権が共有されないようにしています。
no_root_squash
を構成すると、root クライアントがリモート NFS 共有に対する root 権限を保持できます。
- NFSv3 については、お客様は何もしなくて結構です。
no_root_squash
は簡単に利用できます。 - NFSv4.1 の場合は、nfsv4 ドメインを
slnfsv4.com
に設定し、rpcidmapd
を開始するか、または使用している OS で使用されている同様のサービスを開始する必要があります。
例
-
ホスト側で、
/etc/idmapd.conf
のドメイン設定を行います。#vi /etc/idmapd.conf [General] #Verbosity = 0 #The domain value 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
を実行します。 -
rpcidmapd
を開始します。systemctl start rpcidmapd systemctl enable rpcidmapd
ファイル・システムのアンマウント
ホストに現在マウントされているファイル・システムをアンマウントするには、ディスク名またはマウント・ポイント名を指定して umount
コマンドを実行します。
umount /dev/sdb
umount /mnt