Desligando o PC do aplicativo Java

0

Estou tentando desligar meu PC Ubuntu usando um aplicativo Java, mas nada parece acontecer. A seguir está meu código:

Runtime runtime = Runtime.getRuntime();

try {
   Process proc = runtime.exec("sudo shutdown -h now");
}    
catch (IOException e) {
   e.printStackTrace();
}

O que estou perdendo?

    
por Saad Ayub 27.12.2013 / 20:41

2 respostas

0

Para evitar que sudo peça uma senha, edite o arquivo sudoers com visudo :

sudo visudo -f /etc/sudoers.d/shutdown

Isso criará um novo arquivo no diretório /etc/sudoers.d/ , que será incluído, deixando seu arquivo sudoers original intacto.

Se seu usuário for chamado myuser e seu host for chamado de myhost , você poderá adicionar essas linhas

myuser myhost = (root) NOPASSWD: /sbin/shutdown
myuser myhost = (root) NOPASSWD: /sbin/reboot

Salve suas alterações e experimente.

Além disso, você não deve fazer e.printStackTrace() , mas usar um criador de logs.

    
por Amedee Van Gasse 11.06.2014 / 12:31
-2

O sudo pede uma senha - você precisa fornecê-la.

    
por user3033490 27.12.2013 / 20:57