このチュートリアルでは、Ubuntu 20.04 LTSにNFSサーバーをインストールする方法を示します。知らない人のために、NFSまたはネットワークファイルシステムは分散ファイルシステムプロトコルです。ネットワークを介してファイルやディレクトリ全体を他のユーザーと共有するのに役立ちます。リモートシステム上のプログラムが、ローカルマシンで利用できるかのように情報を相互に共有し、アクセスできるようにします。このテクノロジーにより、リソースを共有する柔軟性が得られます。複数のシステム。
この記事は、少なくともLinuxの基本的な知識があり、シェルの使用方法を知っていること、そして最も重要なこととして、サイトを独自のVPSでホストしていることを前提としています。インストールは非常に簡単で、ルートアカウントで実行されていますが、そうでない場合は、'sudo
を追加する必要があります。 ‘ルート権限を取得するコマンドに。 Ubuntu 20.04(Focal Fossa)にNFSサーバーを段階的にインストールする方法を紹介します。 Ubuntu 18.04、16.04、およびLinuxMintなどの他のDebianベースのディストリビューションでも同じ手順に従うことができます。
2台のマシンを使用します。1台はNFSサーバーとして機能するUbuntu20.04を実行し、もう1台は共有をマウントする他のLinuxディストリビューションを実行します。この例のマシンには次のIP:
NFS Server IP: 192.168.77.20 NFS Clients IPs: From the 192.168.77.0/24 range
Ubuntu 20.04 LTSFocalFossaにNFSサーバーをインストールする
手順1.まず、次のapt
を実行して、すべてのシステムパッケージが最新であることを確認します。 ターミナルのコマンド。
sudo apt update sudo apt upgrade
ステップ2.Ubuntu20.04にNFSサーバーをインストールします。
次に、次のコマンドを実行して、NFSカーネルサーバーパッケージをインストールします。
sudo apt install nfs-kernel-server
nfs-server
かどうかを確認できます 図のようにサービスが実行されています:
sudo systemctl status nfs-server
手順3.ホスト上に共有ディレクトリを作成します。
クライアントシステム間で共有されるディレクトリの作成:
sudo mkdir /var/nfs/general -p
クライアントシステムにこの共有ディレクトリへのフルアクセスを許可するため、アクセスを制限しているすべてのディレクトリ権限を削除する必要があります:
sudo chown nobody:nogroup /var/nfs/general
手順4.ホストでNFSを構成します。
これらのリソースの共有を設定するためにNFS構成ファイルを詳しく見ていきます:
sudo nano /etc/exports
次の行を追加します:
/var/nfs/general client_ip(rw,sync,no_subtree_check) /home client_ip(rw,sync,no_root_squash,no_subtree_check)
エクスポートの基本オプションの場合:
オプション | 説明 |
rw | NFSボリュームで読み取り要求と書き込み要求の両方を許可します。 |
ro | NFSボリュームでの読み取り要求のみを許可します。 |
同期 | 変更が安定したストレージにコミットされた後でのみ、要求に応答します。 (デフォルト) |
非同期 | このオプションを使用すると、NFSサーバーがNFSプロトコルに違反し、リクエストによって行われた変更が安定したストレージにコミットされる前にリクエストに応答できます。 |
安全 | このオプションでは、リクエストがIPPORT_RESERVED(1024)未満のインターネットポートで発信される必要があります。 (デフォルト) |
安全ではない | このオプションはすべてのポートを受け入れます。 |
wdelay | 別の関連する書き込み要求が進行中であるか、まもなく到着する可能性があると思われる場合は、ディスクへの書き込み要求のコミットをわずかに遅らせます。 (デフォルト) |
no_wdelay | 非同期も設定されている場合、このオプションは効果がありません。 NFSサーバーは通常、別の関連する書き込み要求が進行中であるか、まもなく到着する可能性があると疑われる場合、ディスクへの書き込み要求のコミットをわずかに遅らせます。これにより、1回の操作で複数の書き込み要求をディスクにコミットできるため、パフォーマンスを向上させることができます。 NFSサーバーが主に小さな無関係なリクエストを受信した場合、この動作は実際にパフォーマンスを低下させる可能性があるため、no_wdelayを使用してオフにすることができます。 |
subtree_check | このオプションは、サブツリーチェックを有効にします。 (デフォルト) |
no_subtree_check | このオプションはサブツリーチェックを無効にします。これはセキュリティに軽度の影響を及ぼしますが、状況によっては信頼性を向上させることができます。 |
root_squash | リクエストをuid/gid0から匿名のuid/gidにマップします。これは、ユーザーbinやグループスタッフなど、同様に機密性が高い可能性のある他のuidやgidには適用されないことに注意してください。 |
no_root_squash | ルートスカッシングをオフにします。このオプションは、主にディスクレスクライアントに役立ちます。 |
all_squash | すべてのuidとgidを匿名ユーザーにマップします。 NFSエクスポートされたパブリックFTPディレクトリ、ニューススプールディレクトリなどに役立ちます。 |
no_all_squash | すべての押しつぶしをオフにします。 (デフォルト) |
anonuid =UID | これらのオプションは、匿名アカウントのuidとgidを明示的に設定します。このオプションは主に、すべての要求が1人のユーザーからのものであるように見せたいPC/NFSクライアントに役立ちます。例として、以下の例のセクションにある/ home / joeのエクスポートエントリについて考えてみます。これは、すべてのリクエストをuid150にマップします。 |
anongid =GID | 上記をお読みください(anonuid =UID) |
最後に、NFSサーバーを再起動して変更を適用します:
sudo systemctl restart nfs-kernel-server
ステップ5.構成ファイアウォール。
ファイアウォールを介したアクセスを許可する必要があります。そうしないと、共有ディレクトリへのアクセスとマウントができなくなります。これを実現するには、次のコマンドを実行します。
sudo ufw allow from 192.168.77.0/24 to any port nfs sudo ufw enable sudo ufw status
手順6.NFSクライアントを設定します。
クライアントマシンには、リモートNFSファイルシステムをマウントするために必要なツールのみをインストールする必要があります。
- DebianとUbuntuにNFSクライアントをインストールする
次のコマンドを実行してインストールします:
sudo apt install nfs-common
- クライアントにマウントポイントを作成します。
次に、クライアントにマウントするための2つのディレクトリを作成します。
sudo mkdir -p /nfs/general sudo mkdir -p /nfs/home
次に、ホストのIPアドレスを使用して共有をマウントします:
sudo mount host_ip:/var/nfs/general /nfs/general sudo mount host_ip:/home /nfs/home
マウントまたはdf
のいずれかを使用して、リモートファイルシステムが正常にマウントされていることを確認します コマンド:
df -h
再起動時にマウントを永続的にするには、/etc/fstab
を開きます ファイルを作成し、次の行を追加します:
sudo nano /etc/fstab
次の行を追加します:
192.168.77.10:/var/nfs/general /nfs/general nfs defaults,timeo=900,retrans=5,_netdev 0 0 192.168.77.10:/home /nfs/home nfs defaults,timeo=900,retrans=5,_netdev 0 0
手順7.NFS共有をテストします。
次に、/var/nfs/general
にテストファイルを作成します。 共有:
sudo touch /nfs/general/general.test
所有権を確認してください:
$ ls -l /nfs/home/home.test -rw-r--r-- 1 root root 0 Aug 1 13:32 /nfs/home/home.test
ステップ8.NFSファイルシステムをアンマウントします。
リモートNFS共有が不要になった場合は、umount
を使用して、他のマウントされたファイルシステムと同じようにマウントを解除できます。 コマンド:
sudo umount /general
おめでとうございます!NFSサーバーが正常にインストールされました。Ubuntu20.04LTS Focal FossaシステムにNFSサーバーをインストールするためにこのチュートリアルを使用していただきありがとうございます。追加のヘルプや役立つ情報については、公式を確認することをお勧めしますNFSWebサイト。