NFSまたはネットワークファイルシステムは、分散ファイルシステムプロトコルです、元々はSunMicrosystemsによって作成されました。 NFSを介して、 システムは、ネットワークを介して他のユーザーとディレクトリやファイルを共有することを許可できます。
NFSファイル共有では、ユーザーやプログラムでさえ、まるでローカルマシンに常駐しているかのようにリモートシステム上の情報にアクセスできます。
NFS クライアント/サーバー環境で動作します サーバーは、クライアントの認証、承認、管理、および特定のファイルシステム内のすべての共有データの管理を担当します。
承認されると、任意の数のクライアントが、内部ストレージに存在するかのように共有データにアクセスできます。
UbuntuシステムでのNFSサーバーのセットアップは非常に簡単です。 サーバーとクライアントマシンの両方で、必要なインストールと構成を実行するだけで、準備は完了です。
記事上で、 あるUbuntuシステム間でファイルを共有できるようにするNFSサーバーとクライアントを構成する方法を段階的に説明します。
NFSサーバーの構成
ディレクトリを共有するようにホストシステムを構成するには、NFSカーネルサーバーをインストールしてから、クライアントシステムがアクセスするディレクトリを作成してエクスポートする必要があります。
今、 Ctrl + Alt + Tでターミナルを開き、その中で次のコマンドを実行します。
sudo apt install nfs-kernel-server -y
インストールが完了したら、クライアントシステムと共有するフォルダーを作成します。これはエクスポートフォルダーになります。
この例では 現在のディレクトリにフォルダを作成しますが、最も好きなパスを選択できます。
ターミナルで次のように入力します。
sudo mkdir -p carpeta-compartida
すべてのクライアントにディレクトリへのアクセスを許可するため、 次のコマンドを使用して、エクスポートフォルダーから制限付きのアクセス許可を削除します。
sudo chown nobody: nogroup carpeta-compartida sudo chmod 777 carpeta-compartida
別のパスにある場合は、問題なく配置することが重要です。単一のスペースを残すと、システム上のディレクトリのアクセス許可が変更される可能性があるためです。
これで、クライアントシステム上のすべてのグループのすべてのユーザーが「共有フォルダー」にアクセスできるようになります。
これで、この作成されたフォルダーに、共有するすべてのコンテンツを配置できます。
共有ディレクトリをエクスポートします
エクスポートフォルダを作成した後、ホストサーバーマシンにアクセスするためのアクセス許可をクライアントに与える必要があります。
この権限は、システムの/ etcフォルダーにあるエクスポートファイルを介して定義されます。
次のコマンドを使用して、Nanoでこのファイルを開きます。
sudo nano /etc/ exports
ファイルを開いたら、次のコマンドを使用して、作成したフォルダーへのアクセスを許可できます。
/ruta/de/la/ carpeta-compartida ip-de-cliente (rw, sync, no_subtree_check)
O ファイルに次の行を追加することで、複数のクライアントを追加できます。
/ruta/de/la/carpeta-compartida ip-de-cliente-1 (rw, sync, no_subtree_check)
/ruta/de/la/carpeta-compartida ip-de-cliente-2 (rw, sync, no_subtree_check)
または、次のようにIP範囲を設定できます。
/ruta/de/la/carpeta-compartida ip-de-cliente1/24 (rw, sync, no_subtree_check)
このファイルで定義されている「rw、sync、no_subtree_check」権限は、クライアントが以下を実行できることを意味します。
rw:読み取りおよび書き込み操作
同期:変更を適用する前に、変更をディスクに書き込みます
no_subtree_check-サブツリーチェックを防止します
ホストシステムで上記のすべての構成を行った後、共有ディレクトリをエクスポートします。
sudo exportfs -a
最後に、 すべての設定を有効にするには、次のようにNFSカーネルサーバーを再起動します。
sudo systemctl restart nfs-kernel-server
重要な手順は、サーバーのファイアウォールがクライアントに対して開かれていることを確認して、クライアントが共有コンテンツにアクセスできるようにすることです。
sudo ufw allow from ip/rango to any port nfs
このようなものの残り:
sudo ufw allow from 192.168.1.1/24 to any port nfs
これで、次のコマンドを使用してUbuntuファイアウォールのステータスを確認すると、クライアントIPのアクションステータスが「許可」として表示されます。
sudo ufw status
これで、ホストサーバーは、カーネルNFSサーバーを介して共有フォルダーを指定されたクライアントにエクスポートする準備が整いました。
クライアントマシンの構成
今こそ、クライアントマシンでいくつかの簡単な構成を行うときです。これにより、ホストの共有フォルダーをクライアントにマウントして、問題なくアクセスできるようになります。
このために 次のコマンドを使用してNFSクライアントをインストールします。
sudo apt-get install nfs-common
クライアントのシステムには、ホストサーバーによって共有されているすべてのコンテンツにエクスポートフォルダーでアクセスできるディレクトリが必要です。
このフォルダは、システムのどこにでも作成できます。
sudo mkdir -p carpeta-cliente
これで、前の手順で作成したフォルダーは、ホストからこの新しく作成したフォルダーに共有ディレクトリをマウントしない限り、システム上の他のフォルダーと同じになります。
次のコマンドを使用して、共有フォルダーをホストからクライアントのマウントフォルダーにマウントします。
sudo mount IPdelserivdor:/ruta/de/la/carpeta-compartida /ruta/carpeta-cliente
次のようにコマンドを多かれ少なかれ残します:
sudo mount 192.168.1.1:/home/servidor/carpeta-compartida /home/cliente/carpeta-cliente
次に、クライアントマシンからフォルダーに移動して接続をテストし、共有コンテンツがそこにあることを確認します。
ファイル転送の方が速いプロトコルはどれですか? NFSまたはsamba
ファイル転送の方が速いプロトコルはどれですか? NFSまたはsamba
こんにちはルイス、速度は本当にあなたのネットワークに依存します。
SambaとNFSはXNUMXつの異なるプロトコルです。
Sambaは、他のシステム(Android、Windows、Linuxなど)からアクセスできるフォルダーを共有するために使用されます。
NFSは、共有するフォルダーがあるマシンにサーバーモードでインストールされ、ローカルファイルシステムであるかのようにマウントするLinuxマシンのクライアントとしてインストールされるプロトコルです(それぞれにマウントできます)。セッションを実行するか、開始するたびにマウントされるようにfstabファイルで構成します)。
違いを少し明確にしたいと思います。
それは私にエラーを与えます、あなたは例を入れていません、構文エラー。 あなたは間違ったスペースを残しているので、エラーがどこにあるのかわかりません。
それは私には役に立たない。