Chargement...
 
Skip to main content

2 - Les distributions et les noyaux


[RESOLU] Problème de reconnaissance en NOGUI

Bonjour à tous,

Je vais essayé de faire court mais complet pour mon problème:
J'utilise Puredata avec un patch de ma confection pour le live. Puredata reçois des infos de mon pad USB AKAI LPD8 et du son de l'entrée de ma carte EDIROL UA-25 EX

J'ai déjà pas mal posté ici quand à des déboires de reconnaissances avec JACK, mais j'avais depuis réussis à passé outre.
Mon système fonctionnant bien, j'ai voulu passer à l'étape supérieure: l'installation d'une distribution sur une partition, qui après réglage, n'aurait pas d'interface graphique et lancerait automatique puredata parfaitement paramétré... Bref, les rêve!

Et je n'en suis pourtant pas loin, mais...
J'ai réussis à mettre au point un script qui me lance puredata en NOGUI parfaitement paramétré

Copy to clipboard
#!/bin/bash pd-extended -nogui -audioindev 3 -audiooutdev 3 -alsa -alsamidi -midiindev 1 -midioutdev 1 -rt -open ~/Bureau/QuercusErraticae/patch/project.pd


J'ai installé Linux Mint sur un bout de partition pour le dédier entièrement à mon but.
J'ai installé Puredata dessus, et testé mon script, jusque là, tout baigne!
Mais, quand j'éteins l'interface graphique avec la commande suivante:
Copy to clipboard
sudo /etc/init.d/mdm stop

là mon script ne fonctionne plus. En regardant de plus près je me suis aperçu que, dans ce mode, puredata ne reconnaît plus du tout mes périphériques (carte son et contrôleur AKAI)

Et de là, quand j’exécute la commande inverse
Copy to clipboard
sudo /etc/init.d/mdm start
, même en mode graphique, il ne reconnaît toujours pas mes périphérique, jusqu'au prochain redémarrage.

N'hésitez pas à me demander des précisions si nécessaire, et merci d'avance!!
Après quelques temps de errance je fais mon retour:

Suite à des discutions sur le forum codelab, on m'a conseillé de prendre Debain -> pas de pulseaudio et plus orienté serveur, donc sans X
Mais je n'en ai pas encore fini avec cette histoire:
Voilà ou j'en suis, j'ai mon script dans init.d -> pdstart
Il est appelé par son lien /etc/rcS.d/S20pdstart
Pdstart démarre mon script "avalvague.sh" qui contient c'est quelques lignes:
Copy to clipboard
#!/bin/bash pd-extended -nogui -audiodev 1 -alsa -alsamidi -mididev 3 -rt -open /home/jokoko/Bureau/QuercusErraticae/patch/project.pd

Je démarre bien au Runlevel S
Mais quand je démarre, j'obtiens
Copy to clipboard
[FAIL] startpar: service(s) returned failure: pdstart … failed!

Et quand j'essaye d'exécuter
Copy to clipboard
update-rc.d pdstart defaults

j'obitent:
Copy to clipboard
insserv: warning: script is corrupt or invalid: /etc/init.d/../rcS.d/S20pdstart

Pourtant je l'ai (S20pdstart) créé avec la commande ln

Donc je ne sais pas trop ou ça cloche.

Voici mon script pdstart:
Copy to clipboard
#!/bin/bash ### BEGIN INIT INFO # Provides: pdstart # Required-Start: # Required-Stop: # Default-Start: S # Default-Stop: 0 1 6 # Short-Description: démarre pd-extended paramétré # Description: ### END INIT INFO case "$1" in start|"") echo "pdstart démarre " su /etc/avalvague.sh ;; stop) # No-op ;; esac

Voilà, ça laisse encore pas mal de pistes, mais j'ai comme l'impression d'avoir avancé =)
France
insserv: warning: script is corrupt or invalid: /etc/init.d/../rcS.d/S20pdstart


Ça serait pas le /../ qui te met le brun ? Il est ou exactement ton script ?
Mon script avalvague.sh qui est déclenché par pdstart (qui est dans /etc/init.d) se trouve dans /etc/
France
Est-ce que tu peux confirmer que tu as bien un script nommé "S20pdstart" dans /etc/rcS.d/ ?
France
😊 File nous une copie de ce script. (Utilise les balises CODE).
Et bien ce script je l'ai créé et relié a mon script pdstart qui est dans /etc/init.d/ par la commande
Copy to clipboard
ln -s
, donc il ne contient rien de plus que mon script pdstart qui contient:

Copy to clipboard
#!/bin/bash ### BEGIN INIT INFO # Provides: pdstart # Required-Start: # Required-Stop: # Default-Start: S # Default-Stop: 0 1 6 # Short-Description: démarre pd-extended paramétré # Description: ### END INIT INFO case "$1" in start|"") echo "pdstart démarre " su /etc/avalvague.sh ;; stop) # No-op ;; esac


Ce n'est pas comme cela qu'il fallait procéder pour le S20pdstart?
Pourquoi tu installes une distribution avec interface graphique ?
Sur mon PC avec Ubuntu Server, je n'ai aucun problème de son.
Et bien simplement parce qu'au départ je n'avais pas connaissance et je n'avais pas trouvé de distrib sans X.

Mais tu notera que depuis Debian, le problème n'est plus une affaire de son!
France
Je ne suis pas super bon en script. J'ai une question : dans ton script, il y a "su /etc/avalvague.sh". Tu es sûr que ça peut fonctionner comme ça ? Je veux dire, pour passer en "su", normalement il faut saisir un mot de passe à la main. Je ne sais pas si ça fonctionne dans un script. Bref, je ne suis pas très bon là dessus, donc je vais arrêter et laisser d'autres te répondre.
Bon après avoir un peu farfouillé dans tous les sens, j'ai réussi à mettre pdstart au démarrage mais du coup il s’exécute en tout premier... Je comprends pas vraiment pourquoi.
Le problème étant que AlSA n'a pas le temps de se lancer.
Mon idée serait donc, à défaut de trouver mieux, de lancer ALSA depuis mon script pdstart.
Donc voilà ce que j'ai dans mon script:

Copy to clipboard
case "$1" in start|"") echo "alsa démarre" /etc/init.d/alsa-utils start sleep 10 echo "pdstart démarre" pd-extended -nogui -audiodev 3 -alsa -alsamidi -mididev 2 -rt -open /home/jokoko/Bureau/patch/project.pd ;; stop) # No-op ;; esac


Et il me rend:
Copy to clipboard
Setting up ALSA...done (none loaded)

Donc là je cherche un moyen de démarrer Alsa mais je ne sais pas trop comment le formuler dans mon script.
France
Au lieu de lancer alsa-utils (qui sont simplement des utilitaires alsa), tu n'aurais pas un /sbin/alsa plutôt ?
Je suis sous Debian et je n'ai pas de /sbin/alsa
J'ai essayé avec le /usr/sbin/alsa mais ça me renvoi la même chose qu'avec alsa-utils
France
Et c'est un script ton /sbin/alsa ou un binaire ? Si c'est un script, ca vaudrait peut être le coup de le lire. Enfin, je te dis ca, c'est du pifomètre hein 😁
Ha oui...
Copy to clipboard
# Description: Used to load and unload ALSA modules and # restore and store mixer levels. There is no # longer any need to run this script on bootup # or shutdown. It is now moved to /usr/sbin.


Bon...
mais je suis en train de réaliser que si mon pdstart s'est mis tout au début c'est parce j'avais tapé:
Copy to clipboard
update-rc.d -n pdstart default
mais qu'il faudrait peut-être que je mette autre chose que default pour que mon script ne se mette pas en tout 1er ou quelque chose comme ça. (Si c'est bien ça... c'est balo ^^ )
YEAAAAHHH, j'ai réussi!

Bon alors... c'est un peu une méthode de sagouin mais ça marche, même mieux que je ne l'attendais.
En faite après avoir essayé de multiples possibilités avec update-rc.d (start 20 S . stop 20 0 1 6 . et bien d'autres...) je suis finalement tombé par hasard sur un ligne dans inittab:
Copy to clipboard
# What to do in single-user mode. ~~:S:wait:/sbin/sulogin

que j'ai remplacé par:
Copy to clipboard
~~:S:wait:/etc/init.d/pdstart

Puisque le login était la dernière action après le chargement de tout le init.d
Alors je sais c'est vraiment pas catholique mais ça marche, et le petit plus c'est qu'en cas de bug, un simple ctrl-C et le script se relance donc en 1 seconde j'ai pd qui redémarre parfaitement paramétré.

En tout cas un GRAND MERCI à Olinuxx et à ceux qui ont tenté de m'aider. Je suis maintenant HEUREUX!

J'en profite pour vous signaler que je joue avec ce dispositif le 20 septembre à Pontivy au festival "en voie d'expression" avec la Cie Quercus Erraticae, vers 15H (si jamais il y a des morbihanais dans l'auditoire... Sinon je jouerais sûrement à d'autres occasions dans le secteur de Rennes.
France
Ta joie me remplie de bonheur 😊
Dis-moi, tu crois que tu pourrais nous faire un tuto avec ca ?
Menu de gauche -> Bloc "Documentation" -> "Aide auteur Wiki" -> "Créer une page"

Même si ca n'est pas super catholique, on essaie d'être ouvert et pas sectaire. Et puis en plus, tu pourrais avoir des retours de gens qui lisent la documentation mais n'épluchent pas les forums (si si, ca existe ❗.
Ok j'vais essayer de faire ça même si j'ai pas mal de taf en même temps... je sais juste pas quand ça sera prêt.
Page: 2/2
1  2