NFS ((ネットワークファイル共有)は、ネットワーク内の他のLinuxクライアントとディレクトリおよびファイルを共有できるようにするプロトコルです。 共有されるディレクトリは通常、 NFS サーバーとそれに追加されたファイル。
クライアントシステムは、にあるディレクトリをマウントします。 NFS 作成されたファイルへのアクセスを許可するサーバー。 NFSは、クライアントシステム間で共通のデータを共有する必要がある場合、特にクライアントシステムの容量が不足している場合に役立ちます。
このガイドは、2つの主要なセクションで構成されています。インストールと構成 NFSサーバー オン Ubuntu 18.04 / 20.04 およびインストール NFSクライアント クライアントLinuxシステム上。
UbuntuへのNFSサーバーのインストールと構成
をインストールして構成するには NFS サーバーについては、以下の手順に従ってください。
ステップ1:UbuntuにNFSカーネルサーバーをインストールする
最初のステップは、をインストールすることです nfs-kernel-server サーバー上のパッケージ。 ただし、これを行う前に、まず次のaptコマンドを使用してシステムパッケージを更新しましょう。
$ sudo apt update
更新が完了したら、続行してインストールします nfs-kernel-server 以下に示すパッケージ。 これにより、次のような追加のパッケージが保存されます nfs-common そして rpcbind これは、ファイル共有の設定にも同様に重要です。
$ sudo apt install nfs-kernel-server
ステップ2:NFSエクスポートディレクトリを作成する
2番目のステップは、クライアントシステム間で共有されるディレクトリを作成することです。 これはエクスポートディレクトリとも呼ばれ、後でクライアントシステムからアクセスできるファイルを作成するのはこのディレクトリです。
NFSマウントディレクトリ名を指定して、以下のコマンドを実行します。
$ sudo mkdir -p /mnt/nfs_share
すべてのクライアントマシンに共有ディレクトリへのアクセスを許可するため、ディレクトリのアクセス許可の制限をすべて削除します。
$ sudo chown -R nobody:nogroup /mnt/nfs_share/
ファイルのアクセス許可を好みに合わせて微調整することもできます。 これが、ディレクトリ内のすべてのコンテンツに対する読み取り、書き込み、および実行の特権を与えたものです。
$ sudo chmod 777 /mnt/nfs_share/
ステップ3:クライアントシステムへのNFS共有アクセスを許可する
NFSサーバーにアクセスするためのアクセス許可は、 / etc / exports ファイル。 したがって、お気に入りのテキストエディタを使用してファイルを開きます。
$ sudo vim /etc/exports
単一のクライアント、複数のクライアントへのアクセスを提供することも、サブネット全体を指定することもできます。
このガイドでは、サブネット全体がNFS共有にアクセスできるようにしました。
/mnt/nfs_share 192.168.43.0/24(rw,sync,no_subtree_check)
上記のコマンドで使用されるオプションについての説明。
- rw:読み取り/書き込みの略です。
- 同期:変更を適用する前に、変更をディスクに書き込む必要があります。
- No_subtree_check:サブツリーチェックを排除します。
単一のクライアントへのアクセスを許可するには、次の構文を使用します。
/mnt/nfs_share client_IP_1 (re,sync,no_subtree_check)
複数のクライアントの場合、各クライアントを個別のファイルで指定します。
/mnt/nfs_share client_IP_1 (re,sync,no_subtree_check) /mnt/nfs_share client_IP_2 (re,sync,no_subtree_check)
ステップ4:NFS共有ディレクトリをエクスポートする
優先クライアントシステムへのアクセスを許可した後、NFS共有ディレクトリをエクスポートし、NFSカーネルサーバーを再起動して変更を有効にします。
$ sudo exportfs -a $ sudo systemctl restart nfs-kernel-server
ステップ5:ファイアウォールを介したNFSアクセスを許可する
クライアントがNFS共有にアクセスするには、ファイアウォールを介したアクセスを許可する必要があります。そうしないと、共有ディレクトリにアクセスしてマウントできなくなります。 これを実現するには、次のコマンドを実行します。
$ sudo ufw allow from 192.168.43.0/24 to any port nfs
ファイアウォールをリロードまたは有効にし(オフになっている場合)、ファイアウォールのステータスを確認します。 ポート 2049デフォルトのファイル共有である、を開く必要があります。
$ sudo ufw enable $ sudo ufw status
クライアントシステムにNFSクライアントをインストールする
サーバーへのNFSサービスのインストールと構成が完了しました。次に、クライアントシステムにNFSをインストールしましょう。
ステップ1:NFS共通パッケージをインストールする
通常のように、何よりもまずシステムパッケージとリポジトリを更新することから始めます。
$ sudo apt update
次に、インストールします nfs-common 示されているパッケージ。
$ sudo apt install nfs-common
ステップ2:クライアントにNFSマウントポイントを作成する
次に、NFSサーバーからnfs共有をマウントするマウントポイントを作成する必要があります。 これを行うには、次のコマンドを実行します。
$ sudo mkdir -p /mnt/nfs_clientshare
ステップ3:クライアントシステムにNFS共有をマウントする
残りの最後のステップは、NFSサーバーによって共有されるNFS共有をマウントすることです。 これにより、クライアントシステムが共有ディレクトリにアクセスできるようになります。
ifconfigコマンドを使用してNFSサーバーのIPアドレスを確認しましょう。
$ ifconfig
これを実現するには、次のコマンドを実行します。
$ sudo mount 192.168.43.234:/mnt/nfs_share /mnt/nfs_clientshare
ステップ4:クライアントシステムでのNFS共有のテスト
NFSセットアップが機能していることを確認するために、サーバーにあるNFS共有ディレクトリにいくつかのファイルを作成します。
$ cd /mnt/nfs_share/ $ touch file1.txt file2.txt file3.txt
次に、NFSクライアントシステムに戻り、ファイルが存在するかどうかを確認します。
$ ls -l /mnt/nfs_clientshare/
すごい! 出力は、NFSサーバーで作成したファイルにアクセスできることを確認します。
そしてそれについて。 このガイドでは、のインストールと構成について説明しました。 NFS 上のサーバー Ubuntu 18.04 そして Ubuntu 20.04。 NFS 最近はほとんど使用されておらず、より堅牢で安全なSamba共有プロトコルに追いやられています。
Hope this helps!