Debian挂载加密分区的秘诀
小樊
33
2025-12-14 05:14:13
Debian 挂载加密分区的实用秘诀
一、快速上手流程
- 安装工具:sudo apt update && sudo apt install cryptsetup
- 打开加密分区:sudo cryptsetup luksOpen /dev/sdX1 my_crypt(映射为 /dev/mapper/my_crypt)
- 格式化(首次使用):sudo mkfs.ext4 /dev/mapper/my_crypt
- 创建挂载点并挂载:sudo mkdir -p /mnt/encrypted && sudo mount /dev/mapper/my_crypt /mnt/encrypted
- 卸载与关闭:sudo umount /mnt/encrypted && sudo cryptsetup luksClose my_crypt
- 提示:将 /dev/sdX1 替换为你的实际加密分区(如 /dev/sdb1)。
二、开机自动解锁与挂载
- 配置解密映射:编辑 /etc/crypttab,添加一行
- 交互输入密码:my_crypt /dev/sdX1 none luks
- 使用密钥文件:my_crypt /dev/sdX1 /path/to/keyfile luks
- 配置挂载:编辑 /etc/fstab,添加一行
- /dev/mapper/my_crypt /mnt/encrypted ext4 defaults 0 2
- 测试(不重启):sudo systemctl daemon-reload && sudo systemctl restart systemd-cryptsetup@my_crypt.service
- 重要:使用密钥文件时,确保 root 可读且权限为 600,并妥善备份密钥。
三、进阶场景与要点
- LUKS on LVM:适合动态卷管理
- 准备卷组:sudo pvcreate /dev/sdX1 && sudo vgcreate vg_crypt /dev/sdX1
- 创建逻辑卷:sudo lvcreate -l 100%FREE -n lv_data vg_crypt
- 加密并打开:sudo cryptsetup luksFormat /dev/vg_crypt/lv_data && sudo cryptsetup luksOpen /dev/vg_crypt/lv_data my_lv
- 格式化与挂载:sudo mkfs.ext4 /dev/mapper/my_lv && sudo mount /dev/mapper/my_lv /mnt/data
- 自动挂载:/etc/crypttab 写入 my_lv /dev/vg_crypt/lv_data none luks;/etc/fstab 写入 /dev/mapper/my_lv /mnt/data ext4 defaults 0 2
- 性能与安全:优先使用 aes-xts-plain64 配合 512-bit 密钥(如:cryptsetup luksFormat --cipher aes-xts-plain64 --key-size 512 /dev/sdX1),并确保已安装 util-linux 等基础工具。
四、常见问题与排查
- 设备名变动:用 lsblk -f 或 blkid 确认加密分区与文件系统类型,避免写错 /dev/sdX1。
- 已映射无法卸载:检查是否仍有进程占用挂载点(如 lsof | grep /mnt/encrypted),必要时 fuser -km 后再 umount。
- 开机卡在解密:确认 /etc/crypttab 中设备路径正确、密钥文件权限为 600,并使用 systemctl restart systemd-cryptsetup@.service 逐项验证。
- 忘记密码/丢失密钥:LUKS 无后门,无法恢复,请妥善备份密钥与恢复信息。
- 数据安全:加密/解密存在数据丢失风险,操作前务必做好完整备份。