从 /dev/mapper/veracrypt1 读取数据时出现 I/O 错误

从 /dev/mapper/veracrypt1 读取数据时出现 I/O 错误

我遇到的问题类似于无法读取 /dev/mapper/veracrypt1 上的超级块除了映射器设备根本无法读取之外。底层物理磁盘可以读取。即Veracrypt 可以解密加密容器,但不能从中返回一个字节。

进一步来说:

  • Ubuntu 服务器 18.04,有四个磁盘,使用 Veracrypt 1.23 完全加密。
  • 断电后,一个磁盘无法安装。
  • 由于无法快速找出故障磁盘的问题所在,我重新创建了 veracrypt 分区并重新复制了其中的数据。
  • 第二次断电后两个磁盘发生故障安装。与之前相同,还有另一个。
  • 两个失败的版本中,第一个有一个加密分区,另一个是完全加密的。(因此它们的设置不同。)
  • 由于无法读取超级块错误,Veracrypt 安装失败。
  • 使用 --filesystem=none选项安装可行并允许访问映射器设备。
  • 由于根本无法读取,因此/dev/mapper/veracrypt1无法使用常规工具进行检查或修复。mke2fs, e2fsck
  • 即使dd/dev/mapper/veracrypt1失败。尝试时,系统日志中会填充FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSESense Key : Medium Error [current]Add. Sense: Unrecovered read error - auto reallocate failed消息。
  • dd来自底层硬盘设备/dev/sde/dev/sdb1毫无问题地工作并允许以加密形式读取整个磁盘。

我怀疑是某种硬件故障,但是:

  • SMART 报告称两个故障磁盘从未出现过任何问题。它们也可以按上述方式读取。
  • 故障磁盘连接到不同的SATA 卡并且两者都是连接到各自卡的唯一磁盘。

我感到很困惑。有什么想法可以解决吗?可以尝试什么?

答案1

事实证明,这只是一个记忆错误的例子。

我注意到系统日志中各种服务随机崩溃,并开始怀疑是内核崩溃导致重启,从而导致了文件系统损坏。

更换内存模块后,你突然可以从加密容器中读取数据,并按照说明修复文件系统无法读取 /dev/mapper/veracrypt1 上的超级块

还启用了apport来捕获将来的核心转储。

相关内容