WindowsからLinux上で稼働するNFSサーバーに接続する場合、サードパーティーのNFSクライアントツールをインストールしなくても、Windowsのオプション機能として搭載されているNFSクライアント機能を有効化することで、NFSサーバーに接続できるようになります。
そこでここではWindows 10を例に、NFSクライアント機能を有効化して、Linux上のNFSサーバに接続する方法を紹介します。
目次
NFSクライアントを有効化する
まず、NFSサーバーに接続するWindows 10で、NFSクライアント機能を有効化します。
Windowsの「設定」から「アプリ」を選択します。
アプリの設定画面が表示されるので、画面左側のメニューから「アプリと機能」を選択して、画面右側で「オプション機能」をクリックします。
「オプション機能」画面が表示されるので「関連設定」から「Windowsのその他の機能」をクリックします。
「Windowsの機能」画面が表示されるので、一覧から「NFS用サービス」を展開して「NFSクライアント」と「管理ツール」にチェックを入れて「OK」をクリックします。
NFSクライアント機能がインストールされ「必要な変更が完了しました。」と表示されたら「閉じる」をクリックします。
以上で、NFSクライアントが有効化されました。
NFSサーバへ接続する
NFSサーバーへ接続するときは、コマンドプロンプトからmountコマンドを使って接続し、コマンドの書式は次のとおりです。
mount <NFSサーバのホスト名やIPアドレス>:<共有名> <未使用のドライブ文字>:
たとえば、IPアドレス「172.20.174.80」のNFSサーバのマウントポイント「/share/nfs」をTドライブにマウントするときは、以下のようにコマンドを実行します。
C:\> mount 172.20.174.80:/share/nfs T:
コマンド実行後「コマンドは正常に終了しました」と表示されれば、正常に接続できています。
mountコマンド実行後エクスプローラーを起動すると、「ネットワークの場所」にマウントしたNFSサーバーが表示されており、 NFSサーバー側で設定したアクセス許可の設定によって、読み取りや書き込みといった操作ができます。
なお、Windows 10のNFSクライアントのバージョンは「NFSv3」なので、NFSサーバー側でもNFSv3での接続を許可しておく必要があります。
NFSサーバから切断する
NFSサーバから切断するときは、エクスプローラーまたはコマンドプロンプトから切断します。
エクスプローラーから切断するときは、NFSサーバーに接続しているドライブを右クリックして、メニューから「切断」をクリックします。
コマンドプロンプトから切断するときは、コマンドプロンプトでumountコマンドを実行します。
たとえば、TドライブとしてマウントしているNFSサーバーから切断するときは、以下のように実行します。
C:\> umount T:
コマンド実行後「コマンドは正常に終了しました」と表示されれば、正常に切断できています。
ユーザをマッピングする
上の方法でLinux上のNFSサーバーに接続して、NFSサーバー上にファイルを作成すると、作成したファイルの所有者は、Linux上で確認すると4294967294という数値で表示されます。
このままでも操作に支障はありませんが、NFSサーバーに接続するWindows上のユーザーとNFSサーバー(Linux)上のユーザーをマッピングさせれば、WindowsからNFSサーバー上にファイルなどを作成したときに、マッピングしたLinux上のユーザーを所有者として設定できます。
設定方法は、Windowsに管理者ユーザーでサインインして「C:\Windows¥System32¥drivers¥etc」フォルダー内にpasswdファイルとgroupファイルを作成します。
passwdファイルには、Windows上のユーザー名とマッピングするLinux上のユーザーのUIDとGIDを以下の書式で記述します。
<Windows上のユーザ名>:x:<UID>:<GID>:::
groupファイルには、Windows上のユーザーが所属するグループ名とマッピングするLinux上のユーザーのGIDを以下の書式で記述します。
<Windows上のユーザーのグループ名>:x:<GID>:
たとえば、Windows上のユーザー「user02(グループ:BUILTIN\Users)」を、Linux上のユーザー「user01(uid:1000 gid:1000)」にマッピングするときは、passwdファイルとgroupファイルを、以下の画像のように記述します。
passwdファイルとgroupファイルを作成したら、Windowsを再起動して、上で指定したユーザーでサインインしてNFSサーバーに接続すれば、NFSサーバー上にファイルなどを作成したときに、マッピングしたLinux上のユーザーが所有者となります。
あとがき
Windows 10からLinux上のNFSサーバーに接続してファイルを操作するようなときにお役立てください。