我有一个外置 USB 驱动器,不知什么原因,它有时会不可恢复地掉线。可能是因为电缆故障或其他原因。在这个驱动器上,我有一个 LUKS 分区。
dmesg
报告
Buffer I/O error on dev dm-0, logical block 0, lost sync page write
lsusb
完全正常工作状态和丢失状态之间没有区别。
我想监控这个分区,因为我也希望它可用。它是否可用并不重要,否则我会在这里选择不同的技术。此外,磁盘在不使用时应该停止旋转。
监视可用空间没有帮助,因为操作系统显然会缓存该信息并报告最后已知状态。尝试访问文件系统进行监控也不起作用,因为我不想让磁盘定期旋转。
这可能是一个微不足道的问题,但我找不到答案。澄清一下:我只问如何找出设备掉线,LUKS 分区不可用。而不是如何通知任何人。
答案1
经过一些调查和反复试验,我们找到了一个相当简单的解决方案。
cryptsetup status <label>
制作(其中包括)以下产品线
device: /dev/sda1
当一切正常时
device: (null)
当设备消失时。
答案2
您可以使用它lsusb
来监控外部 USB 设备的状态/存在。但是,dm-crypt
在不可靠的设备上使用某些东西是灾难的根源,我强烈建议您避免这种情况。