强制磁盘到 /dev/sdX

强制磁盘到 /dev/sdX

我正在尝试对驱动器进行ddrescue(通过rescueCD),该驱动器一直在旋转。例如

ddrescue -N -n -A -M -f /dev/sdk /dev/sdd mapfile

无需重新启动,我就可以在短时间内获得驱动器

echo "- - - " > /sys/class/scsi_host/host11/scan

我希望“观看”该命令循环运行(坏主意?);但它有时会将驱动器放到新的 /dev/sdX 上。例如从 sdf 到 sdg

有什么方法可以强制它保持相同的 /dev/sdX 吗?与通过 UUID 挂载分区的方式类似,但针对的是驱动器。注意这不是永久的解决方案,只是为了救援。

或者,是否有更好的方法来引用不会改变的驱动器? Fdisk 给出的标识符上次似乎没有改变,这是磁盘的 UUID 吗?

Disk identifier: A9F95F28-4E6C-4ADB-B618-E9C68D96BFEC

ddrescue UUID=A9F95F28-4E6C-4ADB-B618-E9C68D96BFEC /mnt/rescue/testdd.image mapfile 

ddrescue: Both input and output files must be specified.
Try 'ddrescue --help' for more information.
zsh: no such file or directory: /mnt/rescue/testdd.image

似乎表明它无法识别 UUID,但也可能是其他原因。

非常欢迎其他建议!提前致谢。

非常超出我的深度(linux新手)并且我进一步谷歌搜索(udev,wwns)但是淹没了,严重。

答案1

/dev/disk/by-id正如评论中已经指出的,您可以在(基于设备的制造商和序列号)或/dev/disk/by-path(基于设备插入的端口)中找到可重现的路径。

虽然您可以使用这些创建 udev 规则强制使用特定的驱动器号,对于像您这样的临时设置来说不值得。

请注意,在软件中重新启动可能效果不太好。当磁盘快要死时,通常可以将其拔掉,让它休息几分钟然后ddrescue再次运行。

相关内容