![Linux 机器找不到其磁带驱动器](https://linux22.com/image/484733/Linux%20%E6%9C%BA%E5%99%A8%E6%89%BE%E4%B8%8D%E5%88%B0%E5%85%B6%E7%A3%81%E5%B8%A6%E9%A9%B1%E5%8A%A8%E5%99%A8.png)
我有一台较旧的 HP NetServer LPr,上面似乎有 Symbios SCSI 卡,连接到基于 DLT 的 Quantum SuperLoader 3。有时,我们似乎会失去与自动加载器的连接。这通常是由于电源不稳定,但并不完全确定原因;有时发生这种情况时,自动加载器的 LED 会变成橙色,需要关闭电源。目前烦人的解决方法是重新启动机器。由于它是我们的生产 VPN 和 DNS 服务器,也是我们的备份服务器,因此这不是最佳选择。
在 Debian(Sarge)中,是否没有可以输入的命令来让卡注意到它已再次连接自动加载器?
dcr1:/proc# grep -i symbios /proc/pci
SCSI storage controller: LSI Logic / Symbios Logic 53c895 (rev 1).
dcr1:/proc# uname -a
Linux dcr1 2.4.27-3-686 #1 Tue Dec 5 21:03:54 UTC 2006 i686 GNU/Linux
dcr1:/proc# mt status
mt: /dev/tape: No such device
dcr1:/proc# ls -l /dev/tape
lrwxrwxrwx 1 root root 8 2007-02-07 16:01 /dev/tape -> /dev/st0
dcr1:/proc#
当一切正常时,mt status 命令将显示实际的 st0 状态。“无此设备”消息通常是我们需要重新启动的第二个线索 - 第一个线索通常是备份未运行。
答案1
在 Linux 2.4 上,您可以通过向 /proc 条目之一发送“echo 1”来强制重新扫描 scsi 总线。我总是在 SCSI_HOWTO 文档中查找它。如果需要,我可以查找它。
听起来驱动器正在离线。您是否尝试过 scsitur(测试单元就绪)或 scsinq 命令?
答案2
您是否尝试过移除并重新添加“st”(scsi 磁带)模块?至少可以避免重启的需要……
lsmod | grep st sudo rmmod st sudo modprobe st
答案3
也许您需要删除 scsi 设备,然后强制重新扫描。 这篇 IBM 文章有一些方法可以做到这一点。
答案4
当您的驱动器被正确检测到后,运行以下命令:
# cat /proc/scsi/scsi
并记录结果。
它看起来应该是这样的:
Host: scsi9 Channel: 00 Id: 01 Lun: 00
Vendor: IBM Model: ULT3580-TD4 Rev: 5500
Type: Sequential-Access ANSI SCSI revision: 05
在2.4内核上:
# echo "scsi add-single-device H C I L" > /proc/scsi/scsi
HCIL 是正确检测到驱动器时的 SCSI 地址
在2.6内核上:
# echo “- - -” > /sys/class/scsi_host/hostH/scan
其中 H 是 SCSI 控制器的编号。