Habilite o teclado Bluetooth antes da descriptografia LUKS - Ubuntu 20.04

Habilite o teclado Bluetooth antes da descriptografia LUKS - Ubuntu 20.04

Preciso que meu teclado Bluetooth Keychron K8 funcione para gravar minha senha de descriptografia de disco LUKS no momento da inicialização.

No momento, só posso usar o teclado do laptop porque a pilha Bluetooth ainda não está habilitada.

Encontrei (mas ainda não tentei) a maneira de habilitar o módulo eminitramfstempo, mas não tenho certeza de como isso está relacionado ao serviço Systemd Bluetooth.

Alguém com o mesmo problema conseguiu uma solução?

Obrigado,
Igor

Responder1

Experimente com:

  1. Atualizar initramfs: atualize sua imagem initramfs para incluir os componentes Bluetooth necessários. Você pode fazer isso com o seguinte comando:

    sudo update-initramfs -u

  2. Edite a linha de comando do kernel: Edite a linha de comando do kernel para incluir as seguintes opções:

    rd.luks.options=luks,keyscript=/usr/share/initramfs-tools/scripts/local-top/btdecryption

  3. Crie o script btdecryption: Crie um novo arquivo chamado "btdecryption" no diretório "/usr/share/initramfs-tools/scripts/local-top" e adicione o seguinte conteúdo:

# Wait for Bluetooth keyboard to connect
echo "Waiting for keyboard to connect..."
until hcitool con | grep -q "Keyboard Address"; do
    sleep 1
done
echo "Keyboard connected."

# Get password from keyboard
echo "Enter password:"
password=""
while [ ${#password} -lt 1 ]; do
    read -s -n 1 char
    if [ "$char" == "" ]; then
        echo ""
        break
    fi
    password="$password$char"
    echo -n "*"
done

# Pass password to LUKS
echo $password
  1. Torne o script executável: Torne o script "btdecryption" executável com o seguinte comando:

    sudo chmod +x /usr/share/initramfs-tools/scripts/local-top/btdecryption

  2. Atualize o initramfs novamente: atualize sua imagem initramfs novamente para incluir o novo script:

    sudo update-initramfs -u

informação relacionada