はじめに
ネットワークファイルシステム(NFS)は、ネットワーク内の複数の場所からリモートファイルにローカルアクセスできるようにするファイルシステムです。このアクセスのために、NFSは標準のクライアント/サーバーアーキテクチャを利用し、分散に関係なくLinuxマシン間の共有をサポートします。
このチュートリアルでは、UbuntuにNFSサーバーとクライアントをインストールして構成する方法を学習します。
前提条件
- 2台以上のUbuntuマシン
- コマンドライン/ターミナルへのアクセス
- すべてのマシンでのsudo権限
NFSホスト側のセットアップ
このチュートリアルの手順では、Ubuntuおよびその他のDebianベースのディストリビューションでのNFSのインストールとセットアップについて説明します。 FedoraやCentOS/RHELなどの他のLinuxディストリビューションは、わずかに異なるコマンド構文を備えています。ただし、プロセスは同じパターンに従います。
NFSカーネルサーバーのインストール
ホストマシンを選択してNFSのセットアップを開始します。
次に、パッケージリポジトリを更新します:
sudo apt update
次に、次のコマンドを使用して、選択したマシンにNFSカーネルサーバーをインストールします。
sudo apt install nfs-kernel-server
「y」と入力します ENTERを押してインストールを開始します。
共有ディレクトリの構成
ホストマシン上に、クライアントシステムと共有するディレクトリを作成します。任意の名前を選択してください。
sudo mkdir -p /mnt/nfsdir
所有者のユーザーとグループをnobodyに変更します およびnogroup 。この設定により、フォルダが公開されます:
sudo chown nobody:nogroup /mnt/nfsdir
権限を777に設定します 、したがって、誰もがこのフォルダ内のファイルの読み取り、書き込み、および実行を行うことができます:
sudo chmod 777 /mnt/nfsdir
NFSエクスポートファイルを編集してサーバーにクライアントへのアクセスを許可する
ホストサーバーマシンにアクセスするためのアクセス許可は、 / etcにあるエクスポートファイルで付与されます。 ディレクトリ。選択したテキストエディタでファイルを開きます。このチュートリアルではViを使用します:
sudo vi /etc/exports
アクセスを許可するクライアントごとに、次の行をファイルに追加します。
/ mnt / nfsdir clientIP(rw、sync、no_subtree_check)
ファイルを終了して変更を保存します
括弧内のオプションには、次の機能があります。
- 「rw 」オプションは、クライアントにサーバー上のディレクトリへの読み取りおよび書き込みアクセスを提供します。
- 「同期 」は、クライアントに応答する前に、NFSに変更を書き込むように強制します。このオプションにより、ホストの状態がクライアントに正確に提示されます。
- 「no_subtree_check 」はサブツリーを無効にします チェック中。サブツリープロセスは、ユーザーがファイルの名前を変更するときに問題を引き起こす可能性があります。
共有ディレクトリのエクスポート
/ etc / exportsで必要な編集を行った後 、 exportfs
を使用します そのファイルに登録したすべての共有ディレクトリをエクスポートするコマンド:
sudo exportfs -a
次に、NFSカーネルサーバーを再起動して、構成に変更を適用します。
sudo systemctl restart nfs-kernel-server
UFWを使用する場合は、クライアントがサーバーにアクセスできるようにする必要があります。
sudo ufw allow from [clientIP or clientSubnetIP] to any port nfs
出力は、IPアドレスの追加を確認します:
操作が正常に完了したことを確認するには、次のように入力します。
sudo ufw status
追加したIPアドレスの出力を検索します:
NFSクライアント側のセットアップ
共有用のクライアントとして設定するすべてのコンピューターで、次の手順を実行します。
NFSCommonのインストール
クライアントマシンでNFSを有効にするには、NFS共通パッケージをインストールします。
sudo apt update
sudo apt install nfs-common
「y」と入力し、Enterキーを押してインストールを開始します。
マウントポイントを設定する
クライアントマシンには、サーバーによってエクスポートされた共有ディレクトリのマウントポイントが必要です。
次のように入力してディレクトリを作成します:
sudo mkdir -p /mnt/nfsdir_client
共有ディレクトリをマウントポイントにマウントするには、次のコマンドを使用します。
sudo mount host_IP:/mnt/nfsdir /mnt/nfsdir_client
df -h
を使用します フォルダが正常にマウントされたかどうかを確認するコマンド:
共有フォルダが不要になったら、次のように入力してマウントを解除します。
sudo umount /mnt/nfsdir_client
OSブートにNFS共有ディレクトリをマウントする
マシンを再起動した後もフォルダをマウントしたままにする場合は、フォルダを / etc / fstabに追加する必要があります。 ファイル。
/ etc / fstabファイルを編集するには、次のように入力します。
sudo vim /etc/fstab
次の行をファイルの最後にコピーし、「host_IP」をホストの実際のIPアドレスに置き換えます。
host_IP:/ mnt / nfsdir / mnt / nsfdir_client nfs auto、nofail、noatime、nolock、intr、tcp、actimeo =1800 0 0
必要なすべてのフォルダにこの行を追加します。このように、リスト上のすべてのフォルダは、起動するたびに自動的にマウントされます。