我尝试安装加密硬盘。在终端中使用以下命令可以正常工作:
sudo cryptsetup luksOpen /dev/sda1 myDisk --key-file /root/keyfile
执行此命令后,硬盘将被解密并挂载。由于我想在启动时自动执行此操作,我尝试将此命令放入 bash 脚本中。仅上述命令,没有其他命令。出于某种原因,如果我通过终端执行脚本:
sudo bash myScript.sh
我收到一条消息:
无法打开密钥文件。
我尝试用密码来代替:
echo "myPassword" -n | sudo cryptsetup luksOpen /dev/sda1 myDisk -d -
在终端中运行良好,但在脚本中却不行。使用 /etc/crypttab 不是一个选择,因为使用了多个扩展硬盘,它们稍后将使用相同的密钥文件,但我现在无法访问硬盘和 UUID。
我很感激任何建议 BR Michael
答案1
我刚刚发现,当我更改命令中参数的顺序时:
sudo cryptsetup luksOpen /dev/sda1 myDisk --key-file /root/keyfile
到:
sudo cryptsetup luksOpen --key-file /root/keyfile /dev/sda1 myDisk
它工作得很好。