温馨提示×

Ubuntu挂载加密磁盘的方法

小樊
42
2026-01-09 17:42:36
栏目: 网络安全

Ubuntu 挂载加密磁盘的标准流程

一、准备与识别磁盘

  • 安装工具:需要 cryptsetup 来管理 LUKS 加密卷。
    • 命令:sudo apt-get update && sudo apt-get install cryptsetup
  • 确认设备名:使用 lsblksudo fdisk -l 查看磁盘与分区,例如 /dev/sdb1
  • 注意:以下操作会写入分区表或格式化文件系统,务必确认设备名并先做好数据备份

二、一次性手动挂载步骤

  • 打开加密卷(解密):sudo cryptsetup luksOpen /dev/sdX encrypted_partition
    • 提示输入 LUKS 密码,成功后会在 /dev/mapper/encrypted_partition 生成映射设备。
  • 创建挂载点:sudo mkdir -p /mnt/encrypted_partition
  • 格式化(首次使用需要;已有文件系统请跳过):sudo mkfs.ext4 /dev/mapper/encrypted_partition
  • 挂载:sudo mount /dev/mapper/encrypted_partition /mnt/encrypted_partition
  • 验证:lsblkdf -h 查看是否挂载成功。

三、卸载与安全关闭

  • 卸载文件系统:sudo umount /mnt/encrypted_partition
  • 关闭加密映射:sudo cryptsetup luksClose encrypted_partition
  • 再次确认:/dev/mapper/encrypted_partition 应已消失。

四、开机自动挂载方案

  • 方案A(交互口令,适合个人电脑)
    • 编辑 /etc/crypttabsudo nano /etc/crypttab
      • 添加:encrypted_partition /dev/disk/by-uuid/<UUID> none luks
      • 获取 UUID:sudo blkid /dev/sdX
    • 编辑 /etc/fstabsudo nano /etc/fstab
      • 添加:/dev/mapper/encrypted_partition /mnt/encrypted_partition ext4 defaults 0 2
    • 说明:使用 /dev/disk/by-uuid 更稳定,避免设备名变化导致失败。
  • 方案B(密钥文件,适合服务器或无交互场景)
    • 生成密钥文件并设置权限:
      • sudo mkdir -p /root/.keyfiles
      • sudo dd if=/dev/urandom of=/root/.keyfiles/hdd-1.key bs=1024 count=4
      • sudo chmod 0400 /root/.keyfiles/hdd-1.key
    • 添加密钥到 LUKS:sudo cryptsetup luksAddKey /dev/sdX /root/.keyfiles/hdd-1.key
    • 配置自动解锁(/etc/crypttab):
      • backupSSD UUID=<UUID> /root/.keyfiles/hdd-1.key luks,discard
    • 配置自动挂载(/etc/fstab):
      • /dev/mapper/backupSSD /mnt/secure-ssd ext4 defaults 0 2
    • 提示:如需网络密钥(TPM/网络解锁),需额外配置 initramfs 与相应服务,超出本文范围。

五、常见问题与排查

  • 设备名变化导致无法解锁:优先使用 UUID(/dev/disk/by-uuid/…),并在 /etc/crypttab/etc/fstab 中保持一致。
  • 忘记密码或丢失密钥:无法找回,只能擦除并重新加密;请妥善备份密钥与恢复信息。
  • 文件系统损坏:先确保未挂载,使用 fsck 检查修复后再挂载。
  • 权限问题:若需普通用户读写,挂载后可 sudo chown $USER:$USER /mnt/encrypted_partition

0