Bonsoir,
Sur un équipement qui ne possède pas d'horloge sauvegardée, je dois mettre l'heure système à jour en faisant une requête vers un serveur ntp.
Si je récupère bien l'heure sur le serveur, le code java qui fait un appel système pour la mise àl' heure n'a aucun effet .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
                        long serverTime = message.getTransmitTimeStamp().getTime();
                        System.out.println("Time long  (millisecondes) = "+ serverTime);
                        long temps = serverTime/1000; // conversion en secondes pour la commande système
                        String[] cmd = {"su","mypasswd","date","--set=@'" + temps + "'"};
                        Runtime runtime = Runtime.getRuntime();
                        runtime.exec(cmd);
                        System.out.println("serveur ntp secondes = " + temps);
                        // heure serveur ntp
                        Date date = new Date(serverTime);
                        ntpDateTime = sdf.format(date);
                        System.out.println("Time from NTP  = "+ ntpDateTime);
                        // heure système
                        date = new Date();
                        System.out.println("Heure système  = "+ sdf.format(date));
Par contre directement sur le système Linux, la commande fonctionne :
Donc l'éxécution et la mise à l'heure manuelle :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
hubert@ubuntu:~$ /opt/jdk1.7.0_60/bin/java -jar horloge.jar 
Time long  (millisecondes) = 1484086394888
serveur ntp secondes = 1484086394
Time from NTP  = 10/01/2017 23:13:14
Heure système  = 08/01/2017 20:49:42
hubert@ubuntu:~$ su
Password: 
root@ubuntu:/home/hubert# date --set='@1484086394'
Tue Jan 10 23:13:14 CET 2017
root@ubuntu:/home/hubert# date
Tue Jan 10 23:13:19 CET 2017
Le problème doit sans doute se trouver à l'interface avec le système, mais je ne sais trop à quel endroit.
Les suggestions sont les bienvenues.