显示的错误信息是:unknown filesystem type 'crypto_LUKS',这符合我们的预期:ramhda中的数据是经过加密的,自然无法被块子系统所识别。如果想读取其中的数据,必须得通过cryptsetup luksOpen来为ramhda重新生成一个中间层,此时需要输入第一步中的口令。
最后,CU上那位网友的需求是,除了对ramdisk中的数据进行加密外,他希望“在ramdisk中创建文件后并写入数据自动形成密文。只有指定用户方能查看该文件的明文,其他用户只能看到密文”,通过上面的分析与推测,结论是:ramdisk中通过dm-crypt创建文件会自动生成密文,这是毫无疑问的,但是对应的明文是不存在的。所以他的需求可以进一步转变成,指定用户通过正确的口令由dm-crypt中间层负责解密,让用户看到明文,其他用户直接去读ramdisk看到的自然是密文(实际的情况极可能是因为没有文件系统的支持,其他用户通过/dev/mapper对ramdisk的访问将被拒绝:No
key available with this passphrase.)。看来他应该考虑的是文件层面的加密方法,也就是只对单个文件内容进行加密,而不是整个磁盘上的数据。