Inicializar linux com um aplicativo java

Ola pessoal
Há quase 1 ano atrás postei aqui uma dúvida sobre o que fazer para que, ao ligar a máquina, o camarada não tivesse acesso nenhum ao SO. Na época, tinha que fazer isso no Win98. Na época tbm me falaram que seria melhor usar linux, pois seria mais simples de configurar.
Pois bem, hoje precisam que esse sistema rode em linux. Alguém poderia me dizer como fazer isso em linux?
O sistema é igual a caixa eletronico de banco. O usuario não terá acesso a nenhum recurso do SO.

Valeu!

Rodrigo,

Basicamente você precisa configurar duas coisas:

:arrow: definir um usuário padrão para se logar automaticamente.

:arrow: uma vez definido um usuário (exemplo: java) você altera o profile dele (que é um arquivo que tem função semelhante ao AUTOEXEC.BAT)
colocando a chamada ao programa em Java.

cara, sem querer abusar muito, mas como faço para criar um novo usuario no linux?
Sou novato nesse SO :oops:

Logado como root:

adduser fulano

blz, consegui criar um novo usuario.
mas…onde está o arquivo de configuração do profile?

A dica do boaglio, de editar o profile do usuario, tem uma falha de seguranca - se o usuario der Ctrl-C antes da aplicacao Java iniciar, ele fica com acesso ao SO. Claro, tem maneiras de reverter isso mesmo usando um profile, mas o melhor jeito eh colocar a shell de login do usuario como a sua aplicacao.

Use o man /etc/passwd e leia a documentacao relacionada pra entender melhor como fazer isso - nao eh nenhum bicho de sete cabecas, mas a documentacao vai te explicar isso bem melhor que eu :slight_smile:

Rodrigo,

Qual linux vc está usando? Qual versão?

Edita o runlevels (acho que é esse o arquivo) para dar spawn no teu programa java em vez de uma ghetty.

estou usando o kurumin versão 3.2.3 (bem simples mesmo, já que a aplicação não deve permitir o acesso do usuário ao SO).

O seu programa em Java é Gráfico ou em Console?

Se for gráfico seria interessante utilizar outro ambiente gráfico,
pois o KDE vai ter muitos recursos que vocÊ não vai usar.

Instale o WindowMaker no Kurumin, e depois de subir o ambiente
gráfico, edite esse aquivo:

~/GNUstep/Library/WindowMaker/autostart

Nele adicione uma linha do seu programa em Java:

java SuaAplicacao

Se precisar dá uma olhada na documentação do Kurumin:

http://www.guiadohardware.net/kurumin/faq/

Isso é a resposta de uma pergunta que não tem nada a ver, mas acho q ajuda…

[quote]Uma solução que você poderia experimentar é ao invés de usar o KDE ou outro gerenciador de janelas, abrir o xinit com uma janela do konqueror (ou outro navegador de sua preferência). Assim os usuários terão acesso apenas à janela do navegador, sem ter como iniciar outros aplicativos nem fuçar no sistema, o que pode ser interessante num terminal de acesso.

Neste caso você precisa iniciar a interface gráfica usando o comando “xinit -e konqueror http://www.guiadohardware.net” naturalmente mudando a URL para a sua página inicial :-). Na maioria das distribuições você pode colocar esse comando no arquivo ~/.xinitrc (dentro da pasta do usuário) para que ele seja executado automaticamente durante a inicialização do sistema. Configure o konqueror para já abrir no modo de tela cheia e você terá uma tela como esta, apenas o navegador aberto, ocupando toda a tela:[/quote]
Confira tudo em: http://www.guiadohardware.net/livros/linux/09/

Espero que ajude…
Com isso você pode abrir um programa com GUI no boot.

VELO

Melhor não instalar e colocar o programa java no ~/.xinitrc do usuario.

valeu galera!!!
Vou tentar essas soluções. Qualquer coisa volto aqui para jogar pedras ou mandar agradecimentos :mrgreen:

puxa, finalmente descobri como faz…
pegando uma dica aqui, outra ali…
Seguinte: com o jar criado, entrei no centro de controle do kde, fiz com que todo arquivo jar abrisse com o comando java -jar e inseri na pasta .kde/autostart do usuario e reiniciei a máquina para testar.
Pronto, o aplicativo abre juntamente com o KDE. Agora, é só desabilitar a barra de tarefas e os ícones para o usuário.
Valeu galera!!!

Nao eh taaaao simples. Se o cara der Ctrl-Alt-F1, ele ainda cai no console do Linux. Se ele fechar a sua app e souber os atalhos de teclado do KDE, ele ainda consegue usar o resto das coisas, e por aih vai…

Mas se o cara não tem a senha não loga em nada…

Pode fazer o q quiser…

VELO

Foi pensando assim que muito sysadmin perdeu o emprego. :wink:

Simples, na configuração dos runlevels, configure para que o runlevel 5 (iniciar em modo gráfico) crie somente um VT o do X.

E coloca o .xinitrc do /etc mesmo para iniciar aplicação java e não o gerenciador de janelas (eg KDE, Gnome, WindowMaker).

PS: Isso funciona muito bem, já vi fazerem em ambiente 10x mais bizarros, com clientes linux usando windows via Terminal Services com SSO.

Beleza, cara?

Você sabe como faço pra desabilitar o ctrl+alt+f*?

tenho uma dúvida semelhante… mas não idêntica

Utilizando o Slackware que é uma beleza 8) , coloquei a ação para subir o tomcat na hora de inicializar(estilo serviço do sistema) , não tenho problemas de jvm pois está rodando uma boa todos os programas JAVA, então… percebo que o profile somente carrega na hora do login.

Agradeço.