NCP & SMB File Systems for Linux

虽 然 Linux的 资 讯 在 国 内 属 少 数 , 但 亦 有 许 多 人 已 自 行 架 设 了 Linux的 主 机 。 但 要 如 何 让 Linux主 机 与 现 有 的 Novell甚 至 Windows NT Server相 互 连 结 呢 ? 本 文 就 有 一 解 决 方 案 提 供 您 。

本文作者/Champion Kuo


  当 你 装 好 了 一 台 Linux後 , 你 马 上 会 有 个 念 头 产 生 , 如 何 让 Linux分 享 Novell和 Windows NT的 资 源 。 以 目 前 的 工 具 , Linux与 Novell连 网 , Netware Server需 加 上 NetWare NFS, 这 个 方 法 花 费 太 大 。 而 Linux与 WinNT的 连 网 , Win NT Server需 加 上 NFS Server, 这 也 不 是 便 宜 现 成 的 方 法 。 NCPFS和 SMBFS这 两 个 Sharewares 可 以 让 你 梦 想 成 真 。 NCPFS( NetWare Core Protocols File System) 可 以 让 Linux挂 上 ( Mount) 跑 NCP的 Server, 也 就 是 所 有 NetWare Server。

  SMBFS( Server Message Block File System) 可 以 让 Linux挂 上 , 跑 SMB 的 Server, 也 就 是 Lan Manager, Windows 95和 Windows NT Server。

NCPFS的 安 装

  根 据 安 装 介 绍 NCPFS有 以 下 限 制 : NCPFS 只 使 用 Bindary不 用 NDS, 所 以 NetWare 4.x必 须 有 Bindary模 拟 安 装 。 另 外 , Linux Kernel 1.3.1 -1.3.70不 能 使 用 。 Linux Kernel 1.2.X与 1.3.71- 2.x安 装 方 式 不 同 , 所 以 , 以 下 会 有 二 部 份 说 明 :

  由 於 NetWare使 用 IPX协 议 , 所 以 Linux也 要 有 支 持 IPX才 能 连 网 。 请 确 定 在 Compile Kernel 时 , make config其 中 一 项 选 项 设 为 y:

Kernel 1.2.x The IPX Protocol ( CONFIG_IPX) [n] y

Kernel 1.3.71 - 2.x, 除 上 述 项 , 需 加 多 一 选 项 设 为 y:

NCP filesystem support ( to mount Netware volume) ( CONFIG_NCP_FS) [n] y

NCPFS在 此 以 ncpfs-2.0.7.tgz为 例 , 可 以 从 以 下 地 址 Download:

FTP://sunsite.unc.edu/pub/Linux/systems/Filesystems/ncpfs/ncpfs-2.0.7.tgz

我 们 将 使 用 /usr/local为 暂 时 工 作 目 录 :

#cp ncpfs-2.0.7.tgz /usr/local
#cd /usr/local
#tar -zxvf ncpfs-2.0.7.tgz
( 建 立 ncpfs-2.0.7 子 目 录 , 解 压 缩 原 程 式 )
#cd ncpfs-2.0.7
#make
( Compile ncpfs 原 程 式 )
#make install
( 将 Compile 後 的 执 行 程 式 , 安 装 至 相 关 目 录 )
( kernel 1.2.x 者 , 尚 需 注 意 此 项 /ncpfs.o 可 加 载 模 组 , kernel 2.x 不 需 此 项 )
#cp /ncpfs.o /lib

接 着 我 们 要 建 立 个 启 动 程 式 rc.startipx

#vi rc.startipx
insmod /lib/ncpfs.o
( 注 意 /lib/ncpfs.o可 加 载 模 组 , 为 kernel 1.2.x, kernel 2.x不 需 此 项 )
ipx_interface add -p eth0 802.3 ffff

  ipx_interface的 802.3为 NetWare的 frame_type, 根 据 需 要 有 可 能 你 要 改 为 802.2。 另 外 , ffff 为 我 的 netware network number, 你 要 改 为 你 的 network number。 注 意 , 是 network number, 不 是 ipx internal network number。

(程式一)

  以 下 为 NCPFS所 提 供 与 Netware相 似 的 指 令

ncopy* nwauth* nwborm* nwbpset* nwmsg* nwuserlist*

ncptest* nwbocreate* nwbpadd* nwbpvalues* nwpasswd* pqlist*

nprint* nwbols* nwbpcreate* nwfsinfo* nwrevoke* pserver*

nsend* nwboprops* nwbprm* nwgrant* nwrights* slist*

  以 上 指 令 均 可 用 man参 考 如 何 使 用 。

值 的 一 提 是 nprint与 pserver, nprint可 让 你 从 Linux使 用 Novell的 Printers。 而 pserver是 让 Linux的 Printers成 为 Novell Server的 一 个 Printer Queue。

SMBFS 的 安 装

  根 据 安 装 介 绍 SMBFS有 以 下 限 制 : Linux Kernel 1.2.X-1.3.6与 Kernel 1.3.7-2.x安 装 方 式 不 同 , 所 以 , 以 下 会 有 二 部 份 说 明 , 另 外 Kernel 2.x 建 议 使 用 2.0.26之 後 版 本 。

  由 於 SMBFS使 用 TCP/IP协 议 , 所 以 用 ping 来 确 定 Linux与 Windows NT之 间 已 连 线 。 另 外 , Kernel 1.3.7以 後 版 本 , 请 确 定 在 Compile Kernel时 , make config其 中 一 项 选 项 设 为 y:

SMB filesystem support ( to mount WFW share etc..) ( CONFIG_SMB_FS) [n] y   SMBFS在 此 以 smbfs-0.7.tgz为 例 , 可 以 从 以 下 地 址 Download:

FTP: //sunsite.unc.edu/pub/Linux/systems/Filesystems/smbfs/smbfs-0.7.tgz

  我 们 将 使 用 /usr/local为 暂 时 工 作 目 录 :

#cp smbfs-0.7.tgz /usr/local
#cd /usr/local
#tar -zxvf smbfs-0.7.tgz
( 建 立 smbfs-0.7子 目 录 , 解 压 缩 原 程 式 )
#cd smbfs-0.7
#make
( Compile smbfs 原 程 式 )
#make install
( 将 Compile後 的 执 行 程 式 , 安 装 至 相 关 目 录 )
( kernel 1.2.x -1.3.6者 , 尚 需 注 意 此 项 /smbfs.o可 加 载 模 组 , kernel.3.7 - 2.x不 需 此 项 )
#cp /usr/local/smbfs-0.7/kernel-1.2/src/smbfs.o/lib

SMBFS 的 使 用

devp: /# insmod /lib/smbfs.o
( 注 意 /lib/smbfs.o可 加 载 模 组 , 为 kernel 1.2.x-1.3.6 , kernel .3.7- 2.x 不 需 此 项 )
(程式二)
( 必 须 确 定 看 到 此 行 , 支 持 SMB file system, 不 然 无 法 使 用 ) (程式叁)

( Win95的 share //win95-caviar/linux 挂 在 Linux 的 /mnt.win95)

行 笔 至 此 , 不 禁 要 赞 叹 Linux的 伟 大 。 以 本 文 所 介 绍 的 连 网 。 要 是 在 数 年 前 , 这 个 工 作 可 能 要 数 名 高 手 , 再 加 上 一 大 笔 软 体 钱 , 才 能 实 现 。 如 今 不 用 花 半 毛 钱 , 轻 轻 松 松 完 成 叁 大 主 流 Servers连 网 。 这 一 切 都 要 感 谢 Linux的 开 放 系 统 设 计 , 与 全 世 界 的 爱 好 者 耕 耘 成 果 , 使 梦 想 成 真 。

( 笔 者 为 Master CNE和 Microsoft Certified System Engineer现 任 职 Texcom Inc.总 工 程 师 E-Mail: champion@texcom.com