CTKArch · Forums
![]() |
|
---|---|
![]() ![]()
Posts: 7
Registered: 2011-07-17 ![]() |
Bonjour,
J'ai récemment découvert minidlna et l'ai installé sur ma CtkArch : version installée désormais en standard (et non en Live). Lorsque je lance minidlna depuis la ligne de commande, tout fonctionne parfaitement : Quote: J'ai donc essayé de mettre minidlna dans la ligne de daemons de /etc/rc.conf afin que le serveur dlna démarre automatiquement au boot : Quote: J'obtiens alors un message d'erreur au boot (/var/log/boot) et minidlna ne se lance pas : Quote: minidlna ne détecte apparemment pas l'interface eth0 à cette phase... Initialement, j'avais ...@wicd... dans les daemons, j'ai oté le @ en pensant que peut être mon interface eth0 n'était pas encore up quand minidlna se lancait... mais ça ne change rien. Je me demande donc s'il ne faut pas mettre le daemon ...network... ou rajouter quelque chose dans les préférences de wicd, mais je suis un peu sec ![]() Auriez-vous une idée ? Cordialement, Salan54 PS: Désolé pour le titre du topic, c'était "Failing to start minidlna" et non mindlna... ![]() |
Last edited by: salan54 on Dec 03, 2011 10:16:32 pm
|
![]() |
|
---|---|
![]() ![]() Member
Posts: 193
Registered: 2011-03-09 |
je crois que le daemon wicd renvoie DONE même si l'adresse ip n'est pas encore obtenue, donc mettre un "@" ou pas, ça devrait rien changer à ton problème...
l'idée serait de caser un "wait 5" quelquepart, mais je sais pas si ce serait propre de le faire dans etc/rc.d/minidlna (et dans rc.conf, je vois aucune option permettant de retarder le chargement d'un daemon). donc au pire, dans etc/rc.d/minidlna, tu pourrais faire ça: BASH Code: case "$1" in start) wait 5; stat_busy "Starting minidlna" [ -z "$PID" ] && su -s /bin/sh -l -c /usr/sbin/minidlna - $MINIDLNA_USER if [ $? -gt 0 ]; then stat_fail else add_daemon minidlna stat_done fi ;; (j'ai juste ajouté le "wait 5" qui devrait laisser le temps à Wicd d'obtenir le bail DHCP) mais attend peut-être que Calimero vienne te donner son avis là-dessus, il te trouvera sans doute quelquechose de plus clean... |
Last edited by: Cereal-Killer on Dec 04, 2011 11:02:41 am
|
![]() |
|
---|---|
![]() ![]()
Posts: 7
Registered: 2011-07-17 ![]() |
Merci cereal-killer pour ce début de réponse,
En fait, j'ai continué de me creuser la tête et, au lieu, d'imaginer que minidlna était dans le coup, je me suis dit que ma configuration réseau n'était pas bonne. Effectivement, c'était le cas. En comparant mon rc.conf avec le rc.conf.pacnew, je me suis rappelé que depuis quelques mois, la syntaxe de la section NETWORKING avait quelque peu changé et que je n'avais pas mis à jour mon rc.conf depuis l'installation de CTKARCH 0.7 sur cette machine... Pas bien ![]() Bref, en rectifiant comme il se doit la section NETWORKING : Quote: Et en plaçant minidlna en dernière position des DAEMONS, ça marche au poil... Quote: A noter pour ceux qui s'intéressent à minidlna qu'il y a tout de même quelques adaptations à faire sur les droits de certains répertoires. Voir ce thread que j'avais initié sur le forum archlinux.fr : forums.archlinux.fr/topic9502.html On peut mettre "résolu" dans le titre et désolé du dérangement... Merci encore, Salan54 |
![]() |
|
---|---|
![]() ![]() Administrator
Posts: 551
Registered: 2011-01-20 ![]() |
Non, tu n'as rien résolu du tout.
La section networking de rc.conf n'est pas utilisée si network n'est pas dans les daemons. Et tu utilises wicd, pas network, donc. C'est juste par "hasard" que ça a fonctionné cette fois : le DHCP a été plus rapide à obtenir c'est tout, donc au moment où minidlna s'est lancé ce coup-ci tu avais déjà une IP. Cereal, la commande wait 5 attend la terminaison du processus de PID 5, ce que tu as écrit est donc n'importe quoi. Tu confonds avec sleep ; mais même un sleep 5 ce serait une solution odieusement crade. Une possibilité serait d'enlever minidlna des daemons et mettre ceci dans /etc/rc.local : while ! /etc/rc.d/minidlna start;do sleep 2;done & Ainsi, la boucle va retenter le lancement s'il échoue. Il aurait fallu attendre que l'interface aie une ip mais sais po faire. |
Last edited by: Calimero on Dec 04, 2011 6:04:37 pm
|
![]() |
|
---|---|
![]() ![]() Member
Posts: 193
Registered: 2011-03-09 |
"Cereal, la commande wait 5 attend la terminaison du processus de PID 5, ce que tu as écrit est donc n'importe quoi.
Tu confonds avec sleep ; mais même un sleep 5 ce serait une solution odieusement crade." c'est bien pour ça que j'avais dit d'attendre que tu passes par là: ça me semblait pas très propre de modifier un script dans /etc/rc.d (et en plus je me gourre de commande)... ![]() |
![]() |
|
---|---|
![]() ![]()
Posts: 7
Registered: 2011-07-17 ![]() |
Bonjour,
Je n'ai relu qu'aujourd'hui le fil de ce forum car je n'utilise cette machine que les weekends. Je ne peux que confirmer qu'à chaque re-démarrage, minidlna démarre sans message d'erreur... donc, dans un sens, ça me satisfait même si ce n'est que le fruit d'un heureux hasard et si "je n'ai rien résolu du tout" ![]() Merci en tous cas pour vos réponses. Je garde sous le coude la solution de calimero consistant à mettre le démarrage de minidlna dans /etc/rc.local . Et merci pour la précision sur le daemon "network" et les lignes de la section networking. J'ai appris quelque-chose et je vais donc me replonger dans la doc. |
Last edited by: salan54 on Dec 11, 2011 1:50:24 pm
|
![]() |
|
---|---|
![]() ![]()
Posts: 7
Registered: 2011-07-17 ![]() |
Bonsoir,
Je relance ce thread car je me retrouve devant le même problème sur une autre machine sur laquelle j'ai installé arch et minidlna... J'ai donc repensé à la suggestion de Calimero et modifié mon rc.local en conséquence : PHP Code: #!/bin/bash
# # /etc/rc.local: Local multi-user startup script. # while !/etc/rc.d/minidlna start;do sleep 2;done & Mais, il y a apparemment un souci : PHP Code: $tail /var/log/boot
Fri Feb 24 21:39:28 2012: /etc/rc.local: line 6: !/etc/rc.d/minidlna: No such file or directory J'ai tout essayé pour faire accepter cette ligne (je précise que /etc/rc.d/minidlna existe bien) en ajoutant des apostrophes, parenthèses, crochets un peu partout... mais ça ne passe pas. Ce doit être du bash assez basique mais je merde lamentablement et vient humblement solliciter une solution ![]() Merci d'avance. |
![]() |
|
---|---|
![]() ![]() Administrator
Posts: 551
Registered: 2011-01-20 ![]() |
Ce serait oublier que ma suggestion était while ! /etc/rc.d/minidlna start;do sleep 2;done &
Je te laisse trouver l'espace que tu as oublié. |
![]() |
|
---|---|
![]() ![]()
Posts: 7
Registered: 2011-07-17 ![]() |
Merci Calimero,
C'était en effet oublier ce précieux espace... Ma seule excuse était de ne disposer que d'une souris sans bouton central et de ne pas pouvoir faire du copier/coller avec urxvt. J'ai donc recopié... mal ;-) Je peux donc confirmer qu'avec ta suggestion, minidlna se lance désormais correctement lors du boot. Merci encore. |