You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 24.04下主LUKS加密SSD与同密码的LUKS加密HDD实现登录自动挂载的方法(含GUI方案咨询)

Ubuntu 24.04下主LUKS加密SSD与同密码的LUKS加密HDD实现登录自动挂载的方法(含GUI方案咨询)

嘿,别担心,作为经常处理这类加密存储问题的老玩家,我来给你一步步拆解——既然你的SSD和HDD用的是同一个LUKS密码,确实可以不用折腾密钥文件,通过配置crypttab和fstab(或者用GUI工具)实现登录自动挂载,下面分两种方案给你讲:

一、命令行手动配置方案(最可靠,适合想搞懂底层逻辑的新手)

先提醒一下,操作前最好备份一下/etc/crypttab和/etc/fstab这两个核心配置文件,万一配错了还能轻松恢复:

sudo cp /etc/crypttab /etc/crypttab.bak
sudo cp /etc/fstab /etc/fstab.bak

步骤1:找到你的HDD的LUKS设备UUID

首先得精准定位你的加密HDD,打开终端输入:

sudo blkid

在输出里找带TYPE="crypto_LUKS"的行,那就是你的2TB加密HDD分区,记下它的UUID(看起来像1234abcd-1234-1234-1234-1234abcd1234的字符串),我们暂时叫它LUKS_HDD_UUID。

步骤2:配置crypttab实现自动解密

这个文件是系统解密加密设备的核心配置,因为你的HDD和主SSD用同一个密码,系统可以直接复用SSD解密时输入的密码,不用再让你重复输入。
编辑crypttab文件:

sudo nano /etc/crypttab

在文件末尾添加一行(把LUKS_HDD_UUID替换成你刚才记下的真实UUID):

hdd_crypt UUID=LUKS_HDD_UUID none luks,keyscript=/lib/cryptsetup/scripts/passdev

给你拆解一下这行的意思:

  • hdd_crypt:解密后的映射设备名称,你可以随便取,比如叫storage_crypt也行
  • UUID=LUKS_HDD_UUID:指定要解密的HDD加密分区的唯一标识
  • none:因为我们复用主盘的密码,这里填none,系统会自动调用主盘的解密密码
  • luks,keyscript=/lib/cryptsetup/scripts/passdev:这个参数让系统从主盘的解密会话里获取密码,避免二次输入

保存退出nano:按Ctrl+O,回车确认保存,再按Ctrl+X退出编辑器。

步骤3:创建挂载点

给解密后的HDD在系统里找个固定的“入口”,比如我习惯在/mnt目录下建个专属文件夹:

sudo mkdir /mnt/storage_hdd

你也可以自定义路径,比如/media/你的用户名/存储盘,不过/mnt更适合这种长期固定挂载的存储设备。

步骤4:获取解密后HDD的分区UUID

现在先手动解密HDD,获取它解密后的普通分区UUID:

sudo cryptsetup open /dev/disk/by-uuid/LUKS_HDD_UUID hdd_crypt

然后再次输入blkid,找到/dev/mapper/hdd_crypt对应的UUID(注意这个和之前的LUKS UUID不是同一个),我们叫它DECRYPTED_HDD_UUID。

步骤5:配置fstab实现自动挂载

这个文件用来告诉系统解密后把设备挂载到哪里,编辑fstab:

sudo nano /etc/fstab

在文件末尾添加一行(替换成你的DECRYPTED_HDD_UUID和挂载点路径):

UUID=DECRYPTED_HDD_UUID /mnt/storage_hdd ext4 defaults 0 2

解释一下:

  • UUID=DECRYPTED_HDD_UUID:解密后HDD分区的唯一标识
  • /mnt/storage_hdd:你刚才创建的挂载点路径
  • ext4:如果你的HDD解密后是其他文件系统(比如btrfs),就改成对应的类型
  • defaults:默认挂载选项,满足日常使用需求
  • 0 2:第一个0表示不使用dump工具备份,第二个2表示开机时检查文件系统(主盘用1,其他盘用2即可)

保存退出后,测试一下配置是否正确:

sudo mount -a

如果没有报错,说明配置没问题。现在重启系统,就能看到HDD自动挂载好了。

二、GUI工具方案(更直观,适合不想敲命令的新手)

你在Reddit看到的GUI方案是可行的,Ubuntu 24.04自带的Disks(磁盘)工具就能完成大部分操作,不过得注意关键细节:

步骤1:打开Disks工具

点击左下角的“显示应用程序”,搜索“Disks”(中文叫“磁盘”),打开这个工具。

步骤2:解锁加密HDD

在左侧列表里找到你的2TB HDD,点击它,然后点击右上角的齿轮图标,选择“解锁分区”,输入你的密码(和主盘一样的那个),解锁这个分区。

步骤3:配置自动挂载

解锁后,再次点击齿轮图标,选择“编辑挂载选项”:

  • 打开“开机时挂载”(Mount at system startup)的开关
  • 关掉“需要用户会话才能挂载”(Require user session to mount)的开关——这一步很重要,否则系统只会在你打开用户会话后才挂载,不是真正的开机自动挂载
  • 挂载点(Mount point):可以用默认路径,也可以自定义成你想要的,比如/mnt/storage_hdd
  • 标识(Identify as):选择UUID(推荐,因为设备路径可能变化,但UUID不会)
  • 挂载选项(Mount options):留空或者填defaults就行
  • 文件系统类型(Filesystem type):选择你HDD解密后的文件系统(比如ext4)
  • 点击“确定”,输入管理员密码确认修改。

步骤4:配置自动解密(关键!)

刚才的操作只配置了解密后的自动挂载,但还没让系统自动解密HDD。这时候有两个选择:

  • 方案A:手动补全crypttab配置,就是上面命令行方案里的步骤2,直接添加那行配置就行,这个最可靠
  • 方案B:安装专门的GUI加密工具cryptsetup-gui,输入命令安装:
sudo apt install cryptsetup-gui

打开工具后,找到你的HDD加密分区,点击“设置自动解锁”,选择“使用系统主密码”,保存配置即可。不过这个工具在Ubuntu 24.04可能存在一些小bug,如果不好用,还是推荐用方案A。

关于你在Reddit看到的说法的补充验证

你在Reddit看到的“不用密钥文件,只需配置crypttab和fstab,用GUI就能搞定”是完全正确的,但要注意两个关键点:

  • 不是所有GUI工具都能自动处理同密码LUKS设备的自动解密,比如默认的Disks工具只能配置挂载,没法直接搞定自动解密
  • 必须确保crypttab的配置让系统复用主盘的解密密码,否则还是会弹出让你第二次输入密码的窗口
  • 所以GUI方案要么用cryptsetup-gui,要么用Disks配置挂载后手动补crypttab,两种方式都能实现需求。

备注:内容来源于stack exchange,提问作者SpaceX

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 12:30:31