Udev

強制磁碟到 /dev/sdX

  • April 26, 2017

我正在嘗試 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),但溺水非常嚴重。

正如評論中已經指出的那樣,您可以在/dev/disk/by-id(基於設備的製造商和序列號)或/dev/disk/by-path(基於設備插入的埠)中找到可重現的路徑。

儘管您可以使用這些來創建 udev 規則來強制使用特定的驅動器號,但對於像您這樣的臨時設置而言,不值得麻煩。

請注意,在軟體中重新啟動可能效果不佳。當磁碟快要死時,拔掉它通常會有所幫助,讓它休息幾分鐘,然後ddrescue再次執行。

引用自:https://unix.stackexchange.com/questions/360868