+ Responder ao Tópico



  1. #1

    Padrão Shutdown pelo botão POWER do teclado

    Quero configurar linux para executar um "shutdown -h now" quando for pressionado a tecla "power" do teclado. Igual funciona no ruindows...
    fiz uma busca nas documentações relacionadas ao ctrl-alt-del para ver se achava algo similar mas nào achei...
    Pensei em alterar o inittab , mas como eu iria identificar a tecla ? pelo oq olhei no man para identificar estas coisas , estão tudo em libs né...

    Valeus
    César

    ps.: estou trabalhando com ele apenas em modo console... (init 3)

  2. #2
    chvt
    Visitante

    Padrão Shutdown pelo botão POWER do teclado

    ceinma,

    Com o editor de textos de sua preferência, como root edite o /etc/rc.d/rc.modules e descomente a linha que tiver: /sbin/modprobe ACPI mas se não tiver nada relacionado a ACPI no rc.modules você terá que recompilar o kernel, para ativar o suporte a ACPI.



  3. #3

    Padrão Shutdown pelo botão POWER do teclado

    soh num esquece q se vc deixar alguma coisa cair em cima do botao sem querer seu pc desliga...

  4. #4

    Padrão Shutdown pelo botão POWER do teclado

    Bem, depois de tentar seguir a sugestão do chvt (ACPI - sem sucesso) então decidi pesquisar de verdade (já que na 1a vez olhei o man do inittab e não vi que estava na minha cara a resposta) e descobri algumas coisa...

    Seguinte :
    Não tive tempo de estudar muito o loadkeys ainda mas sei que consigo relacionar certa tecla com o "evento" KeyboardSignal atraves do comando
    loadkeys <<!
    keycode ## = KeyboardSignal
    !


    E para fazer realmente desligar o micro eu modifiquei o inittab onde adicionei um tratamento para a ação "kbcontrol" (acho que é isso , não estou no linux agora para conferir, ver man inittab ) onde esta ação é executada quando uma tecla é definida para o KeyboardSignal...
    em resumo consigo fazer o linux desligar quando pressiona Ctrl-Alt-SetaParaCima ... mas não com a tecla Power pq não consigo descobrir o scancode dele... nem pelo showkey

    alguma sugestão??

    Falows
    César



  5. #5
    Kakaroto
    Visitante

    Padrão Shutdown pelo botão POWER do teclado

    e ae kara axo q vc ta quebrando a cabeça a toa, olha vi seu post no underlinux e me interessou tbm ai fui atras de saber como fazer olha só, dei um

    man acpid

    tem la qual arquivo q vc mexe pra fazer isso, no dir /etc/acpi/events, tem o arquivo defaults coloca assim nele

    event=button/power.*
    action=/sbin/shutdown -h now

    pronto não testei aq porq não uso acpi mas testa ai falow, pelo q entendi pela manpage e so colocar as teclas q vc quer ai, no event, e no action oq vc quer q faça ok?, e me fala se funciona porq quero saber tbm

    falow

    Eu sou o superSayajin 1
    O guerreio lendário
    Kakaroto

  6. #6

    Padrão Shutdown pelo botão POWER do teclado

    Eu realmente nao tinha visto esta opcao do acpid vc citou, pois desisti dele logo que descobri que consigo fazer o linux desligar direto pelo kernel, e tb para que carregar mais um deamon no micro se consigo (ou melhor quase) faze-lo sem ele (como disse o proprio kernel ira detectar o comando) .... o que na realidade preciso descobrir agora eh como fazer o linux reconhecer a tecla power.... como pegar o scancode dela... bem pretendo inicialmente trabalhar em cima disto, se descobrir algo posto aqui...

    Falows
    César



  7. #7
    Kakaroto
    Visitante

    Padrão Shutdown pelo botão POWER do teclado

    e ae
    kara depois de dar uma pesquisada axo q consegui fazer oq vc quer, não postei antes e q esta uma correria heheheh bem vamos la vi q o seu problema era de muitas pessoas da uma olhada

    http://www.ussg.iu.edu/hypermail/lin...08.1/0740.html

    e andei pesquisando e lendo alguns how-to e manpages e axei este doc da uma olhada

    http://www.win.tue.nl/~aeb/linux/kbd/scancodes-1.html

    e pelo q vi quem é responsavel por todo reconhecimento das teclas e feito pelo kernel atraves de um mapa de teclado, como vc disse q o showkey não pega o keycode e porq o seu mapa de teclado não esta conf a tecla power assim como aq no meu slack tbm não estava mas usando o showkey juntamente com a opção -s, ele detecta o scancode a tecla power

    usa assim

    ai descobre o scancode em hex

    [[email protected] root]# showkey -s
    kb mode was XLATE

    press any key (program terminates 10s after last keypress)...
    0x9c
    0xe0 0x5e tecla power pressionada
    0xe0 0xde tecla power liberada
    0xe0 0x5e
    0xe0 0xde


    ai seta ela com keycode mas vc tem q escolher um keycode q não estaja sendo usado pelo seu mapa de teclado da um dumpkeys para ver toda o mapa de seu teclado q esta carregado

    [[email protected] root]# dumpkeys


    ai e so setar no braço usando o comando setkeycodes, como vc pegou o scancode pelo showkeys -s agora esta facil, aq no meu slack usei o keycode 127

    setkeycodes e05e 127

    fica assim
    [[email protected] root]# setkeycodes e05e 127

    dai usa o showkey q agora vai reconhecer

    [[email protected] root]# showkey
    kb mode was XLATE

    press any key (program terminates 10s after last keypress)...
    keycode 28 release
    keycode 127 press // tecla power pressionada
    keycode 127 release //tecla power çiberada
    keycode 127 press
    keycode 127 release

    e pronto edita o iniitab, q axo q vc ja vez isso

    kb::kbrequest:/sbin/shutdown -t5 -h now

    depois edita para executar toda vez q ligar a maquina q tbm axo q vc ja fez, mas vou mandar pra galera, edita o /etc/rc.d/rc.local

    echo "keycode <keycode_adotada> = KeyboardSignal" | loadkeys -

    ok espero ter ajudado

    falow
    kakaroto

  8. #8
    Kakaroto
    Visitante

    Padrão Shutdown pelo botão POWER do teclado

    e ae
    so ia esquecendo uma coisa desse jeito sem um modulo q gerencie a energia do micro, ele vai desligando tudo e parar naquela tela

    system halted
    power down

    ai vc vai ter q meter o dedão no power da cpu esse o unico problema, mas ai depende de como quer usar falow

    kakaroto