序文 NFS (Network File System) は、ネットワーク ファイル システムを意味します。その最大の機能は、異なるマシンや異なるオペレーティング システムがネットワークを介して互いのファイルを共有できるようにすることです。簡単に言えば、ローカルディスクを操作するのと同じように、リモートホストの共有ディレクトリをローカルコンピューターにマウントできるため、リモートファイルの操作が非常に便利になります。 この記事では、CentOS7 に NFS サーバーをインストールして構成する方法について説明します。 詳しい紹介を見てみましょう。 準備する CentOS7 マシンが 2 台必要です。テストには仮想マシンを使用します。1 台は NFS サーバーとして、もう 1 台はクライアントとして使用します。構成は次のとおりです。 NFS サーバー IP: 192.168.11.31。 クライアント IP: 192.168.11.34。 私たちの目標は、NFS サーバー上のディレクトリを共有し、クライアント上でこの共有ディレクトリ内のファイルを直接操作することです。 NFS サーバーの構成 1. NFSサービスをインストールする まず、yum を使用して nfs サービスをインストールします。 yum -y rpcbind nfs-utils をインストールします 2. 共有ディレクトリを作成する サーバー上に共有ディレクトリを作成し、権限を設定します。 mkdir /data/share/ chmod 755 -R /データ/共有/ 3. NFSを設定する nfs の設定ファイルは /etc/exports です。設定ファイルに次の行を追加します。 /data/share/ 192.168.11.34(rw、ルートスカッシュなし、オールスカッシュなし、同期) このコード行は、共有ディレクトリ /data/share/ をクライアント IP 192.168.11.34 と共有することを意味します。括弧内の内容は権限パラメータです。 rw は、ディレクトリを読み取りおよび書き込み可能に設定することを意味します。 sync は、データがメモリとハードディスクに同期して書き込まれることを意味します。一方、rsync は、データがハードディスクに直接書き込まれるのではなく、最初にメモリに一時的に保存されることを意味します。 no_root_squash NFS クライアントが root を使用してサーバーに接続する場合、サーバーによって共有されるディレクトリに対しても root 権限を持ちます。 no_all_squash NFS クライアントがサーバーに接続するためにどのユーザーを使用するかに関係なく、サーバーによって共有されるディレクトリに対する匿名ユーザー権限は付与されません。 共有ディレクトリ構成が複数ある場合は、構成ごとに 1 行ずつ、複数の行を使用します。設定ファイルを保存した後、設定をすぐに有効にするには、次のコマンドを実行する必要があります。 エクスポートfs -r 4. ファイアウォールを設定する システムでファイアウォールが有効になっていない場合は、この手順を省略できます。 NFS ファイアウォールは、固定ポート 111 と 2049 に加えて、固定されていないポートを開く rpc.mounted などの他のサービスがあり、ファイアウォールにとってさらに厄介な問題となるため、特に対処が困難です。この問題を解決するには、NFS サービスのポート構成ファイルを設定します。 /etc/sysconfig/nfs ファイルを変更し、次の内容のコメントを削除します。存在しない場合は追加します。 RQUOTAD_PORT=1001 LOCKD_TCPポート=30001 LOCKD_UDPPORT=30002 マウントポート=1002 保存したら、ファイアウォールの許可ポリシーにポートを追加します。埋め込む: ファイアウォール コマンド --zone=public --add-port=111/tcp --add-port=111/udp --add-port=2049/tcp --add-port=2049/udp --add-port=1001/tcp --add-port=1001/udp --add-port=1002/tcp --add-port=1002/udp --add-port=30001/tcp --add-port=30002/udp --permanent ファイアウォール-cmd --reload 5. サービスを開始する rpcbind および nfs サービスを次の順序で開始します。 systemctl rpcbind を起動します systemctl スタート nfs スタートアップに追加: systemctl rpcbind を有効にする systemctl で NFS を有効にする nfs サービスが開始された後、rpcinfo -p コマンドを使用してポートが有効かどうかを確認できます。 サーバーをインストールしたら、showmount コマンドを使用して、サーバー (このマシン) が接続可能かどうかを確認できます。 [root@localhost ~]# showmount -e localhost ローカルホストのエクスポートリスト: /データ/シェア 192.168.11.34 上記の結果は、NFS サーバーが適切に構成されていることを示しています。 クライアント構成 1. rpcbindサービスをインストールする クライアントは、nfs をインストールしたり、nfs サービスを有効にしたりせずに、rpcbind サービスをインストールするだけで済みます。 yum -y rpcbindをインストールします 2. リモートNFSファイルシステムをマウントする サーバー上の共有ディレクトリを表示します。 [root@localhost ~]# showmount -e 192.168.11.31 192.168.11.31 のエクスポート リスト: /データ/シェア 192.168.11.34 マウント ディレクトリを作成し、マウント コマンドを実行します。 mkdir -p /mnt/share マウント -t nfs 192.168.11.34:/data/share /mnt/share/ -o nolock,nfsvers=3,vers=3 -onolock,nfsvers=3 が追加されていない場合、マウントされたディレクトリ内のファイルの所有者とグループは両方とも nobody になります。nfsvers=3 が指定されている場合は、root が表示されます。 アンマウントしたい場合は、次のコマンドを実行します。 /mnt/share をアンマウントする 3. 起動時に自動的にマウントする 上記のように設定すれば、NFS が展開されます。しかし、クライアントシステムを再起動すると、マシンでマウントできなくなり、再度手動でマウントする必要があります。この操作は面倒なので、起動時に自動的にマウントするように設定する必要があります。起動時にローカル ディスクが最初にマウントされてからネットワークが開始され、NFS はネットワークが開始した後にのみマウントできるため、/etc/fstab ファイルにマウント項目を書き込む必要はありません。そのため、マウント コマンドを /etc/rc.d/rc.local ファイルに書き込むことができます。 [root@localhost ~]# vim /etc/rc.d/rc.local #ファイルの末尾に行を追加します: マウント -t nfs 192.168.11.34:/data/share /mnt/share/ -o nolock,nfsvers=3,vers=3 保存してマシンを再起動して確認してください。 テスト検証 マウント結果を表示するには、クライアントで df -h と入力します。 ファイルシステムの使用済み容量 使用可能使用率% マウントポイント /dev/mapper/centos-root 18G 5.0G 13G 29% / devtmpfs 904M 0 904M 0% /dev tmpfs 916M 0 916M 0% /dev/shm tmpfs 916M 9.3M 906M 2% /実行 tmpfs 916M 0 916M 0% /sys/fs/cgroup /dev/sda1 497M 164M 334M 33% /ブート tmpfs 184M 0 184M 0% /run/user/0 192.168.11.31:/data/share 18G 1.7G 16G 10% /mnt/share 最後の行を見ましたか? これは正常にマウントされたことを意味します。次に、クライアント上の /mnt/share ディレクトリに移動し、ファイルを作成/削除して、サーバーの /data/share ディレクトリに効果があるかどうかを確認します。同様に、クライアント上の対応するディレクトリでサーバーを操作して、効果を確認します。 要約する 上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。 以下もご興味があるかもしれません:
|
目次序文yumソース、epelソースを設定するCephソースの設定Cephとそのコンポーネントをイン...
目次序文オプションの連鎖ヌル結合呼び出されていない関数のチェック他の序文TypeScript 3.7...
Autotrash は、古い削除済みファイルを消去するプロセスを自動化するコマンド ライン プログラ...
最近、モバイル プロジェクトの開発方法を学ぶために vue を使用し、スクロールには better-...
HTML 初心者は、ファイルを正しく参照する方法という問題によく遭遇します。たとえば、HTML ペー...
Ubuntu をインストールしたばかりですが、開いたときにネットワーク接続がありませんでした。右上隅...
問題の説明最近、いくつかのマシンで、一日のさまざまな時間に次の警告メッセージが表示されました。 3月...
目次1. 円を描く2. マウスで動かした円3. マウスでドラッグした粒子4. カラーグラデーション粒...
袋を用意するインストールApacheがすでにインストールされているかどうかを確認するrpm -qa ...
この記事では、CentOS 7 に Chrome ブラウザをインストールする方法を紹介します。詳細は...
成果を達成する実装のアイデアフィルターのコントラストとぼかしを利用して溶ける効果を実現します。親要素...
目次1. イメージをプルする1.1 関連するイメージをプルして実行する1.1.1 関連する画像を取得...
目次1. ソート機能2. データベースを準備する3. データベースに関連するエンティティクラスの構築...
目次MySQL の基本的な共通コマンド1. SQL文2. テーブルを作成する3. フィールドのプロパ...
以前は、境界線の長さをコンテナーよりも小さくする必要があったときに、div ネストを使用していました...