Honestamente, os serviços do systemd não devem executar eventos interativos. No entanto, você deve investigar o initial-setup-text.service , que faz algo parecido com o que você está pedindo.
Eu tenho um script bash usando o diálogo que basicamente apenas verifica o status de determinados serviços e exibe-o como para cima ou para baixo. Ele funciona bem quando eu o executo enquanto estou logado. Não consigo descobrir como configurar o CentOS 7 para executar este script e diálogo quando o sistema é inicializado. Idealmente, uma vez que o CentOS conclua o carregamento de todos os serviços, em vez de exibir o prompt de login, ele apenas apresentará essa caixa de diálogo ao usuário. Minha pesquisa parece continuar apontando para a criação de um serviço usando o systemd, mas não consigo encontrar um exemplo para atender às minhas necessidades. Agradecemos antecipadamente.
Honestamente, os serviços do systemd não devem executar eventos interativos. No entanto, você deve investigar o initial-setup-text.service , que faz algo parecido com o que você está pedindo.
Eu suponho que você não esteja usando uma GUI? E você deseja exibir esses resultados onde o banner de login do sistema normalmente iria, logo antes do prompt de login?
Meu primeiro pensamento seria adicionar um serviço que depende de todos os outros serviços, e que escreve para / etc / issue.
Mas se você quiser fazer isso "em vez de" o prompt de login, como você fará o login?
Não será tão bonito quanto dialog
, mas você pode escrever seu script para adicionar seus resultados a /etc/issue
, para que ele seja exibido imediatamente antes do prompt login:
.
As informações rapidamente se tornarão obsoletas, portanto, provavelmente você também deve executar o script no cron.
Eu sugeriria ter alguns marcadores exclusivos (antes e depois) da sua mensagem de resultados para que o cron job possa procurar e excluir a mensagem antiga antes de inserir a nova.
Como alternativa, tenha um arquivo /etc/issue.head
e / ou /etc/issue.tail
para ser enviado junto com sua mensagem de resultados.
Por exemplo:
myprog > /etc/issue.results
cat /etc/issue.head /etc/issue.results /etc/issue.tail > /etc/issue