Desbloqueando o banco de dados keepassxc no login...tão perto, mas como remover o problema restante?

Desbloqueando o banco de dados keepassxc no login...tão perto, mas como remover o problema restante?

Com base nesta resposta extremamente útilInicie o KeePassXC na inicialização Quase consegui o resultado desejado de desbloquear keepassxcno login para funcionar.

No entanto, eu (e outro usuário que respondeu e comentou sobre o mesmo problema) ainda temos um problema que o impede de ser útil. Ou seja, de acordo com a resposta vinculada, dou o comando...

secret-tool lookup keepass <database_name> | keepassxc --pw-stdin <path-to-your-database>.kbdx

... e isso funciona quando keepassxcé iniciado ... mas recebo esse prompt na próxima linha após o comando

Database password:

e o script trava aguardando entrada.

As partes do roteiro funcionam... posso emitir

secret-tool lookup keepass <database_name>

e eu digito a senha correta.

posso emitir

echo <password> | keepassxc --pw-stdin <path-to-your-database>.kbdx

e ele inicia keepassxce faz login... mas ainda recebo o prompt e o script travando.

Se eu fizer

echo <password> | keepassxc --pw-stdin <path-to-your-database>.kbdx &

Ainda recebo o prompt e travo, mas posso acertar entere funciona.

Então parece que preciso fornecer de enteralguma forma?

  • Versão Ubuntu: 18.04
  • versão keepassxc: 2.6.4

Responder1

Resposta curta

O que você vê é um comportamento normal. O terminal será liberado apenas quando o KeePassXC terminar.

Resposta longa

O Database password:prompt que você vê no terminal é resultado da --pw-stdinopção que você forneceu à keepassxcopção. Como existe um pipe, a entrada padrão não é o seu teclado, mas a saída do echocomando anterior.

Enquanto o KeepassXC estiver em execução, seu prompt estará bloqueado. Isso é normal e acontece com qualquer outro programa. Por exemplo, tente iniciar nautilusno terminal.

Você pode liberar o prompt movendo esse processo para segundo plano: pressione Ctrl+ Ze digite bgpara continuar executando o processo em segundo plano. fgirá trazê-lo para o primeiro plano novamente. Essa é uma prática terminal “tradicional”.

Com o processo em primeiro plano, o terminal será liberado quando você sair do KeePassXC, seja saindo dele na interface gráfica do usuário ou pressionando Ctrl+ Cno terminal.

Este comportamento passa despercebido quando você não executa o comando a partir de um emulador de terminal, por exemplo, a partir de um inicializador de desktop ou de uma tecla de atalho, ou mesmo usando a caixa de diálogo Alt+ F2executar.

informação relacionada