我正在使用 CentOS 7。我/etc/crypttab
用以下行创建
cryptswap /swap /dev/urandom swap,cipher=aes-cbc-essiv:sha256,nofail
并/etc/fstab
用线
/dev/mapper/cryptswap none swap sw,nofail 0 0
使用以下命令创建交换文件后
dd if=/dev/zero of=/swap bs=4M count=200
我收到错误消息
systemd-cryptsetup[512]: Failed to activate with key file '/dev/urandom': Operation not supported
和
systemd[1]: Timed out waiting for device dev-mapper-cryptswap.device.
systemd[1]: Dependency failed for Cryptography Setup for cryptswap.
systemd[1]: Dependency failed for /dev/mapper/cryptswap.
重新启动时。
我做错了什么?
答案1
首先重申/dev/urandom
支持和建议crypttab 文档。
对于交换加密 /dev/urandom 可以用作密码文件;如果系统没有足够的熵来生成真正随机的加密密钥,则使用 /dev/random 可能会阻止启动完成。
您需要创建交换将驻留在其上的设备,/dev/mapper/cryptswap
并将其格式化为交换区域。
# dd if=/dev/zero of=/swap bs=4M count=200
# cryptsetup luksFormat /swap
这里的密码无所谓只要检查通过就可以
# cryptsetup luksOpen /swap cryptswap
这将创建/dev/mapper/cryptswap
您将用于交换分区的分区
# mkswap /dev/mapper/cryptswap
在/etc/fstab
/dev/mapper/cryptswap none swap defaults 0 0
激活
# swapon -a
确认
# cat /proc/swaps
或者
# swapon -s
/dev/mapper/cryptswap
注意:您将在这些命令的输出中看到链接到的设备
# ls -l /dev/mapper/cryptswap