Besoin d'aide : @IP fixe ?
-
Bonjour à toutes et tous !
J'ai un problème avec la commande "connmanctl" du fichier custom.sh qui ne semble pas s'exécuter lors d'un reboot (ou qui s'exécute mais est ensuite annulée par une autre commande ?), ce qui m'empêche de fixer l'adresse IP.
Ma configuration :
- Raspberry PI 3B
- Recalbox v18.03.30
- Micro SD 32Go UI, alim 3Va...
- Manettes PS3.
J'ai pourtant suivi les indications trouvées ici et là, et j'ai passé pas mal de temps hier en IRC avec Substring que je remercie encore pour sa disponibilité.
Là où nous en sommes :
-
le script S99custom est bien exécuté lors d'un reboot du PI (vérifié avec des recallog ajoutés).
-
le script custom.sh est bien détecté et exécuté, au reboot du PI (vérifié avec des recallog ajoutés).
-
les commandes qui précédent et qui suivent la commande /usr/bin/connmanctl config ethernet_b827eb9292bd_cable --ipv4 manual [adresse IP] [masque] [adresse GW] (en l'occurrence, des recallog ajoutés pour tracer) sont bien exécutées.
-> Les deux points précédents me semblent éliminer d'éventuels problèmes liés à des droits inappropriés : le script est bien exécuté au boot. Mais peut-être des problèmes de droits sur la commande elle-même ?. -
si je lance le script manuellement (soit custom.sh directement, soit via le S99custom) depuis une session root, tout se passe bien : l'adresse IP choisie est définie.
-> Cela me semble éliminer un problème de faute de frappe dans le script, par exemple sur le ethernet_xxxxxxx_cable -
en revanche, après un boot du Raspberry, l'adresse utilisée n'est plus celle fixée, mais l'adresse par défaut lorsqu'il n'y a pas de custom.sh.
A ce stade, mes hypothèses sont que le problème peut être :
- lié à l'environnement d'exécution entre le lancement manuel du script custom.sh et son exécution lors du boot
- lié à des droits, contextes... d'exécution de la commande connmanctl elle-même
- lié à des scripts et/ou commandes qui sont exécutées, lors d'un reboot, après le S99custom, et qui viendraient donc remettre l'adressage IP en DHCP et annuler l'adresse IP fixée dans le custom.sh.
Mais vous l'aurez compris, je n'y connais rien, et vous prie de m'excuser si mes hypothèses sont farfelues :).
Merci d'avance pour votre aide précieuse, et bravo encore pour tout le travail fourni.
NB : Je ne souhaite pas actuellement contourner le problème via un DHCP fixant l'IP :).
-
@sinis salut,
Peux-tu me donner le résultat de ces commandes ?
ls -l /recalbox/share/system/custom.sh
cat /recalbox/share/system/custom.sh
ls -l /etc/init.d/S99custom
cat /etc/init.d/S99custom
-
Bonjour @oyyodams,
Merci de ton intérêt
Peux-tu me donner le résultat de ces commandes ?
ls -l /recalbox/share/system/custom.sh
-rwxr-xr-x 1 root root 477 Apr 8 20:28 /recalbox/share/system/custom.sh
cat /recalbox/share/system/custom.sh
#!/bin/bash
recallog "custom.sh 0409-1917 starting"recallog "connmanctl services : "
/usr/bin/connmanctl services >/recalbox/share/system/logs/connmanctl_s.log 2>&1
/usr/bin/connmanctl config ethernet_a827db9282cd_cable --ipv4 manual 192.168.140.108 255.255.255.0 192.168.140.1
recallog "custom.sh 0409-1917 finishing"ls -l /etc/init.d/S99custom
-rwxr-xr-x 1 root root 210 Apr 8 18:41 /etc/init.d/S99custom
cat /etc/init.d/S99custom
#!/bin/bash
recallog "S99custom starting"
test -e "/recalbox/share/system/custom.sh" && ( recallog "S99 custom : script custom.sh trouve" ; /recalbox/share/system/custom.sh $1 )
recallog "S99custom finishing" -
@sinis ok ça semble bon. Si tu redémarres, et que tu fais un
connmanctl services
ça te sort bienethernet_a827db9282cd_cable
? -
@oyyodams Oui oui, absolument.
Peut-être as-tu vu, j'ai ajouté au script custom.sh une ligne qui logue le résultat de connmanctl control dans le fichiers de log, et dès le boot, cette valeur est la bonne.
Le "pire", comme indiqué, c'est que le script fonctionne correctement si je le lance à la main ("./custom.sh") ou que je lance S99custom qui appelle custom.sh : l'adresse IP se trouve alors bien fixée comme je le souhaite... jusqu'au prochain reboot.
Mon hypothèse d'un script exécuté postérieurement au custom.sh et qui viendrait remettre l'adressage en DHCP est-elle vérifiable ? Tiens, je vais essayer de lancer et loguer connmanctl services depuis le 99Custom : je vous dis tout à l'heure, de retour à la maison.
Merci pour l'aide
-
@sinis rien n'est lancé après oe S99custom, je penche pour un problème d'environnement ou de terminal non existant
-
@substring ok merci.
Pour information, le log d'un ifconfig à la fin du S99custom montre que l'adresse IP statique a bien été appliquée et qu'elle est bonne.
J'en déduis :
- ce n'est pas le passage du custom.sh au S99custom qui pose problème
- à la fin du S99custom, l'adresse IP est bien celle fixée dans le custom.sh.
La question est donc : que se passe-t-il entre la fin du S99custom et la fin du boot du PI ?
Merci à tous.
NB : je suis le seul à avoir le problème ?
-
@sinis ceux qui voulaient une ip fixe faisaient autrement il me semble. Cf wiki, je ne sais pas s'il est à jour
-
@substring Pas trouvé d'autre chose que le wiki suivi.
En revanche, une information nouvelle : si je désactive "Renforcer la sécurité" dans Paramètres avancés/Sécurité, il n'y a plus de bug, et l'adresse IP fixée est la bonne.
Il y probablement un souci dans la partie qui gère la sécurité ? je ne pense pas que le mot de passe root par défaut soit utilisé en dur dans un script quelque part au boot, ce serait étonnant
C'est ennuyeux (et vraiment pas recommandé) de devoir laisser le mot de passe par défaut : je vais essayer de chercher, mais j'avoue que mes connaissances sont limitées.
Merci en tous cas pour votre aide à tous, et si quelqu'un veut continuer, je peux être disponible pour des tests et autres.
-
@sinis elle m'a toujours vraiment gonflé cette option sécurité à la con, toujours et encore des problèmes avec .
-
@substring En complément, le Recalbox Manager n'est pas accessible quand l'option est activée.
...je n'y connais rien mais l'option change quoi à part le mot de passe ? Si elle fait d'autres choses (exiger du ssl, des clés...), ne pourrait-on avoir quelque chose de plus simple qui ne permette que de changer le mot de passe root ?
Merci en tous cas et bravo pour le job
-
@sinis l'option sécurité verouille Recalbox de beaucoup de parts, oui.
Truc simple pour le.mdp : ca n'existe pas vu que / est en lecture seule
-
@substring Ok ! merci de ta réponse
Allez, on range ça dans un coin, pour les prochaines évolutions
En attendant, je ferme toutes les portes et toutes les fenêtres, je mets des vigiles et des contrôles d'accès, des badges et de la biométrie... bref, hors de question qu'on vient me piquer mes sauvegardes de retrogaming ^^
Merci encore pour tout le job, et le support associé.
-
@substring ...et en fait, je m'étais trompé dans le dernier diagnostic : ce n'est pas l'option sécurité qui fait planter l'adressage IP Statique, c'est l'activation de l'option "Recalbox API".
En revanche, l'option "Sécurité" bloque le web Manager.
En synthèse pour un éventuel prochain debug :
-
option API activée -> l'IP fixe ne fonctionne pas
-
option API désactivée -> l'IP fixe est ok
-
option Sécurité (mot de passe root non standard) activée -> le Web Manager n'est pas accessible.
-
option Sécurité désactivée -> Web Manager accessible.
Bonne fin de semaine à toutes et tous
(...et si quelqu'un a 30 secondes pour répondre à ma question sur la température, dans un autre thread, ce serait gentil :))
-
-
@sinis vire l'api elle ne sert a rien, elle ne devrait meme plus etre compilée d'ailleurs
-
Merci à tous. Je reste à quasiment 70° sur la page d'accueil, sur deux cartes PI3 différentes.
Bref, rien d'inquiétant a priori.
Bon week-end !