作者: Pramod Karnad, [email protected]
譯者: 謝崑中 HSIEH Kun-Chung
1997年8月7日, v2.11版翻譯完成日期: 中華民國 87年 10月 10日國慶日
最新版本:v2.12, 2001-12-03
轉為 Wiki: Ping (ping 'at' pingyeh 'dot' net), 2003 年 11 月 27 日
本文件旨在說明如何使用 Linux 來設立一內部網路伺服器來與 Unix、Netware、NT 以及 Windows 連接在一起。因此,只要與 Linux
系統連接上, 你還能提供和所有其他平台透明的存取。 並提供了詳細解說如何使用NCSA 伺服器來設定 HTTP, 以及讓 Novell、 Microsoft 的 Windows3.1、WFWG、 Win95 及 WinNT 使用 TCP/IP 客戶端程式來連接上, 在 Apple 的PowerMac 上使用 MacTCP 來連接。
1. 簡介
簡單地說, 內部網路 最個描述性辭彙用來在公司組織內架設網 際網路,而不是為了與全球網際網路的外部連接。這個實際操作在以最小的 成本、時間和勞力花費下來實現讓一個組織將散佈在外的資訊資源用一個最透明的方式來傳送 給每一個個體員工。本文件已儘可能地使用簡 單的詞彙來解說如何使用那些花費不多或根本就免費的已有的工具來設立內 部網路的方法。
本文件的寫法是在假設你已經懂得如何安裝 TCP/IP 到你的 Linux 伺服器 上並使用乙太網路卡將它連接上你的區域網路。並且還假設你已經有 Netware、WinNT 以及 Mac 系統的基本的知識。Netware 伺服器的建構己在 基本的 3.1x 版本上指出了。你也可以使用 INETCFG to achieve 相同的結 果。 在客戶端我們將各別討論使用 Windows 3.1x、 Windows for Workgroups 及 Win95、WinNT 以及蘋果電腦的 Apple PowerMac。
我在此使用私人網路位址 (RFC-1918) 的 172.16.0.0 及 172.17.0.0 只是 用來做例子。 你可以使用針對您的建構的適當位址。
-
Linux Netware WFWG/WinNT 伺服器 伺服器 伺服器 172.16.0.1 172.16.0.2 172.16.0.3 | | | 172.16.0.0 ------+-----+-----+--------+--+-------------- | | 172.16.0.254 W/S 1 路由器 (Router) 172.16.0.5 | 172.17.0.254 | ----------+-------+-------- 172.17.0.0 | W/S 2 172.17.0.5
1.1. 需要什麼
在您嚐試安裝之前需要有以下的軟體。
HTTP 伺服器軟體,可從 OneStep NCSA HTTPd Downloader http://hoohoo.ncsa.uiuc.edu/docs/setup/OneStep.html 網頁中下載。
Novell Netware Client 可由 [//support.novell.com/ //support.novell.com/] 下載(TCP/IP 檔案已包含在客戶端)。
Microsoft TCP/IP client 可由 [//www.microsoft.com/ //www.microsoft.com/] 下載
Apple MacTCP client 可由 [//www.apple.com/ //www.apple.com/] 下載
WWW 瀏覽器,像Netscape 可由 [//home.netscape.com/ //home.netscape.com/] 下載,微軟的 IE 可由 [//www.microsoft.com/ //www.microsoft.com/] 下載 、 NCSA Mosaic 由 http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/NCSAMosaicHome.html 下載
1.2. 本文件的最新版本
最新的 Linux 內部網路伺服器 HOWTO 會定期地布告在 comp.os.linux.announce 以及 comp.os.linux.help 上。 也會被上傳到許 多的 Linux FTP 伺服器上,這包含 sunsite.unc.edu。
本文件的最新 HTML 格式的版本可在 http://www.inet.co.th/cyberclub/karnadp/http.html 上找到。
1.3. 回應
如果您有針對本文件的任何問題與建議, 請不要客氣,寄封信來給 Pramod Karnad, email [mailto: [email protected] [email protected]]。很歡迎您的建議、評論或來信。如果您在 本文件中找到錯誤的地方,讓我能在下個版本上把它更正。謝謝 !
2. 安裝 HTTP 伺服器
當你下載伺服器軟體時,你有兩個選擇: 取用原始程式檔再自己來編譯它, 或是取用已經編譯好的二進位執行檔。 已編譯好的給 Linux (ELF 版本 ) 用的二進位檔可以在 NCSA 上取得,它們都非舊的版本哦!
2.1. 下載前的準備工作
在 NCSA 的伺服器會導引你做建構選項的步驟並為你料理許多檔案。但在您 嚐試要下載 HTTPd 前請先回答下列問題
2.1.1. 作業系統
首先,你必須選擇是要下載原始程式檔案呢? 還是已編譯好的軟體。如果你 的系統並沒出現在選單上,那麼您就必須取回內定的原始檔案,再自己編譯 它。
要檢查你的 Linux 的版本,請回到你的 Linux 命令列上打入
-
linux:~$ uname -a
它會回應像下面的內容
-
linux:~$ uname -a Linux linux 2.0.29 #4 Tue Sep 13 04:05:51 CDT 1994 i586 linux:~$
是 Linux is 2.0.29 版本。
其他的參數可以在下載前來指定,或是以修改在 /usr/local/etc/httpd/conf 目錄內的 srm.conf 檔案來建構。 在httpd.conf檔案內所 載明的實際目錄會顯示在裏頭。唯一的例外是srm.conf檔案內的直接的DocumentRoot。
2.1.2. 處理類型 (伺服器類型)
這項是來指定你的機器會怎麼地執行你的 HTTPd 伺服器。 最好的方法是 standalone。這樣可讓 HTTP 精靈一直地執行。如果您選擇載 入 HTTPd 在 inetd 內,伺服器的二進位碼會在每一次的需求 時被重載入記憶體內,這樣可能會減慢你的伺服器。
2.1.3. 連接埠 (埠)
這項指定您的機器的哪一個埠會被 HTTPd 精靈使用來 bind to 及聆聽 HTTP 請求。如果你可以簽作成 root,請使用內定值 80。 或 者請在 1025 到 65535 之間挑選一個。
2.1.4. 伺服器使用者識別 (使用者)
這是伺服器在答覆要求時改變成為的及實際作用的檔案時所需的使用者識別。 只有你將伺服器當 獨立單機時才需要回答這個問題。如果你 沒有 root 的授權,只需使用你的遷入名稱即可。如果你是系統管理員, 你可能會想建立一個特別的使用者來讓你控制檔案系統的授權。
2.1.5. 伺服器群組識別 (群組)
這是群組識別名稱,伺服器會在回應需求及在這些檔案動件時改變成它們。 它和伺服器使用者識別名稱有點相同,而且只有在你獨自執行伺服器時才可 以使用。
如果你沒有 root 的權限, 請使用你的主要群組的名義。 你可以在 Linux 的命令列中打入 groups 得知您的群組名稱。
2.1.6. 伺服器管理員電子郵件地址 (伺服器 Admin)
這是當使用者要報告在伺服器上有哪些問題時要寄電子郵件做報告的地址。 你可以填上你的個人的 e-mail地址。
2.1.7. 伺服器目錄的位置 (伺服器Root)
這是指伺服器位於你的系統的哪個地方。如果你有 root 的權限,請讓它就 依照它所建議的地點 /usr/local/etc/httpd 內。 如果你無法以 root 的身份簽入,請在你的 home 目錄內選擇一個次目錄。你可以使用ind out the path of your home directory with the pwd command.
2.1.8. HTML 檔案的位置 (DocumentRoot)
這兒是被伺服使用的 HTML 檔案被放置的地點。 內定的位置是 /usr/local/etc/httpd/htdocs。然而你可以把它設定成你在伺服 器使用者識別名稱內的特別的使用者的 home 目錄,或是你的 home 目錄內 的一個子目錄 (假如你無法遷入成為 root 的話)。
如果不曉得,請使用內定值。現在你已經有上面問題的答案了,你就可以 從 http: //hoohoo.ncsa.uiuc.edu/docs/setup/OneStep.html 下載 NCSA HTTPd。 在安裝前你應該閱讀放在 http: //hoohoo.ncsa.uiuc.edu/docs/ 內的 HTTPd 文件。如果你計畫編譯執行碼,那你需要修改在support, src, cgi-src 三個目錄內的每一個 makefiles 檔。如果你的 Linux 版本已經支援了,那麼你只需 在最上端的目錄上執行make linux。(如 /usr/local/etc/httpd)
2.2. 編譯 HTTPd
這很簡單, 只要在伺服器的 root 目錄內的命令列上鍵入 make linux 即可。 註: 在編譯前,pre-ELF Linux 的使用者 (沒有 ELF 功能的 Linux) 須將 portability.h 檔案內的 #define NO_PASS 列的註解符號拿掉並且設定 Makefile 內的 DBM_LIBS= -ldbm。
3. 測試 HTTPd
在你安裝完 HTTPd 後,以 root 遷入,並打入 httpd 即 可執行它。 (假設你在獨立的系統上安裝好了 ) 現在你應該可以在 ps 的列表上看到它。最簡單的測試 HTTPd 的方法是使用 Telnet 。在 Linux 命令列裏鍵入
-
linux:~$ telnet 172.16.0.1 80
在這裏 80 是 HTTP 的內定埠。如果你將 Port 設定成其不同 的埠號,那就換上它吧。你應該會得到一個像下面的回應
-
Trying 172.16.0.1... Connected to linux.mydomain. Escape character is '^]'.
現在, 如果你鍵入任何字元並按 Enter 鍵, 你應該會得到像下面的回應
-
HTTP/1.0 400 Bad Request Date: Wed, 10 Jan 1996 10:24:37 GMT Server: NCSA/1.5 Content-type: text/html HEADTITLE400 Bad Request /TITLE /HEAD BODYH1400 Bad Request /H1 Your client sent a query that this Server could not understand.P Reason: Invalid or unsupported method.P /BODY
現在我們已準備好使用另一台電腦及網頁瀏覽器來與這台伺服器相連接了。
4. 連上 Linux 伺服器
請參考在 Introduction 章節裏的圖示,那裏有被使用的定址方案。 Workstation 1 (W/S1) 在網路 172.16.0.0 上並且可以直接存取到 Linux 伺服器。而 Workstation 2 (W/S2) 在網路 172.17.0.0 上 且需要使用通訊閘(路由器) 172.17.0.254 來存取 Linux 機器。這個通訊閘資訊只有在建構 W/S2 這個客戶端時 才需要。Netware 會把通訊閘當成'ip_router'。
我使用 W/S2 來描述客戶端的設定。 要設定 W/S1 只需將位址 172.17.0.5 改變為 172.16.0.5 並且 不要管所有與通訊閘/路由器的連結。
如果你沒有路由器,現在可以跳過這章節
Setup Netware Server 如果你使用 Netware 伺服器。
Setup MS Windows Client 如果你使用 Microsoft Client。
4.1. 設定 Linux 伺服器
如果你沒有router的話,可以跳過這一章。
你必須建構 Linux 伺服器去辦識路由器來讓 Workstation 2 與 Web 伺服器相連接。為了 設立 Linux 伺服器你必須簽入成為 root。在伺服器的命令列提示下執行
-
route add gw default 172.16.0.254
要在每一次你開啟這台Linux 伺服器時使用這個通訊閘的話,只要修改 /etc/rc.d/rc.inet1 將 含有通訊閘定義的那行更改成 GATEWAY = 172.16.0.254即可。請得前面沒有註解符號哦 !
或者是: 你可以由另一邊的路由器來改變網路。例如
-
route add -net 172.17.0.0 gw 172.16.0.254
想每一次開機時使用這條通道請將這個命令加入你的 /etc/rc.d/rc.local 檔案裏。
4.2. 建定 Netware 伺服器
為了能夠設定 Netware 伺服器, 你需要有 Supervisor 允許權或至少也要 有控制台 Console 的操作權。 如果這些你都沒有,請問你們的網路管理員 看看是否能幫你做設定。 在伺服器上打入以下命令或是將它們包含到 AUTOEXEC.ncf 檔裏即可開啟網路上的 Ethernet_II 的 frame 類型。
-
load NE2000 frame=Ethernet_II name=IPNET load TCPIP bind IP to IPNET addr=172.16.0.2 mask=FF.FF.FF.0
在載入 NE2000 的驅動程式時, 你也許需要依照你的機器的建構來指定插 槽或板子的號碼。 (例如: load NE2000 slot=3 frame=.....)
4.3. 設定 Netware 客戶端
在一台電腦上, 你可以選擇使用 Win3.1、WFWG 或是 Win95。 如果你使用 Microsoft 或 Novell 的 32 位元客戶端程式, 對於在 Win95 或早期的 windows 上的安裝步驟就不同了。如果你要使用 16 位元的客戶端程式,那 麼那些步驟就一樣了。 你可以參考 Windows 3.x 安裝指示。關於在 Win95 上面安裝 32 位元客戶端程式, 請跳到 安 裝Windows 95。
4.3.1. Windows 3.x
如果你使用 Win3.1 或 WFWG。你就可以安裝 Netware Client (VLMs) 以及 和 TCP/IP 磁片放在一起的其他檔案,如下
TCPIP.exe、VTCPIP.386、WINSOCK.dll 和 WLIBSOCK.dll
附帶一提 WINSOCK.dll 檔案與 Win95 及 Trumpet 內所提供的那個是不同 的。 安裝有支援 windows 的 Netware Client。 將 VTCPIP.386、 WINSOCK.dll 及 WLIBSOCK.dll 拷貝到 SYSTEM 目錄內,TCPIP.exe 拷貝到 NWCLIENT 目錄內。現在修改放在 NWCLIENT 內的 STARTNET.bat
-
lsl ne2000 --- 你的網路卡驅動程式 c:\windows\odihlp.exe ----如果你使用 WFWG 的話 ipxodi tcpip --- 增加這一行 nwip --- 如果你使用 Netware/IP 的話 vlm
建立一個子目錄 (如 ) \NET\TCP, 從你的 Linux 伺 服器的 /etc 目錄或是你的 Netware 伺服器的 SYS: ETC 內拷貝 HOSTS、 NETWORKS、PROTOCOLS 以及 SERVICES 。 經由修改拷貝的 HOSTS 檔案來增加一行給你的新 Linux 伺服器。 這樣可以使你使用你的網 頁瀏覽器看你的 Linux 伺服器時由 http://172.16.0.1/ 改為 http://linux.mydomain/。
-
127.0.0.1 localhost 172.16.0.1 linux.mydomain
修改在 NWCLIENT 目錄內的 NET.cfg 檔案
-
Link Driver NE2000 port 300 int 3 MEM D0000 FRAME Ethernet_802.2 ; ---- 增加這幾行 ---- FRAME Ethernet_II Protocol TCPIP PATH TCP_CFG C:\NET\TCP ip_address 172.17.0.5 ip_netmask 255.255.255.0 ip_router 172.17.0.254 --- 如果你必須使用你的通訊閘才能連接到你的HTTP 伺服器才需加上這行 Link Support MemPool 6192 --- 最小值是 1024。可試看看不同的值 Buffers 10 1580 --- 這也可以自己調整 ;--------------------------------- ; 如果你使用 Netware/IP ,可以加入這幾行 ; NWIP NWIP_DOMAIN_NAME mydomain NSQ_BROADCAST ON NWIP1_1 COMPATIBILITY OFF AUTORETRIES 1 AUTORETRY SECS 10
編修 WINDOWS 目錄內的 SYSTEM.ini 檔案並為 VTCPIP.386加上這一行。
-
[386Enh] ..... network=*vnetbios, vipx.386, vnetware.386, VTCPIP.386 .....
重新開機,執行 STARTNET.bat。 現在你可以使用你最喜歡的網頁瀏覽器來 存取你的網頁了。 如果你使用 Trumpet Winsock 的話, 你不需簽入 Netware 裏面以及執行 TCPMAN。
4.3.2. Windows 95
本章節解釋如何在 Win95 上安裝 32 位元的客戶端程式。 首先你必須安裝 下列的軟體
-
Client for Netware Networks (來自 Microsoft 或 Novell都可以) Microsoft TCP/IP Protocol Network Adapter
要安裝這些項目,按我的電腦→控制台→網路,按新增。現在你應該是在 一個顯示客戶端、介面卡、協定及服務的視窗裏。 安裝 the Client for Netware Networks:
-
1. 在客戶端按(滑鼠)兩下 2. 在 Microsoft 或 Novell 上按一下 3. 在 Client for Netware Networks 按兩下
安裝 TCP/IP 協定:
-
1. 在協定上按兩下 2. 按 Microsoft 一下 3. 按 TCP/IP 兩下
Windows 95 本身會自動安裝幾個不同的協定。指向他們並按移除鈕將他們移除。一般來說 Win95 會安裝 Microsoft NetBeui 協定以及IPX/SPX 相容協定。你可以刪除 NetBEUI 協定, 但如果你想簽入到 Netware 伺服器,那你會需要 IPX/SPX 協定。
按 TCP/IP 一下設定它, 按內容,按 IP 位址一欄
-
在 指定 IP 位址 對話盒中輸入你的 IP 位址 172.17.0.5 在子網路庶罩對話話中輸入 255.255.255.0
選取通訊閘
-
在新閘道對話盒裏輸入你的通訊閘(路由器)位址 172.17.0.254 按新增鈕
現在通訊閘位址應該在通訊閘對話盒內了。按確定
你會看到要你重新啟動系統的訊息,照做,現在你應該可以使用瀏覽器連接到你的 HTTP 伺服器。
4.4. 設定 Microsoft Client
如果你使用 Microsoft Client 來存取你的網路,那麼這章即在說明如何安 裝 TCP/IP 到
附註: 要讓你的網頁瀏覽器或所有的內部網路命令在看你的 Linux 伺服器時是以 http: //linux.mydomain/ 來代替 http://172.16.0.1/。 你可以經由修改 hosts 檔案來 增加一行給你的新 Linux 伺服器。 你當然也可以增加更多的條目給每一個 你的其他的主機 hosts (Netware、 Unix、 WinNT)。 Windows 家族會把它的 HOSTS 檔案放在 \WINDOWS 或 \WINDOWS\SYSTEM 內, 端看它的版本。修改這個檔案並加上一行到你的 Linux 伺服器成為:
-
127.0.0.1 localhost 172.16.0.1 linux.mydomain 172.16.0.2 netware.mydomain 172.16.0.3 winNT.mydomain 172.16.0.5 ws_1
4.4.1. Windows for Workgroups
本章在解釋如何在 WFWG 上安裝 32bit 的客戶端。首先你必須下載由 Microsoft 所提供的Windows版 TCP/IP 驅動程式 最新的版本是 3.11b ,你可以由 ftp://ftp.microsoft.com 或是 其他網站裏下載 tcp32b.exe。請確定你在嚐試載入TCP/IP-32bit的驅動程式前載入Win32s 。
將 TCP/IP 檔案展開到臨時存放目錄裏 (如 C:\TEMP),檢查你的 \WINDOWS\SYSTEM 目錄裏有否 OEMSETUP.INF。如果有,改它們的名字。現在從 TEMP 目錄裏拷貝 OEMSETUP.INF 檔 到 \WINDOWS\SYSTEM 目錄。如果你已載入其他的 TCP/IP 堆疊到你的系統了,請 在你繼續前移除它們。
開啟網路設定或是 Windows 設定/更改網路設定
-
按一下 Networks 鈕 按一下 Install Microsoft Windows Network. 選擇支 support for additional networks (如果需要的話) 按確定
系統會提示你需要選擇一個適當的網路卡。如果沒有提示的話,那麼你應該
-
按一下 Adapter 鈕 選擇一張卡 (如 NE2000) 按確定 按一下 Protocol 鈕 選擇 MS TCP/IP-32 協定 按確定
系統會提示要你建構 TCP/IP 協定的一堆資料。在任何時候您想要重新建構 這項資料,你可以選擇 TCP/IP 協定後,再按一下內容即可做修改。
-
在 IP 位址對話盒裏輸入 172.17.0.5 在子網路遮罩對話盒內輸入 255.255.255.0 在內定通訊閘對話盒中輸入你的通訊閘 (router) 位址為 172.17.0.254
按確認。你會看到一個重新啟動的訊息。順著意做,你現在起就可以使用瀏 覽器來連接到你的 HTTP 伺服器了。
4.4.2. Windows 95
本章節解釋如何在 Win95 上安裝 32 位元的微軟客戶端程式。 首先你必須 安裝下列的軟體
-
Client for Microsoft Networks Microsoft TCP/IP Protocol Network Adapter
要安裝這些項目,在按兩下我的電腦→控制台→網路,按增加。你現在會在 一個顯示著客戶端程式、控制卡、協定以及服務項目的一個視窗上。要安裝 微軟網路客戶端程式:
-
1. 在 Client 項目上按兩下 2. 按一下 Microsoft 3. 在 Client for Microsoft Networks項目上按兩下
安裝 TCP/IP 協定:
-
1. 在 Protocol 上按兩下 2. 按一下 Microsoft 3. 在 TCP/IP 上按兩下
Windows 95 內定會自動地安裝數個協定在裏頭。 只要在按一下它們,再按 下移走按鈕即可將它們移走。 典型地 Win95 會安裝 Microsoft NetBeui 協定。
建定 TCP/IP 請在 TCP/IP 上按一下,按下內容,按下 IP 位址的表格:
-
在 指定一個 IP 位址 上鍵入你的 IP 位址; 方塊內為 172.17.0.5 在子網路遮罩方塊內鍵入 255.255.255.0
選取 Gateway 的表格:
-
在新通訊閘方塊內鍵入你的通訊閘(轉送器)位址成為 172.17.0.254 按下新增按鈕
現在通訊閘位址應該會出現在已安裝的通訊閘方塊內。按下確認鈕。
你會看到一個重新啟動的訊息。順著意做,你現在起就可以使用瀏覽器來連 接到你的 HTTP 伺服器了。
4.4.3. Windows NT
本章節解釋如何在 WinNT 4.0 上安裝 TCP/IP 客戶端程式。 開始→控制台 →網路
-
選擇控制卡表格 按下新增來增加一個新的控制卡 (如果你沒有半個的話)
系統會提示要你選一個適當的網路控制卡-選一個合適的。接著加入協定。
-
選擇協定表格 按新增 選擇 TCP/IP 協定 按確認
系統會提示要你建構 TCP/IP 協定的一堆資料。在任何時候您想要重新建構 這項資料,你可以選擇 TCP/IP 協定後,再按一下內容即可做修改。
-
選擇 IP 位址表格 在'指定 IP 位址'項目上打勾 在 IP 位址對話盒裏輸入 172.17.0.5 在子網路遮罩對話盒內輸入 255.255.255.0 在內定通訊閘對話盒中輸入你的通訊閘 (router) 位址為 172.17.0.254
按確認。你會看到一個重新啟動的訊息。順著意做, 你現在起就可以使用瀏覽器來連接到你的 HTTP 伺服器了。
4.5. 在 Macintosh 內設立 TCP/IP
如果你使用 Macintosh 做為存取你的網路的。 那麼,本章就是在說明如何 在 PowerMac 上安裝 MacTCP。
附記: 要讓你在使用 WWW 瀏覽器時及所有的內部網路命令時使用 http://linux.mydomain/ 來代替 http://172.16.0.1/ 來連上伺服器。你需要修改 hosts 檔。它的格式和使用 Unix 上的不同。 Mac 的hosts 檔是以 RFC-1035為主。你可以加上你的 其他主機 (Netware, Unix, WinNT)。 MacOS 將它的 HOSTS 檔放在 System folder的Preferences folder 之下。修改這個檔案並為你的 Linux 伺服器加上:
-
linux.mydomain A 172.16.0.1 netware.mydomain A 172.16.0.2 winNT.mydomain A 172.16.0.3 ws_1 A 172.16.0.5
4.5.1. MacTCP
這一章節旨在說明如何安裝 MacTCP。 首先, 你必須先從 Apple 那兒下載 MacTCP 檔案或是從網際網路的連結 CD 來安裝它。 要建構 MacTCP, 請在 Apple Menu/ Control Panels/ TCP/IP 裏按一下老鼠鍵, 在螢幕裏改 'Connect via: ' 的值成為 'Ethernet'。
改變 'Configure' 設定成為 'Manually'
-
在 IP address 對話盒裏輸入 172.17.0.5 在 Subnet Mask 對話盒裏輸入 255.255.255.0 在通訊閘裏輸入你的通訊閘 (路由器) 位址為 172.17.0.254
按確認。你現在起就可以使用瀏覽器來連接到你的 HTTP 伺服器了。
5. 設立內部網路
無法與不同的工作平台分享資源的話就不能算是一個完整的內部網路了。你 需要支援其他檔案系統, 才能存取他們裏頭所提供的資料。 本文件提供了 Linux 與下面大家耳熟能詳的檔案系統連接的方法。
依照 Linux 的版本不同,這些檔案系統都可被編譯到 Linux 核心內或是加 成模組。 如果你並不熟悉編譯核心, 你可以參考 Kernel HOWTO [http: //sunsite.unc.edu/mdw/HOWTO/Kernel-HOWTO.html http://sunsite.unc.edu/mdw/HOWTO/Kernel-HOWTO.html] 以及 Module HOWTO http://sunsite.unc.edu/mdw/HOWTO/Module-HOWTO.html 有如果把模組與核心一起做編譯。
5.1. NCPFS
要把 Netware 伺服器的檔案分享出來的話,你會需要有對 NCP (ncpfs) 的 支援。 NCPFS 與核心 1.2.x 及 1.3.71 版 (含 ) 以後的核心配合使用。 他無法與任何早期的 1.3.x 核心相配合使用。它在 Netware 4.x 上無法存 取 NDS 資料庫,但可使用冊籍。如果您使用 Netware 4.x 你可以在主控台 上使用 Set Bindery Context 命令來打開特定容器對冊籍的支援 :
-
set Bindery Context = CORP.MYDOM;WEBUSER.MYDOM
在上面的例子中有兩個容器已被打開對冊藉的支援。
你可以從 Sunsite 來下載 NCP 檔案系統的公用程式, 使用 URL [ftp: //sunsite.unc.edu/pub/Linux/system/filesystems/ncpfs/ncpfs.tgz ftp://sunsite.unc.edu/pub/Linux/system/filesystems/ncpfs/ncpfs.tgz] (目前為 ncpfs-2.0.10)。
5.1.1. 安裝
要安裝 ncpfs 公用程式,執行
-
zcat ncpfs.tgz | tar xvf -
來把所有檔案解到它自己的目錄內。在這個例子裏你會得到ncpfs-2.0.10 目錄, 在繼續安裝前改變目錄到這個 ncpfs 目錄內。如有需要請閱讀 README 並修改 Makefile 檔案。
安裝 ncpfs 取決於你使用的核心是哪個版本的。在核心 1.2 上,你只需執 行 'make'。接著 'make install' 就會安裝可執行檔以及 man 頁了。
如果你使用核心 1.3.71 或以後的版本,你就得重新編譯你的核心了。在這 些核心上,ncpfs 的核心部份已經被包含在主要的原始程式樹裏頭了。想看 看是否你的核心需要重新編譯,請執行
-
cat /proc/filesystems
它會顯示出一行說核心認得 ncpfs。
如果 ncpfs 沒有出現,你可以重新編譯核心或是加上 ncpfs 模組。若要重 新編譯核心, 你須執行 'make config',當它問你
The IPX protocol (CONFIG_IPX) [N/y/?]
簡單回答 'y'。接下來你會被問到是否需要完整的內部網路,你也許不需。 等到核心成功地被安裝了,重新開機,然後檢查/proc/filesystems。 如果全部都沒問題,再接著安裝 ncpfs 公用程式。 改變目錄到裝著你下載 的 ncpfs 檔案的目錄內, 執行 'make'。 在編譯完成後再執行 'make install' 來安裝其他的公用程式與 man 頁。
5.1.2. 掛上NCPFS
檢查安裝,請執行
-
ipx_configure --auto_interface=on --auto_primary=on ...等個10秒再執行 slist
你應該就可以看到 Netware 伺服器的一串列表。我們要開始從 Netware 伺 服器上分享檔案了。
假設我們需要從伺服器 MYDOM_NW 內的磁碟 VOL1: 裏存取 \home\htmldocs 目錄內的 HTML 檔案。我推薦你在這 台伺服器上建立個新使用者 (如 ) 'EXPORT', 密碼為 'EXP123' 給那些你 允許他們使用 SYSCON 或 NWADMIN 帳號來存取這個目錄的人使用。
在 Linux 機器上建立個新 /mnt/MYDOM_NW 目錄。 現在執行
-
ncpmount -S MYDOM_NW -U EXPORT -P EXP123 /mnt/MYDOM_NW
要掛上 netware 檔案系統。執行
-
ls /mnt/MYDOM_NW/vol1/home/htmldocs
就會列出在 MYDOM_NW/VOL1: \HOME\HTMLDOCS 內 的所有檔案 (使用 Netware 檔案表示法 )。 如果你有任何問題, 請閱讀 IPX HOWTO 在 http://sunsite.unc.edu/mdw/HOWTO/IPX-HOWTO.html 會有更多詳 細的資訊。
5.2. SMBFS
若要分享檔案到 Windows 伺服器上,你需要有 SMB (smbfs)支援才行。
你需要從Sunsite上載入SBM檔案系統公用程式 ftp://sunsite.unc.edu/pub/Linux/system/filesystems/smbfs/smbfs.tgz (currently smbfs-2.0.1)。
5.2.1. 安裝
要安裝 smbfs 公用程式,鍵入
-
zcat smbfs.tgz | tar xvf -
將所有的檔案解到它自己的目錄內。在這例子裏會產生一個 smbfs-2.0.1 目錄,在接著安裝前把目錄改到這個 smbfs 目錄上。有需要請閱讀 README 及編修 Makefile。
安裝 smbfs 取決於你使用的核心是哪個版本的。在核心 1.2 上,你只需執 行 'make'。 接著 'make install' 就會安裝可執行檔以及man頁了。
如果你使用核心 2.0 或以後的版本,你就得重新編譯你的核心了。 在這些 核心上,smbfs 的核心部份已經被包含在主要的原始程式樹裏頭了。想看看 是否你的核心需要重新編譯,請執行
-
cat /proc/filesystems
它會顯示出一行說核心認得 smbfs。
如果 smbfs 沒有出現,你可以重新編譯核心或是加上 smbfs 模組。若要重 新編譯核心, 你須執行 'make config',當它問你要加上 SMB 檔案系統支 援時回答 yes。 等到核心成功地被安裝了, 重新開機, 然後檢查 /proc/filesystems。 如果全部都沒問題 ,再接著安裝smbfs公用 程式。改變目錄到裝著你下載的 smbfs 檔案上,執行 'make'。在編譯完成 後再執行 'make install' 來安裝其他的公用程式與man頁。
5.2.2. 掛上 SMBFS
在我們的例子中,讓我們假設 WinNT 伺服器就叫做 'MYDOM_NT',它分享了 它的目錄 C:\PUB\HTMLDOCS 以一個沒有密碼的名字叫 'HTMLDOCS'。 在 Linux 機器上建立一個新的 /mnt/MYDOM_NT 目 錄,現在執行下列命令
-
smbmount //MYDOM_NT/HTMLDOCS /mnt/MYDOM_NT -n
要掛上 SMB (windows 分享的 ) 檔案系統。 如果這樣無法工作請試看看
-
smbmount //MYDOM_NT/COMMON /mnt/MYDOM_NT -n -I 172.16.0.3
執行下面命令
-
ls /mnt/MYDOM_NT
將會列出所有在 bsol;bsol;MYDOM_NT\PUB\HTMLDOCS 內的檔案列表 (使用 Windows 檔案表示法)。
5.3. NFS
首先你需要一個已編譯好在裏頭或有可用的NFS檔案系統模組在核心內。
假設你有個 Unix 主機執行著 NFS, 名字叫做 MYDOM_UNIX, IP 位址為 172.16.0.4。 你可以經由打入以下命令來輸出 (分享 ) 這個主機,就可以 檢查目錄了。
-
showmount -e 172.16.0.4
一旦我們知道輸出的目錄是可以經由輸入適當的 mount 命令即可把它們給 掛上。 我推薦你在 '/mnt' 目錄下建立一個子目錄 (如 ) 'MYDOM_UNIX' 來做為你的掛上點。
-
mount -o rsize=1024,wsize=1024 172.16.0.4:/pub/htmldocs /mnt/MYDOM_UNIX
這個 rsize 和 wsize 可以依靠你的使用環境做改變的。
如果你有任何問題請閱讀在 http://sunsite.unc.edu/mdw/HOWTO/NFS-HOWTO.html 內的 NFS HOWTO ,裏頭有對 NFS 系統的深入介紹。
6. 存取網路
現在我們已建好 HTTP 伺服器、 客戶端以及把 Linux 伺服器與其他的伺服 器相連結了, 我們需要在 Linux 伺服器上做一些小小的調整才能從網頁瀏 覽器上存取這些已掛上的檔案系統。
6.1. 存取一個已掛上的檔案系統
要存取在你的HTML網頁中已掛上的目錄的方法有二個:
在 DocumentRoot ( /usr/local/etc/httpd/htdocs ) 內建立一個連結來指向已掛上的目錄,如下:
-
ln -s /mnt/MYDOM_NW/vol1/home/htmldocs netware or ln -s /mnt/MYDOM_NT winNT or ln -s /mnt/MYDOM_UNIX unix
-
修改在你的 /usr/local/etc/httpd/conf 目錄內的 srm.conf 檔案,並加上一個新 alias。
# Alias fakename realname Alias /icons/ /usr/local/etc/httpd/icons/ # alias for netware 伺服器 Alias /netware/ /mnt/MYDOM_NW/vol1/home/htmldocs/ Alias /winNT/ /mnt/MYDOM_NT/ Alias /unix/ /mnt/MYDOM_UNIX
再重新啟動您的 HTTPd。經由參考 http://linux.mydomain/netware/index.htm 你就可以存取在 netware 伺服器上的文件因為 netware 的檔案以及和其他 的系統之表示方式相同。
6.2. 連上 網際網路
你可以很容易地將你的內部網路與網際網路來收發 E-Mail 以及存取許多不 錯的資訊。我計畫在未來改版是將寫一個簡單的筆記來介紹怎麼做。細節可 以從 ISP Hookup HOWTO (連上 ISP) 上得到解說 http://sunsite.unc.edu/mdw/HOWTO/ISP-Hookup-HOWTO.html 還 有 Diald mini HOWTO (撥接 ) http://sunsite.unc.edu/mdw/HOWTO/mini /Diald 教你如何設定這些連接。
6.3. 其他的用處
HTTP 伺服器在辦公室中可被用來提供對不同伺服器內的多個地點與目錄的 透存取資訊。這些資料可以是 Word 內的簡單文件、Lotus 的試算表,或是 複雜的資料庫。
這種技術的應用通常如下所列:
出版公司文件
這些文件可以是新聞稿、年度報告、地圖、公司設備、報價表、產品資訊介 紹以及任何對公司有價值的文件。
存取可尋找到的目錄
像快速存取公司電話號碼簿的功能。 這個資料可以經由 CGI 命令手稿來映 製到網站上, 網站伺服器可以當成一個後端已存在的或新的應用程式之間的通訊閘道。 也就是說,使用相同的標準存取機制時,資訊就可被廣泛且可用簡單的方法即可被製作。這意味著它可以被使用來 建立一個與 RDBMS 的介面, 就像 ORACLE 和 SYBASE 是用來產生即時資訊 一樣。 這兒有一表列的連結到像這樣的網站。
- Web Access - [h /db/web_access.html http://cscsun1.larc.nasa.gov/~be owulf/db/web_access.html] - CGI gateways - [//www.w3.org/hypertext/WWW/RDBGate/Overview.html //www.w3.org/hypertext/WWW/RDBGate/Overview.html]
公司/部門/個人的網頁
像在組織內部的文化已經改變到幾乎每個部門都向自己的昔日的狀態前進。 內部網路技術提供了一個給部門或個人溝通最新資訊的理想媒 介。功能強大的蒐尋引擎提供我們尋找那些知道每天做生意時所產生的一連 串問題之解答的團體或個人的一個工具。
簡單的 Groupware 應用程式
有了 HTML 格式的支援,網站能提供填表、意見調查以及簡單的排程功能。
軟體供應
管理者能夠使用內部網路經由公司網路來傳遞使用者所需要的軟體和更新版 。這可以使用 'Java' 來做,它允許 which allows the creation and transparent distribution of objects on-demand rather than just data or applications. 這在更新的有內建對 Java 支援的 Linux 版本 上將會更容易。
信件
由於人與人間轉移到運用內部網路郵件產品與標準且簡易的黏貼上文件、聲 音、 影像以及其他的多媒體資訊, 電子郵件已經被推展成為一個簡單、 de facto 的通訊方式了。 人與人間、個人與小團體間的郵件通訊是很重要 的。 在 Linux 平台上有很多的公用軟體可以使用來設立一個 E-mail 系統,例如 sendmail、pop3d、imapd。
使用者介面
內部網路科技如此地快速進步, 可以使用的工具,特別是 HTML,能很快地 改變以前我們連接其他系統的方法。使用 HTML 你可以設立一個只有創立者 的想像力才會有限制的介面。 使用內部網路科技的最美麗的地方就是 它 很簡單 。從 HTML 的超連結上按一下就可以到另一頁、它可以發出警告、 執行一個整年的程式或是任何電腦程式能做的事。
7. 更多需要做的事
以下是 Linux 內部網路伺服器的其他有趣應用。 在下面所提到的所有軟體 不是免費就是共享軟體。
使用 Win95/NT 裏的網路芳鄰來瀏覽 Linux 伺服器;將 WINS 設定成像 NBT 伺服器一樣。詳情請看 SAMBA 網站t http://lake.canberra.edu.au/pub/samba/samba.html
在你的內部網路裏實作一個搜尋引擎。連結到 ht://Dig 網頁 http://htdig.sdsu.edu/
使用 CUSeeMe 來設立一個 local reflector。他們在 Cornell 的網頁 http://cu-seeme.cornell.edu/
設立一個網路會議。可使用 COW ,網頁在 http://thecity.sfsu.edu/COW/
部置一個 SQL 資料庫,請參考 mSQL 的網頁 http://Hughes.com.au/
在 Netware 伺服器上設立 FTP,Gopher,Finger,Bootp 伺服器。參考網頁 http://mft.ucs.ed.ac.uk/
模擬成一個 Netware 伺服器。查看一下 NCP Utilities 的網頁 ftp://sunsite.unc.edu/pub/Linux/system/filesystems/ncpfs/
如果你發現其他 Linux 內部網路伺服器的有趣使用法, 請一定要告訴我哦 。
8. 感謝與合法性
8.1. 感謝
感謝在 NCSA 裏的朋友提供了這麼棒的文件, David Anderson 以及其他所 有的朋友試驗了本 HOWTO 的內容並說出他們的評語。 關於 Netware/IP 上的細節是由 Romel Flores ( [email protected]) 所 贊助。
8.2. 版權資訊
本文件版權屬於 1996,1997 年 Pramod Karnad 先生, 必須在以下 的條件下才能被散佈使用:
Linux HOWTO 文件可以全部或一部分地以任何的實體媒介或電子形式 地被重製或散佈,只要這份版權聲明在所有的拷貝上被保留下來。商業性的 再散佈使用是被允許與鼓勵的;然而,作者希望在樣的散佈使用前能被預先 被告知。
所有的翻譯、衍生的作品, 或任何有關於集結任何的 Linux HOWTO 文件的行為都必須在這個版權下來做。 也就是說,你不能從一份 HOWTO 文 件而衍生出另一份作品後就限制對於它的被散佈使用權。在這些條文以外只 要在必要的條件下亦被允許使用; 請與 Linux HOWTO 的連絡人以下面附上 的地址來連絡。
如果您有任何問題, 請與 Tim Bynum 連絡, 它是 Linux HOWTO 的連絡人, 寄到 [mailto: [email protected] [email protected]] 如果覺得用寄信的方式太慢那麼就 問他的電話吧。
後記:
譯者按: 若您發現本文件內容有翻譯不順暢或錯誤的地方,請您來信告訴我,以做更正,謝謝。
[email protected]。 譯註:這份文件的中文版可在 http://www.linux.org.tw/CLDP/下取得。