每天早上 9 点,我们将外部 HD 插入我们的办公室服务器(始终连接到同一个 USB 端口)。
HD 每天都是新的,但都是由同一家制造商 (Freecom) 制造的。
每天凌晨 12 点,脚本运行将所有内容备份到 HD。
第一步是以这种方式安装 HD:
mount /dev/sdc1 /mnt/backup
Run Code Online (Sandbox Code Playgroud)
问题有时是设备文件不是 /dev/sdc1 而是其他内容(即 /dev/sdd1)。我仍然不知道为什么,因为我们没有插入任何其他东西,而且我们总是使用相同的端口。
所以我的问题是如何以非常安全的方式以编程方式检测正确的设备文件。到目前为止,我唯一的想法是 grep /dev/disk/by-id 目录的内容以从这一行中查找和提取 /dev/xxx :
lrwxrwxrwx 1 root root 10 Sep 24 11:03 usb-Freecom_ToughDrive_1A90102657FF-part1 -> ../../sdc1
Run Code Online (Sandbox Code Playgroud)
有什么更好的建议吗?对我的方式有任何顾虑吗?
我很惊讶 lsusb 怎么帮不了我那么多。
该by-id
条目是一个链接,在大多数情况下,您可以简单地使用它来代替/dev/sdc1
。如果没有,您可以取消引用它readlink
readlink -f /dev/disk/by-id/usb-Freecom_ToughDrive_1A90102657FF-part1
/dev/sdc1
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1940 次 |
最近记录: |