NFSについて
あるNFS(ネットワークファイルシステム)、ネットワークファイルシステム。ディスクを介してデータネットワークアクセスにクライアント・アプリケーション・サーバーを作成、共有ファイルに異なるマシン、異なるオペレーティングシステムを可能とするネットワークを介したNFS機能、ディスクは、Unixライクなシステム間で共有達成する方法です。
NFS、すなわちRPC NFSシステムプログラムのセット、RPCプロトコルを使用します。NFSは、RPCサーバーとして見ることができ、主な機能は、共有ディレクトリとファイルを管理することである通信および情報転送のための責任を負いませんが、仕事のこの部分は、RPCプロトコルを完了するために、限り地元の使用などNFS RPCサービスがオープンする必要があります[はい]または[NFSサーバーNFSクライアントのかどうか。
NFSのビルド
そして、取り付けのnfs-utilsののrpcbindを
RHEL 7.7この記事NFSサーバーは、NFSサーバとNFSクライアント側でこのコマンドを実行するために必要な:
yum install -y nfs-utils
ノート:
- NFS-utilsの依存のrpcbindので、あなたは、単にNFS-utilsのをインストールすることができます
- 比較するとUbuntuのCentOSの/ RHEL、若干異なってい
設定ファイルは/ etc /輸出
の/ etc / exportsの最後に記録がNFSサーバーの共有ディレクトリの設定情報である、share_dirはディレクトリを共有することで、ホストは、権限を共有するホスト、許可をアクセスすることを許可されています。
# $share_dir $host($permission)
/nfsdata *(rw,no_root_squash,no_all_squash,sync)
/iawsdata *(rw,sync,no_subtree_check)
ノート:
- ディレクトリプロファイルを共有するための/ etc / exportsのNFSサーバ
- カーネルNFSがペースを維持することをexportfsコマンド、情報および構成情報によって維持されているメインの設定ファイルのディレクトリ、外の/ var / libに/ NFS / ETAB NFS共有。注:このファイルを手動で編集しないでください。
- / var / libに/ NFS / rmtabにクライアントアクセスをディレクトリリストは、NFSシステムによって維持され、手動で編集することはありません。
ホスト - コンフィギュレーションは、ホストへのアクセスを許可します
ホストへのアクセスにさまざまな方法を許可するように設定します。
- このよう192.168.1.31として、ホストIPを指定します
- このよう192.168.0.0/24として、サブネットを指定します
- このようwww.nfsclient.comとして、ホストドメイン名を指定してください
- このよう.nfsclient.com *などのすべてのホストにアクセスできるドメインを指定します
- それにアクセスできるすべてのホストを指定します*
許可 - 設定は、ディレクトリのパーミッションを共有しました
許可は、一つ以上の、いくつかの権利は相互に排他的なロジックであることに注意してくださいかもしれません。
- RW:読み書き可能
- ro:只读
- no_root_squash:お勧めできません。それはルートの場合、共有ユーザーディレクトリへのログインは、その後、共有ディレクトリのために、それはまた、root権限を持っています。
- root_squash:共有ディレクトリへのユーザーのログインがルートである場合は、その権限は通常、それがUIDとGIDアイデンティティ誰もシステムアカウントとなり、匿名ユーザーに圧縮されます。
- all_squashコマンド:関係なく、共有ディレクトリへのログインのユーザーは、匿名ユーザーに圧縮されますどのような立場です。
- anonuidコマンド:UIDのユーザーは、ユーザーが共有ディレクトリにログオンすることを、自分自身の値を設定することができ、UIDとなり、ユーザのアイデンティティは、当然のことながら、このUIDは、中/中etc / passwdファイルが存在しなければなりません。
- anongidコマンド:GIDのユーザーは、ユーザーが共有ディレクトリにログオンすることを、自分自身の値を設定することができ、グループのアイデンティティはGIDは、当然のことながら、このGIDは内での/ etc /グループを存在している必要があり、このユーザーになります。
- 同期:同期データは、中にメモリやディスクに書き込まれます
- 非同期:データは最初に一時的ではなく、直接ハードディスクに比べて、メモリに記憶されています
スタート/ストップのrpcbindとNFSサービス
NFSサーバーは、常に、少なくとも二つのプロセス(rpc.nfsdとrpc.mountd)、クライアントがログインホストの後に別のユーザーが使用できるかどうかにログインし、ファイルのアクセス権を管理することができるかどうか管理の問題で最初からやり直す必要があります。主に経営にクライアントがホスト上の権限をログインすることができた場合、このプロセスは、NFSファイルシステムの管理にあるクライアントは、nfsdのを渡されたとき、ホストにログインmountdはnfsdのこの処理の後、彼はNFSファイルサーバーで使用することができ、前に共有プログラムファイルのアクセス許可を使用して認定されます!後にのみNFSファイル共有サービスを利用することができ、この障害、クライアントを克服します。
クライアントの試みは、ポート(ポート)を得るために、クライアントのニーズに起因するサービスのRPCサーバープランを、使用するときに可能な接続は、その後、rpcbindは自分自身を管理しますリクエストのrpcbindにまず、そのため、クライアントがRPC Serverが提供するサービスを利用できるようにするにはクライアントはあなたがNFSを開始する前に、rpcbindのを開始するようにしてください、サービスに接続できるようにポートマッピングは、クライアントを教えてください。
# 启动先启动rpcbind
systemctl start rpcbind
systemctl start nfs
# 停止先停nfs服务
systemctl stop nfs
systemctl stop rpcbind
NFS一般的に使用されるコマンド
exportfsコマンド
NFSサーバー側の設定ファイルは/ etc / exportsを変更後のファイルは、NFSサービスを再起動する必要はありません、ただのexportfsを使用して、新しい構成に再記述再びの/ etc /エクスポートするためのコマンド。
exportfsコマンドは、構成テーブルNFSファイルシステムを維持するために使用されます。
- -a:マウントまたはアンマウントは/ etc /コンフィギュレーションのすべての設定ファイルがエクスポートされます。
- -r:の/ etcから/輸出がすべての構成を再マウントし、下の/ var / libに/ NFS / ETABは/ etc /輸出と/etc/exports.dをリセットします。そうではないので、このオプションでは、コンテンツの「下/etc/exports.dファイル」の「/ etc /エクスポート」とに従って実体は/ var / libに/ NFS / ETABを削除し、このエンティティNFSカーネルから削除されます再検証。
- -u:アンインストール1またはディレクトリのセット:のexportfs -u 192.168.31.0/24:/root/tmp
- -0:、ディレクトリをマウントし、他のホストアクセスとそれを共有する:にexportfs -o RW 192.168.31.0/24:/root/tmp
- -v:表示され、コマンドの実行中に詳細な情報を
showmountコマンド
ディレクトリ情報とクライアントの場合は、の観点から、NFSファイルシステムの共有をマウント
- -a、--all:ホスト:DIR表示され、すべてのクライアントが形式で、ディレクトリをマウントしました。
- -e、--exports:ショーアウト共有するすべての現在のディレクトリのホスト。
- -d、--directories:リスト例指定されたディレクトリは、クライアントに搭載されています。
- -v、--version:プログラムのバージョン情報を表示します
NFSクライアントディレクトリのマウントとアンマウント
showmountはとの接続をテストし
showmount -e $host
ディレクトリをマウントマウント使用してクライアント:
mount -t nfs $host:$sdir $ddir
クライアントの使用umountのアンインストールディレクトリ:
umount $ddir
トラブルシューティング
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --permanent --add-service=mountd
firewall-cmd --permanent --add-port=2049/tcp
firewall-cmd --permanent --add-port=2049/udp
firewall-cmd --add-service=nfs --permanent &&
firewall-cmd --reload