Estou executando um programa (especificamente oscam ) que faz interface com um leitor serial em uma porta USB. No entanto, o arquivo de dispositivo tty ao qual o dispositivo USB é atribuído difere e, em particular, muda quando o sistema é ativado a partir da suspensão.
Eu criei uma regra do udev para atribuir um link simbólico de dispositivo tty consistente ao leitor serial. Isso funcionou bem e agora posso acessá-lo sempre com o mesmo nome. Isso permitiu que eu incluísse o nome com link simbólico em vez do nome real do dispositivo no arquivo de configuração, para que eu não precisasse alterá-lo a cada outra reinicialização.
No entanto, o programa parece resolver isso para ligar simbolicamente o dispositivo real ao carregar suas configurações. Isso significa que, enquanto o programa estiver em execução, ele não resolverá novamente o alias ao tentar acessar o dispositivo.
Agora aqui está o meu problema; quando eu acordo meu computador de suspensão, o programa ainda está rodando e assim não resolve o link simbólico agora alterado . Funciona bem quando mato o programa e inicio o backup.
Uma solução possível seria, claro, incluir essa matança e reinicialização do programa em /etc/pm/sleep.d/
, mas isso parece hacky, e eu gostaria de compartilhar minha correção de volta no upstream.
Minha pergunta é assim; Existe algum tipo de sinal que é acionado quando o meu sistema desperta da suspensão , e eu posso pegar esse sinal? Eu então pegaria o programa para resolver novamente o link especificado no arquivo de configuração.