站長新書 站長開講 首頁 最新文章 站長著作及審校 FreeBSD 筆記 Linux 筆記 Windows 筆記 虛擬化筆記 網管人雜誌 遊山玩水 關於本站
站長新書 VMware vSphere ICM 團購開跑了!!

Windows 2000 Server-利用 Cygwin 架設 NFS Server

前言

[Cygwin] 是一套能在 Windows 系統上提供 UNIX 環境,由 Red Hat 公司 (本來是 Cygnus 公司但被 Red Hat 公司購併) 所開發,它的功能為提供程式所需 UNIX 系統呼叫及環境函式庫,方便程式設計師來撰寫 Win32 控制台或是 GUI 的應用程式,所以我們可很輕易的將許多有用的 UNIX 程式,不需改變就能直接在視窗平台上使用。

本次實作為利用 [Cygwin] 安裝 NFS-Server 套件,使 windows 2000 server 成為 NFS Server,不過利用 [Cygwin] 所架設的 NFS-Server 為 NFSv2 也就是會有資料 2GB 的限制為比較麻煩的地方。

實作環境

安裝及設定

如何安裝 [Cygwin] 請參考[永遠的 Unix - cygwin搭建蜜罐实例],所以如何安裝便不在此文章內多作說明

步驟1.安裝相關套件

安裝以下套件以達成 Windows 2000 Server 提供 NFS Server 的功能

 Adding Editors\vim 6.3-1
 Adding Net\nfs-server 2.3-2
 Adding Utils\sunrpc 4.0-3
 Adding Admin\cygrunsrv 1.10-1

步驟2.初始 NFS Server 設定

先檢查一下 NFS-Server 套件是否安裝完成

 $cygcheck -l nfs-server

查看一下 NFS-Server 安裝設定文件

 $less /usr/share/doc/Cygwin/nfs-server-2.3-1.README

初始設定 nfs-server-config

 $/usr/bin/nfs-server-config
 grep: /usr/share/doc/Cygwin/nfs-server-2.3-1.README: No such file or directory
 This script sets up a default configuration for running an NFS server under
 Cygwin.  As part of this setup, the script will do the following:
  1) Create a user account to run the services under [OPTIONAL]
  2) Install portmap, mountd, and nfsd as Windows services
  3) Create a sample exports file
  4) Create a sample uid/gid mapping file.
 After installing, please read the nfs-server README for Cygwin:
  /usr/share/doc/Cygwin/nfs-server-2.3-1.README
 This document contains notes on installation and documents known problems
 and workarounds with the NFS server, ex:
 Do you want to continue? (yes/no)   //這裡請輸入 yes
 You can choose to install the services so that they run under the local system
 account, or under a separate user account.  Which option you should choose
 depends on which version of Windows you are running:
  Windows 2000 : You may run nfsd under either a local system account or
                  a separate user account.  You _probably_ want to run under
                 the local system account.
  Windows XP   : You _must_ run nfsd under a separate user account.
 If you choose to run nfsd under a separate user account, you will be prompted
 for an user name and password.  If the user name you supply does not exist,
 it will be created.
 Do you want to run nfsd under a separate user account? (yes/no)
 Installing portmap service...
 Installing mountd service...
 Installing nfsd service...
 Creating sample /etc/exports file...
 Creating sample /etc/nfs/server.map file...
 /usr/bin/nfs-server-config: line 223: UID: readonly variable

步驟3.分享設定及安全性設定

設定分享的資料夾

 $vi /etc/exports     (/backup資料夾先建立)
 /backup 192.168.79.0/255.255.255.0(rw)

安全性設定

 $vi /etc/hosts.allow
 portmap : 127.0.0.1 : allow                    //允許本機可存取
 portmap : 192.168.1.0/255.255.255.0 : allow    //允許此網段可存取
 portmap : ALL : deny

設定好分享後記得 showmount 一下,若出現下列錯誤訊息則是因為 portmap 服務還沒啟動,所以會跟你說 rpc 有問題

 $/usr/sbin/showmount
 mount clntudp_create: RPC: Port mapper failure - RPC: Unable to receive

步驟4.服務啟動

啟動服務

 cygrunsrv -S portmap
 cygrunsrv -S mountd
 cygrunsrv -S nfsd

停止服務

 cygrunsrv -E portmap
 cygrunsrv -E mountd
 cygrunsrv -E nfsd

顯示服務狀態

 cygrunsrv -Q portmap
 cygrunsrv -Q mountd
 cygrunsrv -Q nfsd

參考

[Wiki: Cygwin]

[Cygwin NFS Server HOWTO]

[Cygwin-nfs-server - discypus]

[Debian -- nfs-user-server]

[cygwin搭建蜜罐实例]

[SFU vs Cygwin - Windows上のUNIX互換環境を徹底比較]

Go To Oddmuse OrgGo To FreeBSD OrgCreative Commons 2.5 Taiwansitestates.com