Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
coder un programme qui se lance au demarrage de linux
Envoyé par: mephistos

bonjour j ai coder en c++ un petit programme sous window. je cherche a le rendre portable.
sous window, j ai pu sans probleme rajouter un clef registre pour lancer mon programme au demarrage. masi sous linux , vu qu il n y a pas de base de registre je ne sais aps comment faire.
il faut savoir que je n'utilise linux que quand je suis au boulot et que je ne suis donc pas un utilisateur experimente.

merci par avance pour toutes les reponses que vous pourrez me fournir

Poste le Tuesday 8 September 2009 11:39:15
Répondre     Citer    
Re: coder un programme qui se lance au demarrage de linux
Envoyé par: gil390

bonjour,

sous linux, il y a différentes manières de faire cela selon si ton programme doit fonctionner comme un daemon au démarrage de la machine, s'il doit être lancé que par un utilisateur particulier ou tout le monde après le login, s'il doit être lancé sous X (gnome ou kde) ?

Poste le Wednesday 9 September 2009 11:45:21
Répondre     Citer    
Re: coder un programme qui se lance au demarrage de linux
Envoyé par: mephistos

salut bah apres mainte recherche, on m a dis que le seul moyen de faire ca; ca serai de creer un script que se chargerai de faire ca.mais j avoue que ca m'enchante pas.

mon programme se lance au demarrage grace a une case a cocher dans mon panneau reglage.il tournera en mode reduit tant que l utilisateur n'en a pas besoin.

mais je ne veux pas code moi meme le script je voudrai que ce soit mon programme qui mette le script et le retire si la case est decocher.

sous window,j ai eu aucun mal a le faire je suis passer par les clef registre mais la je bloque.
je suis actuellement sous gnome

Poste le Monday 14 September 2009 14:09:17
Répondre     Citer    
Re: coder un programme qui se lance au demarrage de linux
Envoyé par: nicola

Tu cherches à coder un démon (daemon), qui se lance en utilisant le système de démarrage (qui dépend de la distribution). Chez Debian, ça se passe dans /etc/init.d/ et /etc/rcx.d/.

--
On ne prête qu’aux riches, et on a bien raison, parce que les autres remboursent difficilement.
-+- Tristan Bernard (1866-1947) -+-



Modifié 1 fois. Dernière modification le 14/09/09 19:06 par nicola.

Poste le Monday 14 September 2009 19:05:57
Répondre     Citer    
Re: coder un programme qui se lance au demarrage de linux
Envoyé par: mephistos

donc en fait si j ai bien compris il va falloir que je parse ces deux fichiers et que je les modifie pour qu il lance mon programme au demmarrage de la machine?

est tu aurrais une idee de là où je peux trouver de la doc pour savoir comment modifier ces fichiers, pour que ca fasse ce que je veux?

Poste le Tuesday 15 September 2009 09:42:41
Répondre     Citer    
Re: coder un programme qui se lance au demarrage de linux
Envoyé par: nicola

En fait, tu touches aux particularités de chaque système d’exploitation, c’est pour ça que tu rames. Ça sera encore pire si tu cherches à distinguer les différentes manières de démarrer les services d’un système Unix.
Le plus simple serait de trouver, si ça existe, une bibliothèque qui fait ça.

--
On ne prête qu’aux riches, et on a bien raison, parce que les autres remboursent difficilement.
-+- Tristan Bernard (1866-1947) -+-

Poste le Tuesday 15 September 2009 19:51:10
Répondre     Citer    
Re: coder un programme qui se lance au demarrage de linux
Envoyé par: ille

Salut,

le problème, c'est qu'on ne sait pas ce que ton programme fait, mais, s'il y a une case à cocher poru activer ou désactiver le démarrage, j'en conclu qu'il s'agit d'un programme utilisateur et pas d'un démon, chaque utilisateur a le choix de le lancer ou non. Il n'a donc rien à faire dans les script d'init (que tu ne peux modifier qu'en root, donc si ton prog ajoute ou supprime un script dans /etc/init.d, c'est qu'il est SUID, d'ou problème de sécurité, etc)
Il est plus simple d'utiliser les fonctionnalité des gestionnaires de session/fenêtre: je n'utilise plus gnome ni kde, donc je ne sais pas très bien où c'est, mais avec E17, il suffit de rajouter un fichier tonappli.desktop dans le répertoire ~/.home/.e/e/applications/startup Avec Gnome, tu devrais aller voir dans gconf, il doit y avoir quelque chose. Manuellement, cela se fait par: System > Preferences > Sessions > Startup Programs

Tiens, je viens de tomber sur ça.
Même chose en fait pour Gnome:
"La dernière version de GNOME permet aux développeurs d'enregistrer leurs applications pour qu'elles démarrent automatiquement au démarrage de GNOME. Pour cela, vous avez seulement besoin d'installer un fichier .desktop dans $prefix/share/gnome/autostart/, /etc/xdg/autostart/ ou ~/.config/autostart/. Si vous voulez installer un service et le désactiver par défaut, il suffit d'ajouter la propriété X-GNOME-autostart-enabled = False dans le fichier.

Quelques précautions à suivre pour les services s'enregistrant ainsi :

* les applications qui s'enregistrent elles-mêmes dans la session d'une autre façon (par exemple, nautilus, gnome-panel, vino) ne doivent pas s'enregistrer de cette façon ;
* les applications gérées par le gestionnaire de session ne seront pas gérées correctement. Prenez soin d'utiliser l'option --sm-disable dans le champ Exec du fichier .desktop.
"
Voilà

Poste le Thursday 5 November 2009 17:04:29
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
coder un programme qui se lance au demarrage de linux
Pour poser vos questions sur les scripts shell, le Perl, le C, etc... Attention : nous ne sommes pas des spécialistes du dev, ce forum est juste pour de petites aides ponctuelles concernant le développement et les outils de développement.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons