在 Linux 上,设备名称可能会在重新启动后更改。
这篇文章说明了如何为磁带设备配置持久名称绑定。
Linux 上有两种类型的磁带设备,例如:/dev/st* 和 /dev/nst*
/dev/stX 和 /dev/nstX 指向同一个磁带设备,区别在于 /dev/stX 是倒带设备,而 /dev/nstX 是非倒带设备。
当我们执行倒带设备的操作时,/dev/stX 会倒带到磁带的开头,而 /dev/nstX 不会。
更多: zhilu jiaocheng
磁带设备持久命名配置
假设 /dev/nst0 是需要持久命名的设备。
注意:以下过程不需要重新启动。
- 从磁带设备获取 ID_SERIAL:
# udevadm test /class/scsi_tape/nst0 ... udevadm_test: ID_SERIAL=3500104f000c8bfa2 udevadm_test: ID_SERIAL_SHORT=500104f000c8bfa2 udevadm_test: ID_WWN=0x500104f000c8bfa2 udevadm_test: ID_WWN_WITH_EXTENSION=0x500104f000c8bfa2 udevadm_test: ID_SCSI_SERIAL=HU1143K8BF udevadm_test: ID_BUS=scsi udevadm_test: ID_PATH=pci-0000:06:00.0-fc-0x500104f000c8bfa3-lun-0 udevadm_test: run: 'socket:@/org/freedesktop/hal/udev_event'
我们也可以尝试以下命令,它会报告相同的 ID_SERIAL:
# udevadm test /class/scsi_tape/st0
- 创建一个新的 udev 规则文件 /etc/udev/rules.d/70-persistent-tape.rules 。
udev 加载规则按文件名中的数字顺序,这里选择起始序列 ID 70,因为它大于默认存储规则 /lib/udev/rules.d/60-persistent-storage-tape.rules 的 60,因此,此自定义 udev 规则随后运行。
将以下行添加到文件中:
# vi /etc/udev/rules.d/70-persistent-tape.rules KERNEL=="st*", ENV{ID_SERIAL}=="3500104f000c8bfa2",SYMLINK+="st/tape0" KERNEL=="nst*", ENV{ID_SERIAL}=="3500104f000c8bfa2", SYMLINK+="nst/tape0"
其中:
3500104f000c8bfa2 取自步骤 1,即 ID_SERIAL 字段。
- 测试配置。
# udevadm test /class/scsi_tape/nst0
如果一切正常,我们应该能够看到 /dev/tape/tape0 ,并将其用作对磁带设备的引用。
- 执行以下命令并在不重启服务器的情况下应用更改:
# udevadm control -reload-rules # udevadm trigger
日期:2020-09-17 00:13:22 来源:oir作者:oir