Ubuntu 12.04 LUKS/dmcrypt 磁盘到磁盘复制冻结

Ubuntu 12.04 LUKS/dmcrypt 磁盘到磁盘复制冻结

我在 Ubuntu 12.04 中用 LUKS 加密了 2 个外部 USB 硬盘。通常,这两个硬盘使用 LUKS/dmcrypt 时速度都非常慢,例如读写速度均为 7 MB/s,但我可以忍受。

但是,当我尝试将文件从一个加密磁盘复制到另一个加密磁盘时,就变得无法接受。使用 rsync,复制过程每隔几秒就会冻结一次,最长可达 20 秒。冻结时,rsync 进度要么不显示任何内容(仅显示文件名),要么显示类似以下内容:

32768   1%    0.00kB/s    0:00:00

有时速度可能高达 100kB/s,但复制的字节数没有变化。在极少数情况下,进度会冻结,并出现类似

72908800  27%    5.40MB/s    0:00:34

(并且数字几秒钟内都没有变化)。

似乎只有当我从一个 LUKS 驱动器复制到另一个 LUKS 驱动器时才会发生这种情况。例如,当我尝试先将一个大文件从一个加密驱动器复制到我的主目录,然后从那里复制到另一个加密驱动器时,没有出现冻结(但是,复制速度从最初的约 20 MB/s 不断下降到约 7 MB/s)。

欢迎任何建议!

答案1

进程冻结的问题是由于两个磁盘都使用“异步”选项安装。因此,当缓冲区已满时,每次都会冻结进程,等待缓冲区变空。使用“同步”选项重新安装后,进程开始报告实际速度,没有任何冻结(4-5 MB/秒):

sudo mount -o remount,sync /media/my_mountpoint

此步骤仅有助于修复冻结进度。由于写入速度没有改变,只是禁用了缓冲区,因此总文件复制时间保持不变。

相关内容