Linux Intranet 伺服器 HOWTO (内部网路伺服器HOWTO) 作者: Pramod Karnad, [1]karnad@indiamail.com 译者: 谢昆中 HSIEH Kun-Chung, 台湾 中华民国 Taiwan, Republic of China (NOT People's Republic of China) ( [2]linuxer.bbs@cis.nctu.edu.tw) 1997年8月7日, v2.11版翻译完成日期: 中华民国 87年 10月 10日国庆日 _________________________________________________________________ 本文件旨在说明如何使用 Linux 来设立一内部网路伺服器来与 Unix、Netware 、NT 以及 Windows 连接在一起。因此,只要与 Linux 系统连接上, 你还能提 供和所有其他平台透明的存取。 并提供了详细解说如何使用NCSA 伺服器来设定 HTTP, 以及让 Novell、 Microsoft 的 Windows3.1、WFWG、 Win95 及 WinNT 使用 TCP/IP 客户端程式来连接上, 在 Apple 的PowerMac 上使用 MacTCP 来连 接。 _________________________________________________________________ 1. 简介 * 1.1 需要什麽 * 1.2 本文件的最新版本 * 1.3 回应 2. 安装 HTTP 伺服器 * 2.1 下载前的准备工作 * 2.2 编译 HTTPd 3. 测试 HTTPd 4. 连上 Linux 伺服器 * 4.1 设定 Linux 伺服器 * 4.2 建定 Netware 伺服器 * 4.3 设定 Netware 客户端 * 4.4 设定 Microsoft Client * 4.5 在 Macintosh 内设立 TCP/IP 5. 设立内部网路 * 5.1 NCPFS * 5.2 SMBFS * 5.3 NFS 6. 存取网路 * 6.1 存取一个已挂上的档案系统 * 6.2 连上 网际网路 * 6.3 其他的用处 7. 更多需要做的事 8. 感谢与合法性 * 8.1 感谢 * 8.2 版权资讯 _________________________________________________________________ 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 [3]http://hoohoo.ncsa.uiuc.edu/docs/setup/OneStep.html 网页中下载。 * Novell Netware Client 可由 [4]HTTP://support.novell.com/ 下 载(TCP/IP 档案已包含在客户端)。 * Microsoft TCP/IP client 可由 [5]HTTP://www.microsoft.com/ 下载 * Apple MacTCP client 可由 [6]HTTP://www.apple.com/ 下载 * WWW 浏览器,像Netscape 可由 [7]HTTP://home.netscape.com/ 下载,微软 的 IE 可由 [8]HTTP://www.microsoft.com/ 下载 、 NCSA Mosaic 由 [9]http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/NCSAMosaicHome.htm l 下载 1.2 本文件的最新版本 最新的 Linux 内部网路伺服器 HOWTO 会定期地布告在 comp.os.linux.announce 以及 comp.os.linux.help 上。 也会被上传到许 多的 Linux FTP 伺服器上,这包含 sunsite.unc.edu。 本文件的最新 HTML 格式的版本可在 [10]http://www.inet.co.th/cyberclub/karnadp/http.html 上找到。 1.3 回应 如果您有针对本文件的任何问题与建议, 请不要客气,寄封信来给 Pramod Karnad, email [11]karnad@indiamail.com。很欢迎您的建议、评论或来信。如 果您在 本文件中找到错误的地方,让我能在下个版本上把它更正。谢谢 ! 2. 安装 HTTP 伺服器 当你下载伺服器软体时,你有两个选择: 取用原始程式档再自己来编译它, 或是 取用已经编译好的二进位执行档。 已编译好的给 Linux (ELF 版本 ) 用的二进 位档可以在 NCSA 上取得,它们都非旧的版本哦! 2.1 下载前的准备工作 在 NCSA 的伺服器会导引你做建构选项的步骤并为你料理许多档案。但在您 □试 要下载 HTTPd 前请先回答下列问题 作业系统 首先,你必须选择是要下载原始程式档案呢? 还是已编译好的软体。如果你 的系 统并没出现在选单上,那麽您就必须取回内定的原始档案,再自己编译 它。 要检查你的 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。 处理类型 (伺服器类型) 这项是来指定你的机器会怎麽地执行你的 HTTPd 伺服器。 最好的方法是 "standalone"。这样可让 HTTP 精灵一直地执行。如果您选择载 入 HTTPd 在 "inetd" 内,伺服器的二进位码会在每一次的需求 时被重载入记忆体内,这样可 能会减慢你的伺服器。 连接埠 (埠) 这项指定您的机器的哪一个埠会被 HTTPd 精灵使用来 bind to 及聆听 HTTP 请 求。如果你可以签作成 "root",请使用内定值 80。 或 者请在 1025 到 65535 之间挑选一个。 伺服器使用者识别 (使用者) 这是伺服器在答覆要求时改变成为的及实际作用的档案时所需的使用者识别。 只 有你将伺服器当 "独立单机"时才需要回答这个问题。如果你 没有 root 的授权 ,只需使用你的迁入名称即可。如果你是系统管理员, 你可能会想建立一个特别 的使用者来让你控制档案系统的授权。 伺服器群组识别 (群组) 这是群组识别名称,伺服器会在回应需求及在这些档案动件时改变成它们。 它和 伺服器使用者识别名称有点相同,而且只有在你独自执行伺服器时才可 以使用。 如果你没有 root 的权限, 请使用你的主要群组的名义。 你可以在 Linux 的命 令列中打入 groups 得知您的群组名称。 伺服器管理员电子邮件地址 (伺服器 Admin) 这是当使用者要报告在伺服器上有哪些问题时要寄电子邮件做报告的地址。 你可 以填上你的个人的 e-mail地址。 伺服器目录的位置 (伺服器Root) 这是指伺服器位於你的系统的哪个地方。如果你有 root 的权限,请让它就 依照 它所建议的地点 /usr/local/etc/httpd 内。 如果你无法以 root 的身份签入, 请在你的 home 目录内选择一个次目录。你可以使用ind out the path of your home directory with the pwd command. HTML 档案的位置 (DocumentRoot) 这儿是被伺服使用的 HTML 档案被放置的地点。 内定的位置是 /usr/local/etc/httpd/htdocs。然而你可以把它设定成你在伺服 器使用者识别 名称内的特别的使用者的 home 目录,或是你的 home 目录内 的一个子目录 (假 如你无法迁入成为 root 的话)。 如果不晓得,请使用内定值。现在你已经有上面问题的答案了,你就可以 从 [12]http: //hoohoo.ncsa.uiuc.edu/docs/setup/OneStep.html 下载 NCSA HTTPd。 在安装前你应该阅读放在 [13]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 400 Bad Request < /TITLE> < /HEAD> <BODY><H1>400 Bad Request < /H1> Your client sent a query that this Server could not understand.<P> Reason: Invalid or unsupported method.<P> < /BODY> 现在我们已准备好使用另一台电脑及网页浏览器来与这台伺服器相连接了。 4. 连上 Linux 伺服器 请参考在 [14]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 并且 不要管所有与通讯闸/路由器的连结。 如果你没有路由器,现在可以跳过这章节 * [15]Setup Netware Server 如果你使用 Netware 伺服器。 * [16]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 位元客户端程式, 请跳到 [17]安 装Windows 95。 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 ---> 如果你必须使用你的通讯闸才能连接到你的H TTP 伺服器才需加上这行 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。 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 到 * [18]Windows for Workgroups (WFWG) * [19]Windows 95 * [20]Windows NT 4.0 附注: 要让你的网页浏览器或所有的内部网路命令在看你的 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 Windows for Workgroups 本章在解释如何在 WFWG 上安装 32bit 的客户端。首先你必须下载由 Microsoft 所提供的Windows版 TCP/IP 驱动程式 最新的版本是 3.11b ,你可以 由 [21]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 伺服器了。 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 伺服器了。 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 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 与 下面大家耳熟能详的档案系统连接的方法。 * [22]Netware的NCP 档案系统 * [23]Windows 的 SMB 档案系统 * [24]Unix 的 NFS 档案系统 依照 Linux 的版本不同,这些档案系统都可被编译到 Linux 核心内或是加 成模 组。 如果你并不熟悉编译核心, 你可以参考 Kernel HOWTO [25]http://sunsite.unc.edu/mdw/HOWTO/Kernel-HOWTO.html 以及 Module HOWTO [26]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 [27]ftp://sunsite.unc.edu/pub/Linux/system/filesystems/ncpfs/ncpfs.tgz (目前为 ncpfs-2.0.10)。 安装 要安装 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 页。 挂上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 在 [28]http://sunsite.unc.edu/mdw/HOWTO/IPX-HOWTO.html 会有更多详 细的资讯 。 5.2 SMBFS 若要分享档案到 Windows 伺服器上,你需要有 SMB (smbfs)支援才行。 你需要从Sunsite上载入SBM档案系统公用程式 [29]ftp://sunsite.unc.edu/pub/Linux/system/filesystems/smbfs/smbfs.tgz (currently smbfs-2.0.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页。 挂上 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 可以依靠你的使用环境做改变的。 如果你有任何问题请阅读在 [30]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) 上得到解说 [31]http://sunsite.unc.edu/mdw/HOWTO/ISP-Hookup-HOWTO.html 还 有 Diald mini HOWTO (拨接 ) [32]http://sunsite.unc.edu/mdw/HOWTO/mini /Diald 教 你如何设定这些连接。 6.3 其他的用处 HTTP 伺服器在办公室中可被用来提供对不同伺服器内的多个地点与目录的 透存 取资讯。这些资料可以是 Word 内的简单文件、Lotus 的试算表,或是 复杂的资 料库。 这种技术的应用通常如下所列: * 出版公司文件 这些文件可以是新闻稿、年度报告、地图、公司设备、报价表、产品资讯介 绍以及任何对公司有价值的文件。 * 存取可寻找到的目录 像快速存取公司电话号码簿的功能。 这个资料可以经由 CGI 命令手稿来映 制到网站上, 网站伺服器可以当成一个後端已存在的或新的应用程式之间的 通讯闸道。 也就是说,使用相同的标准存取机制时,资讯就可被广泛且可用 简单的方法即可被制作。这意味著它可以被使用来 建立一个与 RDBMS 的介 面, 就像 ORACLE 和 SYBASE 是用来产生即时资讯 一样。 这儿有一表列的 连结到像这样的网站。 - Web Access - [33]http://cscsun1.larc.nasa.gov/~be owulf/db/web_access.html - CGI gateways - [34]HTTP://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 [35]http://lake.canberra.edu.au/pub/samba/samba.html * 在你的内部网路□实作一个搜寻引擎。连结到 ht://Dig 网页 [36]http://htdig.sdsu.edu/ * 使用 CUSeeMe 来设立一个 local reflector。他们在 Cornell 的网页 [37]http://cu-seeme.cornell.edu/ * 设立一个网路会议。可使用 COW ,网页在 [38]http://thecity.sfsu.edu/COW/ * 部置一个 SQL 资料库,请参考 mSQL 的网页 [39]http://Hughes.com.au/ * 在 Netware 伺服器上设立 FTP,Gopher,Finger,Bootp 伺服器。参考网页 [40]http://mft.ucs.ed.ac.uk/ * 模拟成一个 Netware 伺服器。查看一下 NCP Utilities 的网页 [41]ftp://sunsite.unc.edu/pub/Linux/system/filesystems/ncpfs/ 如果你发现其他 Linux 内部网路伺服器的有趣使用法, 请一定要告诉我哦 。 8. 感谢与合法性 8.1 感谢 感谢在 NCSA □的朋友提供了这麽棒的文件, David Anderson 以及其他所 有的 朋友试验了本 HOWTO 的内容并说出他们的评语。 关於 Netware/IP 上的细节是 由 Romel Flores (rom@mnl.sequel.net) 所 赞助。 8.2 版权资讯 本文件版权属於 © 1996,1997 年 Pramod Karnad 先生, 必须在以下 的条 件下才能被散布使用: * Linux HOWTO 文件可以全部或一部分地以任何的实体媒介或电子形式 地被重 制或散布,只要这份版权声明在所有的拷贝上被保留下来。商业性的 再散布 使用是被允许与鼓励的;然而,作者希望在样的散布使用前能被预先 被告知 。 * 所有的翻译、衍生的作品, 或任何有关於集结任何的 Linux HOWTO 文件的 行为都必须在这个版权下来做。 也就是说,你不能从一份 HOWTO 文 件而衍 生出另一份作品後就限制对於它的被散布使用权。在这些条文以外只 要在必 要的条件下亦被允许使用; 请与 Linux HOWTO 的连络人以下面附上 的地址 来连络。 * 如果您有任何问题, 请与 Tim Bynum 连络, 它是 Linux HOWTO 的连络人 , 寄到 [42]linux-howto@sunsite.unc.edu 如果觉得用寄信的方式太慢那 麽就 问他的电话吧。 後记: 译者按: 若您发现本文件内容有翻译不顺畅或错误的地方,请您来信告诉我,以 做更正,谢谢。 [43]linuxer.bbs@cis.nctu.edu.tw。 译注:这份文件的中文版 可在 [44]http://www.linux.org.tw/CLDP/下取得。 References 1. mailto:karnad@indiamail.com 2. mailto:linuxer.bbs@cis.nctu.edu.tw 3. http://hoohoo.ncsa.uiuc.edu/docs/setup/OneStep.html 4. http://support.novell.com/ 5. http://www.microsoft.com/ 6. http://www.apple.com/ 7. http://home.netscape.com/ 8. http://www.microsoft.com/ 9. http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/NCSAMosaicHome.html 10. http://www.inet.co.th/cyberclub/karnadp/http.html 11. mailto:karnad@indiamail.com 12. http://hoohoo.ncsa.uiuc.edu/docs/setup/OneStep.html 13. http://hoohoo.ncsa.uiuc.edu/docs/ 14. file://localhost/tmp/zh-sgmltools.20782/Intranet-Server-HOWTO.txt.html#Intro 15. file://localhost/tmp/zh-sgmltools.20782/Intranet-Server-HOWTO.txt.html#SetupNW 16. file://localhost/tmp/zh-sgmltools.20782/Intranet-Server-HOWTO.txt.html#MSClient 17. file://localhost/tmp/zh-sgmltools.20782/Intranet-Server-HOWTO.txt.html#NWWin95 18. file://localhost/tmp/zh-sgmltools.20782/Intranet-Server-HOWTO.txt.html#MSWFWG 19. file://localhost/tmp/zh-sgmltools.20782/Intranet-Server-HOWTO.txt.html#MSWin95 20. file://localhost/tmp/zh-sgmltools.20782/Intranet-Server-HOWTO.txt.html#MSWinNT 21. ftp://ftp.microsoft.com/ 22. file://localhost/tmp/zh-sgmltools.20782/Intranet-Server-HOWTO.txt.html#NCPFS 23. file://localhost/tmp/zh-sgmltools.20782/Intranet-Server-HOWTO.txt.html#SMBFS 24. file://localhost/tmp/zh-sgmltools.20782/Intranet-Server-HOWTO.txt.html#NFS 25. http://sunsite.unc.edu/mdw/HOWTO/Kernel-HOWTO.html 26. http://sunsite.unc.edu/mdw/HOWTO/Module-HOWTO.html 27. ftp://sunsite.unc.edu/pub/Linux/system/filesystems/ncpfs/ncpfs.tgz 28. http://sunsite.unc.edu/mdw/HOWTO/IPX-HOWTO.html 29. ftp://sunsite.unc.edu/pub/Linux/system/filesystems/smbfs/smbfs.tgz 30. http://sunsite.unc.edu/mdw/HOWTO/NFS-HOWTO.html 31. http://sunsite.unc.edu/mdw/HOWTO/ISP-Hookup-HOWTO.html 32. http://sunsite.unc.edu/mdw/HOWTO/mini/Diald 33. file://localhost/tmp/zh-sgmltools.20782/h/db/web_access.html 34. http://www.w3.org/hypertext/WWW/RDBGate/Overview.html 35. http://lake.canberra.edu.au/pub/samba/samba.html 36. http://htdig.sdsu.edu/ 37. http://cu-seeme.cornell.edu/ 38. http://thecity.sfsu.edu/COW/ 39. http://Hughes.com.au/ 40. http://mft.ucs.ed.ac.uk/ 41. ftp://sunsite.unc.edu/pub/Linux/system/filesystems/ncpfs/ 42. mailto:linux-howto@sunsite.unc.edu 43. mailto:linuxer.bbs@cis.nctu.edu.tw 44. http://www.linux.org.tw/CLDP/