我想在 initram 期间使用蓝牙键盘

我想在 initram 期间使用蓝牙键盘

我用加密在我的硬盘上。要启动我需要输入一个密码在 initram 期间解密根分区。我在平板电脑上运行 Archlinux没有物理键盘(仅限蓝牙)。现在我需要随身携带 USB 键盘,以防需要重新启动。

请注意,我并不总是在启动时连接(因此早期的 ssh 或 mandos 不是可行的解决方案)。

有谁知道如何在开机时使用蓝牙?有人尝试过吗?

尽管我喜欢 Arch 的方式,但 Debian 及其派生解决方案也很受欢迎。

PS:我认为这似乎不合逻辑,会削弱我的设备的安全性(请参阅评论),但我是可移动目标和我哈尔迪必须输入此密码。此外,如果我如此关心安全问题,我根本不会画我的蓝牙键盘, 我只是不想要一旦电脑宕机,驱动器就可以读取。

答案1

我可以在这里给你一个如何做到这一点的概述,但不是具体的步骤,至少我正在尝试。

  • 您应该更改该/etc/mkinitcpio.d/linux.preset文件以包含蓝牙键盘工作所需的正确模块和文件。 (您可能编辑了此文件以包含 HD 的加密)
  • 之后,您应该创建新的 initramfs 文件mkinitcpio -p linux(您可能想要更改当前的文件/boot/initramfs-linux.img(您可以通过浏览文件查看它是哪一个/boot/grub/menu.lst),为/boot/initramfs-linux.img.bck.

看到这个关联来自 Arch wiki 关于如何创建此文件的信息。

答案2

/home让根文件系统不加密并延迟安装加密的文件系统直到操作系统启动后会更简单。

如果您只加密/home而不加密系统的其余部分,一些潜在的敏感文件将被暴露: 中的临时文件/tmp(可以通过使用 tmpfs for 来缓解/tmp) 和/var/tmp、 中的日志文件/var/log、 中的电子邮件、或/var/mail中的打印文件等(请注意,已删除文件中的机密内容仍可能被恢复。)/var/spool/lp/var/spool/cups

不要忘记加密您的交换。除非您想休眠,否则可以使用随机密钥进行交换。

答案3

我遇到了同样的问题,这个 AUR 包解决了它:)

https://github.com/irreleph4nt/mkinitcpio-bluetooth/

您可以使用 AUR 管理器来安装它,例如trizen:

trizen -S mkinitcpio-bluetooth

答案4

我猜这与 USB 蓝牙适配器的问题有关,其中驱动程序和固件在稍后的启动阶段(HAL/UDEV?)中作为内核模块动态加载,因此模块驻留在根文件系统中,在安装之前无法访问,听起来就像鸡生蛋蛋生鸡的循环!将必要的驱动程序编译到内核中应该可以,因为您可以选择将驱动程序/固件编译为模块或静态插入到内核中(增加其大小)。

只需检查您的发行版有关获取和重新编译内核的说明,然后检查您的 USB 蓝牙键盘使用的模块并在内核配置器中选择它。

相关内容