Como configurar um atalho de teclado de desligamento de emergência no Linux?

1

Algumas vezes, quando meu laptop sai do modo de espera ou hibernação, a luz de fundo da tela não liga e mal consigo ver nada em uma sala escura e simplesmente não consigo ver nada quando estou ao ar livre.

A única solução é desligar o computador, remover a bateria, depois recolocá-la e ligá-la novamente. Mesmo apenas desligando e ligando novamente (reinicialização a frio normal, mas sem a necessidade de remoção completa da bateria) não ajudará - a luz de fundo da tela ainda estará desligada e até mesmo a sequência de inicialização do BIOS e o menu GRUB serão exibidos a tela escura. Isso sugere que o problema provavelmente não é um problema de driver.

Por enquanto, eu o desliguei com o botão de energia por 5 segundos, mas, desnecessário dizer, isso não é uma boa coisa para se fazer regularmente.

Eu gostaria de configurar um atalho de teclado que acionaria incondicional, embora suave (com todos os aplicativos notificados e dado tempo para sair normalmente e todos os sistemas de arquivos desmontados corretamente) seqüência de desligamento, não importa o que.

Como isso pode ser feito?

Eu uso o Xubuntu 15.10, mas acredito que isso seja feito em nível agnóstico de distribuição mais baixo, então eu decidi perguntar aqui e não no AskUbuntu.

UPDATE: Eu tenho uma idéia de uma solução - não tão conveniente quanto eu quero, mas ainda uma opção - desative o tempo limite de escolha padrão do GRUB, então quando, quando necessário, pressione Ctrl + Alt + F1 para mudar para o console, pressione Ctrl + Alt + Excluir para reinicializar e, em seguida, desligue o computador após algum tempo para reiniciar o GRUB. Eu só queria que houvesse um atalho como Ctrl + Alt + Excluir que desligaria o computador ao invés de reinicializá-lo.

    
por Ivan 21.07.2016 / 19:21

2 respostas

1

A chave do Magic SysRq destina-se a situações como esta.

[The Magic SysRq key] is a 'magical' key combo you can hit which the kernel will respond to regardless of whatever else it is doing, unless it is completely locked up.

Note que o suporte deve ser compilado no kernel para funcionar. Esta é uma solução um pouco melhor porque funciona mesmo que todos os TTYs estejam suspensos, desde que o kernel ainda seja responsivo.

No meu laptop, você pode ativá-lo digitando Alt Direita + PrtScr + Chave Mágica .

As teclas mágicas que você deseja provavelmente são REISUO, pressionando-as uma após a outra, esperando alguns segundos entre cada impressão.

'r' - Turns off keyboard raw mode and sets it to XLATE.
'e' - Send a SIGTERM to all processes, except for init.
'i' - Send a SIGKILL to all processes, except for init.
's' - Will attempt to sync all mounted filesystems.
'u' - Will attempt to remount all mounted filesystems read-only.
'o' - Will shut your system off (if configured and supported).

Eu pessoalmente sinto que Ctrl + Alt + Del produz um desligamento mais gracioso. Além da sua solução atual, assim que tiver certeza de estar no prompt do GRUB, pressione c e digite halt seguido de Enter para desligar. p>

Como alternativa, adicione uma entrada personalizada ao GRUB que execute halt e, em seguida, apenas amasse a seta para baixo algumas vezes e pressione Enter.

Você mencionou que o seu desligamento foi limpo algumas vezes, você pode querer forçar uma verificação do sistema de arquivos no próxima inicialização .

    
por 23.07.2016 / 03:15
0

O comportamento ao pressionar Ctrl + Alt + Excluir é configurável. Quando você pressiona esta combinação de teclas, o kernel envia um sinal SIGINT para o processo 1 (init), então cabe ao init decidir.

Com o systemd, o SIGINT inicia a unidade ctrl-alt-del.target . Por padrão, /lib/systemd/system/ctrl-alt-del.target é um link simbólico para reboot.target . Crie um link simbólico /etc/systemd/system/ctrl-alt-del.target que vincule a /lib/systemd/system/shutdown.target (não modifique o link em /lib , pois ele seria substituído em uma atualização). Veja link para um procedimento mais detalhado para configurar alvos systemd em Ubuntu.

    
por 23.07.2016 / 02:14