cryptsetup 分区在启动时未检测到

cryptsetup 分区在启动时未检测到

我安装了全新的 12.04 并尝试模仿 10.04 的功能。 swap应该用urandom密钥加密,并且还有另一个分区将包含主目录和其他目录。

# cat /etc/crypttab | grep -v '^#' | grep -v '^$'
cryptswap /dev/sda5 /dev/urandom swap
encriptado /dev/sda6

# grep -e 'cryptswap' -e 'encriptado' /etc/fstab
/dev/mapper/cryptswap swap swap defaults 0 0
/dev/mapper/encriptado /encriptado ext4 defaults 0 0

我也apt-get install cryptsetup

当我启动时,系统提示(尝试翻译)分区未找到或尚未准备好。我应该等待,按 M 键手动操作或按 S 键跳过。

我在这里遗漏了什么?

答案1

我为解决这个问题所采取的方法如下。

删除了所有用 设置的分区cryptsetup。然后,cryptsetup通过进行安装apt-get install。这肯定是 的另一个版本cryptsetup。使用 重新创建分区并按cryptsetup luksFormat正常程序操作。启动过程成功检测并打开了加密分区!

我的结论是cryptsetup默认安装的版本不能正常工作。

希望这可以帮助。

答案2

实际上,我认为您的问题是 中的输入不完整/etc/crypttab。此行:

encriptado /dev/sda6

应该看起来像这样:

encriptado /dev/sda6 none luks

crypttab(5) 手册页指出:

请注意,所有四个字段都是必填的,缺少一个字段将导致未指定的行为。

答案3

11.10 有完全相同的问题。您的设置没有任何问题,事实上系统应该继续启动,然后您可以检查并查看交换分区是否已正确激活。尽管它可能非常烦人,但我还是忍受了它。我猜我们需要提交有关它的错误。

答案4

我偶然在两台不同的电脑上发现了 3 个不同版本的 Ubuntu 存在这个问题。尽管大多数情况下会挂载交换分区,尽管出现了警告消息,但有时 GUI 会因此在启动完成后拒绝启动。

以下是我采取的解决方法:

Ctrl按+ Alt+打开终端T

输入gksudo gedit /etc/fstab并按下Enter

搜索类似如下的行:

/dev/mapper/cryptswap swap swap defaults 0 0

noauto现在输入紧接着的值defaults(用逗号分隔),因此它看起来像这样:

/dev/mapper/cryptswap swap swap defaults,noauto 0 0

保存并退出。这样,你的交换分区就不会被挂载在启动时,这样警告信息就不会出现,甚至会阻碍登录屏幕的出现。

现在在终端中输入

gksudo gedit /etc/rc.local

并输入以下几行进入前 exit 0

sleep 10

swapon /dev/mapper/cryptswap

如果没有条目exit 0,则必须在这两行下方输入。保存并再次退出。这将告诉您的系统在登录后等待 10 秒钟以挂载您的加密交换分区。

重启系统。你应该不会再收到警告信息了。登录后,等待一段时间,然后再次打开终端并输入

free -m

你的输出看起来应该像这样:

fuzzyq@Samsung-R710:~$ 免费 -m

              total       used       free     shared    buffers     cached

 Mem:          3949       3806        143          0         86       1783

 -/+ buffers/cache:       1936       2013

 Swap:         4095          0       4095

最后一行很重要。如果总交换空间显示正值,则表示交换分区已成功挂载。

请注意:在您的特殊情况下,您必须对/dev/mapper/encriptado /encriptado ext4 defaults 0 0分区重复这些步骤才能使此解决方法发挥其魔力。

相关内容