Page 1 sur 1

[lirc] Erreur lancement avec systemd (Résolu)

Publié : ven. 19 oct. 2012, 18:55
par pepette
Bonjour,
J'utilise lirc pour ma télécommande Ati Remote wonder avec succès depuis longtemps mais j'ai un problème pour exécuter lirc via systemd.
journalctl me donne

Code : Tout sélectionner

ln: impossible de créer le lien symbolique « /dev/lircd »: Le fichier existe
Merci.

Re: Erreur lancement lirc avec systemd

Publié : ven. 19 oct. 2012, 19:07
par FoolEcho
Salut,

Ton titre, stp. http://wiki.archlinux.fr/Forum#Format_du_titre :chinois:
Pour le reste, je ne sais pas.

Re: [lirc] Erreur lancement avec systemd

Publié : sam. 20 oct. 2012, 13:46
par pepette
Up. Une idée?

Re: [lirc] Erreur lancement avec systemd

Publié : sam. 20 oct. 2012, 14:19
par FoolEcho
Tu as jeté un oeil sur ce sujet : http://forums.archlinux.fr/post104140.html ?

Re: [lirc] Erreur lancement avec systemd

Publié : sam. 20 oct. 2012, 15:59
par Elbarto
pepette a écrit :Bonjour,
J'utilise lirc pour ma télécommande Ati Remote wonder avec succès depuis longtemps mais j'ai un problème pour exécuter lirc via systemd.
journalctl me donne

Code : Tout sélectionner

ln: impossible de créer le lien symbolique « /dev/lircd »: Le fichier existe
Merci.
que donne la commande :

systemctl status lirc ?

c'est peut-être juste un warning non bloquant,

tu peux aussi tenter ça : stopper le démon lirc ( systemctl stop lirc ), regarder ensuite si le fichier /dev/lircd existe encore, puis le relancer ( systemctl start lirc ) et voir ensuite si l'erreur persiste,

tu peux aussi supprimer le fichier /dev/lircd ( rm /dev/lircd ), normalement il se récréera au prochain lancement de lircd

Re: [lirc] Erreur lancement avec systemd

Publié : sam. 20 oct. 2012, 19:58
par pepette
En effet systemctl status lirc dit bien enable pourtant la télécommande ne fonctionne pas. J'avais déjà essayé de supprimer /dev/lircd sans succès.

Re: [lirc] Erreur lancement avec systemd

Publié : sam. 20 oct. 2012, 20:49
par Elbarto
tu as quoi comme type de port infrarouge ?

un périphérique USB ?

quelque chose d'integré à une carte tuner ?

essaie de suivre à la lettre le tutoriel archlinux pour lirc :

https://wiki.archlinux.org/index.php/Lirc

il faut déjà vérifier comment s'appelle le périphérique infrarouge sous linux ( il peut-être vu comme un port série, un périphérique à part entière ), selon la nature du périphérique il faut alors modifier la configuration de lirc comme indiqué dans le tutoriel, lire les logs pour détecter le moindre problème ( dmesg, /var/log/lirc, /var/log/messages )

assures toi aussi que le module lirc_serial a été chargé avec modprobe

Re: [lirc] Erreur lancement avec systemd

Publié : sam. 20 oct. 2012, 23:49
par pepette
Je l'ai noté dans mon premier post. Il s'agit d'une Ati Remote Wonder I. La configuration de lirc est bonne puisque ca fonctionne si je démarre via sysvinit. Je précise que les modules lirc_dev et lirc_atiusb ne sont plus démarré depuis rc.conf mais bien via module-load.d. Mon système fonctionne par ailleurs parfaitement sous systemd seul lirc fait obstacle à un passage full systemd.

Re: [lirc] Erreur lancement avec systemd

Publié : dim. 21 oct. 2012, 01:59
par Elbarto
pepette a écrit :Je l'ai noté dans mon premier post. Il s'agit d'une Ati Remote Wonder I.
parce que tu penses que le simple fait de donner la marque suffit au lecteur pour en déduire le type ( USB, série, PCI, PCMCIA ) ?
tu es optimiste :mrgreen:

vu que tu mentionnes le module lirc_atiusb j'en conclu donc que c'est du matos USB,

que donne le contenu de /var/log/lircd ?

Re: [lirc] Erreur lancement avec systemd (Résolu)

Publié : dim. 21 oct. 2012, 02:00
par pepette

Code : Tout sélectionner

ln: impossible de créer le lien symbolique « /dev/lircd »: Le fichier existe
Cela venait du fait que lirc était aussi lancé via rc.conf en plus de systemd.
Pour autant une fois rc.conf supprimé cela ne résolvait pas le problème puisque lirc s'exécutait sans erreur cette fois ci mais sans pour autant que irw me renvoie quelque chose.

J'ai modifié le lirc.service original

Code : Tout sélectionner

[Unit]
Description=Linux Infrared Remote Control

[Service]
ExecStartPre=/usr/bin/ln -sf /run/lirc/lircd /dev/lircd
ExecStart=/usr/sbin/lircd --pidfile=/run/lirc/lircd.pid
Type=forking
PIDFile=/run/lirc/lircd.pid

[Install]
WantedBy=multi-user.target

par celui ci:

Code : Tout sélectionner

[Unit]
Description=LIRC Daemon
After=network.target

[Service]
Type=forking
PIDFile=/var/run/lirc/lircd.pid
ExecStartPre=/bin/mkdir -p /var/run/lirc
ExecStartPre=/bin/rm -f /dev/lircd
ExecStartPre=/bin/rm -f /var/run/lirc/lircd
ExecStartPre=/bin/ln -s /var/run/lirc/lircd /dev/lircd
ExecStart=/usr/sbin/lircd -d /dev/lirc0 -P /var/run/lirc/lircd.pid
ExecStopPost=/bin/rm -f /dev/lircd
ExecStopPost=/bin/rm -fR /var/run/lirc

[Install]
WantedBy=multi-user.target


Tout fonctionne parfaitement maintenant.

Merci à tous pour vos réponses.