Inicie o programa GUI Java como Root durante o Startup Linux

0

Eu tenho dois PCs, PC_1 rodando Debian5 , PC_2 rodando Windows , eu preciso ter o PC_1 para iniciar um arquivo Jar automaticamente durante a inicialização.

Quando eu coloco um arquivo de script para executar o arquivo Jar em /etc/init.d, a inicialização fica travada na tela do terminal (antes na tela GUI normal do debian), pois o arquivo Jar está em loop infinito (verificações constantemente em execução) .

Quando coloco o arquivo de script em /etc/rc.local, de alguma forma eu consigo executá-lo após a exibição da tela da GUI, mas ele é executado como processo em segundo plano, que o JFrame do arquivo Jar não exibe.

Posso saber se existe alguma maneira de executar o arquivo Jar como Raiz e em primeiro plano para que a GUI seja exibida?

O motivo do programa requerido para ser executado como root é porque preciso acessar a porta serial. Então ... eu preciso da permissão do Root.

    
por Ghost_000_cs 11.05.2012 / 12:35

2 respostas

1

Por favor, não execute as coisas como root, especialmente programas Java. Se você realmente precisa de recursos-raiz, como ouvir < 1024 porta, em seguida, use um programa separado para isso, como o apache e entregar a comunicação para o seu arquivo java através de sockets ou outra porta.

Você pode colocar coisas em ~ / .xinitrc de um usuário para rodar quando o servidor Xorg (gui screen) for iniciado. Veja também se você tem /etc/X11/Xsession.d/startup-local e coloque o script de execução lá.

    
por 11.05.2012 / 12:39
0

Durante a inicialização, o X11 não está ativo e em execução, portanto, iniciar um JFrame não é possível.

Se um usuário fizer login, ele será o proprietário da área de trabalho e seu Xauthority será necessário para usar o X11. Você tem um login automático? Ou o X11 mostra uma tela de login?

Você pode iniciar um programa na inicialização automática dos usuários e corrigir permissões no arquivo sudoers.

    
por 12.05.2012 / 04:53