GNU/Linux >> Linux の 問題 >  >> Linux

Homelabセットアップで異なるシステム間でフォルダを共有するためにNFSを使用する方法

ネットワークに複数のシステムがある場合、特にホームラボや組織全体でそれらを仮想化する場合、共有フォルダーを使用すると、作業がより簡単かつ迅速になり、非常に便利で便利です。

たとえば、さまざまな仮想マシン間で共有するフォルダがあります。このようにして、一方のシステムにダウンロードされたものはすべて、もう一方のシステムですぐに利用できます。

NFS仮想化サーバーを共有する一元化されたファイルにフォルダーがあります。このフォルダーは、トレントアプリを実行するコンテナーと共有されます。このコンテナーでは、同じファイルを処理に使用できる別のコンテナーに同時に使用できるファイルをダウンロードします。

基本的に、利便性と機能性のために、後でさまざまなデバイスやインスタンス間で共有する場所にファイルを一元化します。

通常のNFSを使用していますか、それともNASファイル共有アプリを使用していますか?

私の場合、NASアプリを実行するのに十分なリソースがないため、NFS共有を実行するだけです。これも、同じ仕事をします。これが、私がこれを可能な限り最もわかりやすく基本的な方法で設定した理由です。

共有ソースの設定

これを行うために、私は最初に単純なDebianサーバーをセットアップし、その中に内部デバイス間で共有することを目的としたいくつかのフォルダーをセットアップしました。

これらのフォルダーの共有方法と特定の環境(自宅、オフィス、外部の世界など)に応じて、アクセス許可の設定方法を検討する必要があります。

これが内部ネットワーク専用であり、セキュリティを管理する適切なファイアウォールがすでにあると仮定すると、これを広く公開します:

sudo chown nobody:nogroup /home/helder/SharingFolder
sudo chmod 777 /home/helder/SharingFolder

これらのフォルダーを取得したら、nfs-kernel-serverをインストールする必要がありました。これにより、サーバーはNFSを介して物事を共有する方法を「理解」できます。

ディストリビューションに応じて、これを何らかの方法で設定できますが、Debianを使用していたので、次を使用しました:

sudo apt install nfs-kernel-server

この後、最初に共有するフォルダーへのアクセスを提供し、これを永続的に設定する必要がありました。これは、エクスポートファイルを介して行われます。

また、これをネットワーク内で誰と共有したいかを知る必要があったため、このフォルダーを使用する2つの異なるコンテナーがあり、それらの内部IPを以前に識別しました:192.10.10.20と192.10.10.30:

sudo vi /etc/exports

ご覧のとおり、私の場合は必要だったので、コンテナに読み取りと書き込みのアクセス許可を与えています。共有ファイルに変更を加えてはならない場合は、代わりに読み取り専用のアクセス許可を与えることができます。

最後に、プロセスのこの部分で、変更を有効かつ機能的にする必要があります。そのためには:

sudo exportfs -a
sudo systemctl restart nfs-kernel-server

これにより、エクスポートがアクティブになり、提供されたIPへの共有が開始されます。

受信共有者の設定

次に、これらの共有フォルダーのコンシューマーであるもう一方の端をセットアップします。

これを行うには、受信側の各インスタンスにログインして、同じ手順を実行する必要があります。この記事では、そのうちの1つ(192.10.10.20)のみを示しますが、これらにアクセスしたいすべての場所で実行する必要があります。

繰り返しになりますが、Ubuntuコンテナでこれを行ったように、コマンドは他のディストリビューションでも異なる場合がありますが、本質的には同じです。

概念的には、実行する必要があるのは、レシーバーに取り付けポイントを設定することです。これらのマウントポイントは、共有上の通常のフォルダーとして機能しますが、実際には、共有者の物理フォルダー(私の場合はUbuntuコンテナー)にリンクされます。

まず、レシーバーマシンにフォルダーを作成します。

mkdir /home/helder/ReceivingShare

次に、受信コンテナにNFS機能がインストールされていることを確認する必要があるため、次のようにします。

sudo apt install nfs-common

ここで、これをコンテナーの永続的な共有にしたい場合は、必要なときにいつでもアクセスできるようにします。したがって、これを/ etc/fstabファイルを介してコンテナ内の永続的な共有として設定しましょう。

sudo vi /etc/fstab

これを行った後、fstabをテストおよび確認するために、レシーバーコンテナーまたはマシンを再起動することをお勧めします。これで、構成済みのデバイスとネットワーク全体で共通のフォルダーが共有されるはずです。


Linux
  1. 自動化のためにAnsibleとanacronを使用する方法

  2. 新しい irssi 接続にデフォルトのニックネームを設定するにはどうすればよいですか?

  3. sudo コマンドのパスを設定する方法

  1. Vimでファイルタイプを使用する方法は?

  2. ディレクトリ内のすべてのフォルダ/ファイルにデフォルトのファイル権限を設定する方法は?

  3. NFS フォルダのアクセス許可を適切に設定するには?マウント側で許可が拒否されました。

  1. autofsを使用してNFS共有をマウントする方法

  2. Linux –ディレクトリ内のすべてのフォルダ/ファイルにデフォルトのファイル権限を設定するにはどうすればよいですか?

  3. Nfsネットワークを設定する方法は?