Answers
Got a burning question about open source or the kernel? Whatever your level, email it to answers@linuxformat.com
Neil Bothwick eats Linux desktop problems for breakfast
Q Chi cken and eggcryption
I have Pop_OS installed on my Surface Pro 3. During installation, I neglected to uncheck the option to encrypt the disk. Now when I turn on the tablet, I must have a keyboard attached in order to get past the first login screen as no virtual keyboard is made available. The second login screen does make the virtual keyboard available.
Is there a way to disable the disk encryption? Or, is there a way to activate a virtual keyboard on this first login screen? My whole purpose in installing Pop on the Surface Pro was to take advantage of the portability of the tablet without a keyboard. The OS runs blazing fast on this old tablet computer.
Hank Collins
A This occurs because unlocking your encrypted disk has to happen early in the boot process, before the keyboard modules have had a chance to load – because the modules are on your encrypted disk. So, to enter your encryption key, you need to load the modules, but to load the modules, you need to enter your encryption key. The solution is to include the keyboard modules in the initramfs. This is a minimal filesystem in a file that is loaded by the kernel when booting and includes just what is necessary to start booting the main system from your disk, but not here.
After booting via an external keyboard, you can set up the initramfs to enable your keyboard. Open a terminal and run $ sudo nano /etc/initramfs-tools/modules
This file contains a list of modules to add to the initramfs. Add this list of modules, one per line, and press Ctrl+O then Ctrl+X to save and exit the editor. surface_aggregator surface_aggregator_registry surface_hid_core surface_hid intel_lpss intel_lpss_pci 8250_dw
Now update the initramfs with your new modules by running: $ sudo update-initramfs -u Now your initramfs should contain the modules you need and give you access to the virtual keyboard early on when you reboot. You can check the contents of the initramfs by running: $ lsinitramfs /boot/initrd.img /boot/initrd.img is usually a symlink to the latest files, but you can list any initramfs file with this command. The output is long, so either pipe it through a pager, such as less , or pipe it through grep to look for a particular module or set of modules $ lsinitramfs /boot/initrd.img | grep surface