下一页 上一页 目录

4. ZIP 驱动器

Iomega ZIP 100 驱动器至少有五到六个版本。Iomega 关于这些驱动器的页面位于 http://www.iomega.com/product/zip/。它们都接受类似于 3.5 英寸软盘的特殊卡匣,可以容纳 100 兆字节的数据。 磁盘实际上包含 96 个柱面,每个柱面包含 2048 个扇区,每个扇区包含 512 字节。这通常被称为 96 兆字节。

外置驱动器有以下类型

内置驱动器有以下类型

内置版本可以安装在 3.5 或 5.25 英寸的驱动器插槽中。外置版本采用小型蓝色塑料外壳,由外部电源适配器供电。

所有驱动器的正面都有一个大型按钮。这用于弹出磁盘。Linux 在使用驱动器时会锁定舱门,但是如果在舱门锁定时按下按钮,ZIP 驱动器会记住并在软件解锁后立即弹出磁盘。

4.1 并行端口版本 Zip100

该驱动器的描述位于 http://www.iomega.com/product/zip/zippp.html

Linux 驱动程序有几个不同的版本。ppa.c 程序的 0.26 版本随 2.0.x 内核标准发布。如果您的内核版本早于 2.0.35,那么您拥有的是程序。请查看

David Campbell 的页面 以获取此程序的更新版本。在撰写本文时,当前版本为 1.42。

1.4x 程序的自动配置功能非常出色。您无需告诉程序并行端口的基地址是什么。程序将探测并行端口的标准地址,并在找到驱动器时连接它。

最常见的问题是在 ppa 程序之前加载 lp 打印机模块。ppa 程序必须在 lp 模块之前加载。lp 模块将占用 zip 驱动器需要的端口,这就是 ppa 程序必须首先加载的原因。

还要确保所有电缆都已牢固连接。

如果您做的一切都正确 :),您将在启动时看到如下消息。

  VFS: Mounted root (ext2 filesystem) readonly.
  Adding Swap: 102528k swap-space (priority -1)
  ppa: Version 1.42
  ppa: Probing port 03bc
  ppa: Probing port 0378
  ppa:     SPP port present
  ppa:     EPP 1.9 with hardware direction protocol
  ppa: Found device at ID 6, Attempting to use EPP 32 bit
  ppa: Communication established with ID 6 using EPP 32 bit
  ppa: Probing port 0278
  ppa:     SPP port present
  scsi0 : Iomega parport ZIP drive
  scsi : 1 host.
    Vendor: IOMEGA    Model: ZIP 100           Rev: D.09
    Type:   Direct-Access                      ANSI SCSI revision: 02
  Detected scsi removable disk sda at scsi0, channel 0, id 6, lun 0
  SCSI device sda: hdwr sector= 512 bytes. Sectors= 196608 [96 MB] [0.1 GB]
  sda: Write Protect is off
    sda: sda4
  lp2 at 0x0278, (polling)
  

您可以使用 dmesg | more 查看这些消息。您可以使用 dmesg > dmesg.txt 将消息保存到文件中。如果您正在尝试调试安装,这通常很有用。

另请参阅 获取更多信息 部分

4.2 SCSI 外置版本

该驱动器的描述位于 http://www.iomega.com/product/zip/zipscsi.html

ZIP 驱动器的外置 SCSI 版本有两个 DB25F 连接器和两个配置开关。一个开关选择驱动器的目标地址。选择范围限制为目标 5 或 6。另一个开关启用内部终结器,以防驱动器是链中的最后一个。25 针 SCSI 连接器使用熟悉的 Macintosh 式布线。驱动器随附 Macintosh 型电缆,但如果您使用的主机适配器带有 Centronics 或高密度连接器,则可以轻松获得标准电缆和转换器。

我没有见过内置 SCSI 驱动器,但我预计它会有一个标准的 50 针 DIP 接头 SCSI 连接器和相同的两个开关。

确保您选择的目标地址与您可能在同一总线上拥有的任何其他 SCSI 设备不冲突。还要确保链中物理上最后一个驱动器已启用终端,或安装了外部终端。

如果您有内置 SCSI 磁盘或 CD-rom,并且您将 ZIP 驱动器连接到现有的适配器,您应该检查卡上是否有必须移除的终端。只有 SCSI 总线的两个极端端点应该被终端。如果您的总线部分是内置的,部分是外置的,则最后一个外置设备和一个最后一个内置设备上应该有一个终端,但适配器卡本身上不应该有终端。

确保所有电缆都已牢固连接。

内核配置与内置版本非常相似。有关示例配置,请参阅下一节“SCSI 内置版本”。

ZIP ZOOM 主机适配器

Iomega 销售一款名为 ZIP Zoom 的 SCSI 主机适配器。这实际上是基于 Adaptec AHA1520 系列适配器的设计。它有一个外部 Macintosh 型 DB25F 连接器,与 ZIP 驱动器随附的电缆兼容。

Linux 使用 aha152x 驱动程序支持此适配器。

4.3 SCSI 内置版本

按照“安装和参考指南”中的描述安装硬件,并记下正在使用的 SCSI ID、IRQ 和 I/O 端口地址。(您稍后需要这些信息。)如果驱动器和适配器卡使用不同的 SCSI ID,事情会更顺利。

注意 zip zoom 卡硬连线为 scsi ID 号 7。下面命令行中的 scsi id 是针对卡的,而不是驱动器。卡和驱动器必须使用不同的 scsi id 号。例如,如果卡使用 7,则驱动器使用 5 或其他数字。

在配置内核以包含“SCSI”、“SCSI 磁盘”和“AHA152X/2825”支持后,重新编译内核。安装新内核 :-(

确定您的内核命令行是什么

aha152x=[I/O 端口][,IRQ][,SCSI ID][,RECONNECT][,PARITY]

例如

aha152x=0x140,10,7,1

如果您使用 LILO,请使用 append 命令将您的内核命令行添加到您的 lilo.conf 文件中。

(即 append = "aha152x=0x140,10,7,1")

如果您使用 LOADLIN,请将您的内核命令行添加到您用于启动 loadlin 的命令中。

  (ie. loadlin c:\vmlinuz root=/dev/hda3 aha152x=0x140,10,5,1 ro)
         

4.4 ZIP Plus - IMM 驱动程序

该驱动器的描述位于 http://www.iomega.com/product/zip/zipplus.html

这是外置 Zip 驱动器的较新版本。Zip Plus 不使用 ppa 驱动程序,而是使用 imm 驱动程序。Philippe Andersson 发送了关于 Zip Plus 的 imm 驱动程序的这个优秀章节。感谢 Philippe。

首先,重新构建您的内核以包含以下项目

您会注意到我们没有选择任何 SCSI 底层驱动程序。没关系——我们稍后会单独构建它。

然后,您需要从 Dave Campbell 的主页 (http://www.torque.net/~campbell/imm.tar.gz) 获取驱动程序源代码。0.18 版本是撰写本文时(98 年 8 月)的当前版本。将其解压缩并解压到某个位置(例如 /usr/src 下)。然后只需运行 make。您将获得所需的模块 (imm.o)。将其复制到

/lib/modules/$(uname -r)/scsi
.

如果您的 lp 模块已加载(使用 lsmod(1) 检查),卸载它 (rmmod lp),然后加载 imm.o (insmod imm),您基本上就完成了。

如果在此时 ZIP 驱动器未连接且未通电,您将收到消息“init_module: Device or resource busy”,并且模块将无法加载。(顺便说一句,看起来您无需关闭 PC 即可连接 ZIP - 只需确保模块未加载且驱动器已关闭,然后插入它,打开驱动器,并加载模块。)

如果 ZIP 已连接并通电,但没有磁盘,则模块将正常加载,但您会收到消息,指出它无法读取磁盘分区表。这没关系,因为当您插入 ZIP 磁盘时,分区表将自动读取。

如果有 ZIP 磁盘,您将获得显示的完整信息,包括磁盘上定义的分区列表及其写保护状态。这是一个示例加载时消息

vger:~# insmod imm
imm: Version 0.18
imm: Probing port 03bc
imm: Probing port 0378
imm:     SPP port present
imm:     ECP with a 16 byte FIFO present
imm:     PS/2 bidirectional port present
imm:     Passed Intel bug check.
imm: Probing port 0278
scsi0 : Iomega ZIP Plus drive
scsi : 1 host.
  Vendor: IOMEGA    Model: ZIP 100 PLUS      Rev: J.66
  Type:   Direct-Access                      ANSI SCSI revision: 02
Detected scsi removable disk sda at scsi0, channel 0, id 6, lun 0
SCSI device sda: hdwr sector= 512 bytes. Sectors= 196608 [96 MB] [0.1 GB]
sda: Write Protect is off
 sda: sda1
vger:~#

最后要提到的是,此版本的驱动程序还在磁盘挂载时锁定驱动器舱门。如果在此情况下按下弹出按钮,则不会发生任何事情,但驱动器会“记住”并在磁盘卸载后立即弹出磁盘。

4.5 ATAPI 版本

该驱动器的描述位于 http://www.iomega.com/product/zip/zipatapi.html

曾经生产过一段时间的 IDE 版本的驱动器。我认为在很大程度上,这已被 ATAPI 版本所取代。

Donald Stidwell 发送了关于 ATAPI 版本的这些评论。感谢 Don。

我使用 ATAPI Zip 驱动器,它可以在 2.0.32 和 2.0.33 内核下工作。我在 RH 5.0 和 OpenLinux 1.2(我当前使用的发行版)下都使用过它。为了使其在 OpenLinux 下工作,我只需在内核中启用ATAPI 软盘支持。默认情况下,OpenLinux 没有编译此支持。

不需要其他驱动程序。它将挂载为分区 4 上的扩展分区。即,我的挂载在 HDB4 上。我将其作为 noauto 挂载在 /mnt/zip 下,尽管我认为自动挂载不会有任何实际问题。我只是想知道弹出磁盘的事情。我总是在弹出卡匣之前卸载驱动器。

Linux Gazette 1998 年 5 月刊中有关于 ATAPI 安装的更详细说明。请参阅 2 美分提示部分。

     <url url="http://www.linuxgazette.com/issue28/lg_tips28.html#atapi">
  

4.6 IDE 版本

我没有使用过 IDE 版本。Eric Backus 发送了这些评论。感谢 Eric。

我有一个这样的驱动器。它是一年前随我的 Gateway 2000 计算机一起提供的。我认为在 ATAPI 版本的 ZIP 驱动器可用之前,大多数这些驱动器都是由像这样的主要 OEM 公司发货的。

关于此驱动器的好消息:无需内核模块或修改即可支持它。它在内核看来就像一个 IDE 硬盘驱动器。它在内核 2.0.31 和 2.0.32 下无需任何努力即可为我工作。

关于此驱动器的坏消息:因为它不使用 ATAPI,所以您不能使用 SCSI 到 ATAPI 的转换,这意味着您不能使用 mtools 来写保护磁盘(或者弹出它们)。

4.7 USB 版本

该驱动器的描述位于 http://www.iomega.com/product/zip/imac.html

这些驱动器看起来非常酷,USB 接口看起来也不错。唯一的问题是 Linux 的 USB 接口此时仍在开发中。因此,目前,此驱动器在 Linux 下不可用。查看此地址以获取更新。

http://peloncho.fis.ucm.es/~inaky/USB/news.html

4.8 ZIP250 版本

该驱动器的描述位于 http://www.iomega.com/product/zip/zip250.html

此驱动器是 1999 年 1 月的新产品。我刚刚购买了一个,它在 Linux 中工作得非常好。只需使用来自 http://www.torque.net/~campbell/imm.tar.gz 的 IMM 驱动程序。以与 zip plus 相同的方式设置驱动程序。主要是下载驱动程序,解压它,然后运行 make。然后将 imm.o 可执行文件复制到模块目录。例如 /lib/modules/2.0.35/scsi(2.0.35 是您的内核版本)。如果您不确定版本,请执行 uname -r。


下一页 上一页 目录