当我尝试在 Ubuntu 上运行 cryptsetup luksFormat 命令时遇到错误。有人可以帮我解决这个问题吗
命令: $loop_dev=losetup--find $ 回显是 | cryptsetup -v luksFormat --key-file="/path/to/keyfile" $loop_dev
错误: 请求的偏移量超出了设备 /dev/loop1 的实际大小。 命令失败,代码为 22:请求的偏移量超出了设备 /dev/loop1 的实际大小
/dev/loop0-/dev/loop7 中的所有循环设备都发生这种情况
似乎唯一可能的解决方法是使用脚本
cryptmount-setup
创建加密的环回设备。
问题可能是您的 LUKS 容器太小(< 16 MiB in LUKS2 or < 2 MiB in LUKS1)
对我有用的修复:
cryptsetup luksFormat --type luks1
) 并创建大小 >2 MiB 的 LUKS 容器它们为何有效:
阅读以下帖子。这就是为我解决的问题。
https://superuser.com/questions/1557750/why-does-cryptsetup-fail-with-container-10m-in-size
总结这篇文章,LUKS2 创建了 16 MiB 的默认偏移量,但如果您创建的设备小于默认偏移量,则在您尝试打开设备之前不会给出任何错误。 LUKS1 创建了更小的偏移量 (2 MiB),但同样的问题仍然存在。