Bonjours,


Je cherche à exécuter une commande linux sous Java, jusque là, pas trop compliqué, j'ai réussit à trouvé des infos ceci !

Sauf que la commande que je cherche à exécuter est "mount -a" pour recharger mon fichier fstab.

d'après mes recherche cette commande n'est exécutable que par l'utilisateur root...
je cherche donc une solution pour exécuter cette action, en changeant d'utilisateur, et là, je sèche un peu !

Voici mon code pour le moment :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
try {
    System.out.println("Teste d'exec cmd :");
    Runtime rt = Runtime.getRuntime();
    Process proc = rt.exec("mount -a");
    InputStream stdin = proc.getInputStream();
    InputStreamReader isr = new InputStreamReader(stdin);
    BufferedReader br = new BufferedReader(isr);
    String line = null;
    System.out.println("<OUTPUT>");
    while ((line = br.readLine()) != null) {
        System.out.println(line);
    }
    System.out.println("</OUTPUT>");
    int exitVal = proc.waitFor();
 
    System.out.println("Process exitValue: " + exitVal);
} catch (Throwable t) {
    System.out.println("Test KO");
    System.out.println(t);
}
Merci d'avance