#1 Le 05/02/2011, à 18:56
- heronmaiden
automatiser lancement d'une commande à chaque boot [résolu]
Hello !
Je suis nouvelle sur le forum et un peu moins sous Ubuntu (2 ans d'utilisation sous linux, dont 1 de Mandriva).
Je m'explique: je souhaite "automatiser" le lancement d'une ligne de commande à chaque démarrage. (Je ne fais pas partie des 1024Mo de geeks qui laissent tourner leur machine nuit et jour et qui ne reboot que 2 à 3 fois par an…)
Et malgré les topics lus et vus un peu partout, j'ai du mal à comprendre: ça touche mon point de n00bitude
voici concrètement mon idée:
J'ai créé un dossier dans mon /home/heronmaiden et je l'ai appelé HTTPserv
Je souhaite lancer une commande dans ce répertoire qui est celle-ci:
python -m SimpleHTTPServer
(elle sert à se créer un mini serveur HTTP en un clin d'oeil et partager une dossier sur le net)
Or, ça devient lassant de devoir rentrer ces lignes à chaque démarrage.
J'ai entendu parler de scripts (bash?) mais c'est trop abstrait encore !! J'ai entendu parler de modification du fichier /etc/rc.local mais c'est toujours trop abstrait
Quelqu'un pourrait-il m'aider ?
Merci beaucoup,
Heronmaiden
Dernière modification par heronmaiden (Le 06/02/2011, à 14:29)
Un heron qui vous veut du bien…
Hors ligne
#2 Le 05/02/2011, à 19:03
- mjdon
Re : automatiser lancement d'une commande à chaque boot [résolu]
Si tu utilises ubuntu, ce que j'ai de plus simple a proposer c'est System>Preferences>Startup applications et tu en rajoutes une. Ça te suffirais?
Hors ligne
#3 Le 05/02/2011, à 19:09
- heronmaiden
Re : automatiser lancement d'une commande à chaque boot [résolu]
c'est pas une application mais je vais voir quand meme…
Un heron qui vous veut du bien…
Hors ligne
#4 Le 05/02/2011, à 19:21
- heronmaiden
Re : automatiser lancement d'une commande à chaque boot [résolu]
ça pourrait le faire mais quelle est la syntaxe de la ligne à rajouter dans ce cas ?
gnome-terminal -e '/home/heronmaiden/HTTPserv python -m SimpleHTTPServer'
semble ne pas aller…
et celle ci non plus:
gnome-terminal -e 'python3 /home/heronmaiden/HTTPserv python -m SimpleHTTPServer'
que faire ?
Dernière modification par heronmaiden (Le 05/02/2011, à 19:23)
Un heron qui vous veut du bien…
Hors ligne
#5 Le 05/02/2011, à 20:36
- mjdon
Re : automatiser lancement d'une commande à chaque boot [résolu]
Et tout simplement "python -m SimpleHTTPServer" ça ne marche pas? (la je commence a manquer sérieusement d'expérience pour te conseiller)
Dernière modification par mjdon (Le 05/02/2011, à 21:43)
Hors ligne
#6 Le 05/02/2011, à 21:49
- heronmaiden
Re : automatiser lancement d'une commande à chaque boot [résolu]
Sûrement... Mais ca ne se lancera pas dans mon dossier et affichera un autre contenu. Merci quand même de tes réponses. Tu m'as filé une bonne piste à exploiter maintenant
Un heron qui vous veut du bien…
Hors ligne
#7 Le 05/02/2011, à 22:18
- mjdon
Re : automatiser lancement d'une commande à chaque boot [résolu]
Je crois qu'effectivement avoir quelques bases de programmation bash te servira sûrement très vite. Je viens de relire ton premier poste et si j'ai bien compris, tu tapes tout les jours
cd /home/heronmaiden/HTTPserv
python -m SimpleHTTPServer
Tu peux exécuter la même chose en une seule ligne en tapant
cd /home/heronmaiden/HTTPserv; python -m SimpleHTTPServer
J'espère que ce coup ci c'est bon. Désolé pour l'inefficacité, je lirais mieux la prochaine fois.
Hors ligne
#8 Le 06/02/2011, à 11:35
- heronmaiden
Re : automatiser lancement d'une commande à chaque boot [résolu]
yeah ! gg
je vais tester ça…
Un heron qui vous veut du bien…
Hors ligne
#9 Le 06/02/2011, à 11:40
- 01franz
Re : automatiser lancement d'une commande à chaque boot [résolu]
bonjour
tu met ta commande dans
/etc/rc.local
toujours utile
sudo tail -f /var/log/syslog
Hors ligne
#10 Le 06/02/2011, à 11:50
- heronmaiden
Re : automatiser lancement d'une commande à chaque boot [résolu]
franz → okey ! parce que dans un simple lanceur il ne la prend pas…
Un heron qui vous veut du bien…
Hors ligne
#11 Le 06/02/2011, à 11:54
- heronmaiden
Re : automatiser lancement d'une commande à chaque boot [résolu]
ça donne un truc comme ça…:
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
cd /home/heronmaiden/HTTPserv; python -m SimpleHTTPServer
exit 0
est-ce ok ?
(je suis désolée, pas trop l'habitude de faire ce genre de chose)
Un heron qui vous veut du bien…
Hors ligne
#12 Le 06/02/2011, à 11:57
- Vysserk3
Re : automatiser lancement d'une commande à chaque boot [résolu]
bonjour
tu met ta commande dans/etc/rc.local
La commande sera exécutée en root et en plus il faut qu'elle soit lancée dans un dossier spécifique. Tant que faire se peut, il faut toujours privilégier une exécution par l'utilisateur.
Une solution, c'est de créer un script. Ouvre un éditeur de texte et rentre ceci :
#!/bin/bash
cd /home/heronmaiden/HTTPserv
python -m SimpleHTTPServer
Tu enregistres le fichier sous un nom genre monserveurpython.sh à un endroit précis (pour le retrouver). Mets le dans le dossier personnel pour commencer, ca simplifiera la commande qui suit.
Ensuite, il faut le rendre exécutable, ouvre un terminal et tapes
chmod u+x monserveurpython.sh
(ici il faut donc que monserveurpython.sh ait été enregistré dans le dossier personnel, si il est ailleurs, il faudra préciser son chemin)
Ensuite, tu retournes dans application au démarrages et tu rajoutes une appli en mettant dans commande le chemin du script monserveurpython.sh (tu peux aller le chercher en faisant parcourir).
Dernière modification par Vysserk3 (Le 06/02/2011, à 11:58)
Hors ligne
#13 Le 06/02/2011, à 12:26
- heronmaiden
Re : automatiser lancement d'une commande à chaque boot [résolu]
merci
je vais faire ça alors, et je te tiens au courant
Un heron qui vous veut du bien…
Hors ligne
#14 Le 06/02/2011, à 12:38
- heronmaiden
Re : automatiser lancement d'une commande à chaque boot [résolu]
un petit soucis à l'étape chmod…
j'ai enregistré mon script sous le nom de scriptservHTTP.sh dans /home/heronmaiden (mon dossier perso quoi) et voilà ce que me donne la commande:
heronmaiden@ubuntu-laptop:~/HTTPserv$ chmod u+x scriptservHTTP.sh
chmod: ne peut accéder `scriptservHTTP.sh': Aucun fichier ou dossier de ce type
mais où est donc la boolette ?
Un heron qui vous veut du bien…
Hors ligne
#15 Le 06/02/2011, à 12:43
- Vysserk3
Re : automatiser lancement d'une commande à chaque boot [résolu]
Normalement, quand on ouvre un terminal, on doit se trouver dans le dossier personnel, là apparemment tu es dans HTPPserv directement, c'est pour ça que la commande échoue, il ne trouve pas le fichier scriptservHTTP.sh dans le dossier courant.
Deux solutions :
- si tu es toujours dans le dossier HTTPserv, faire :
chmod u+x ../scriptservHTTP.sh
- te placer dans le dossier parent (ici le dossier personnel) AVANT de faire la commande :
cd ~
chmod u+x scriptservHTTP.sh
Hors ligne
#16 Le 06/02/2011, à 12:50
- heronmaiden
Re : automatiser lancement d'une commande à chaque boot [résolu]
arf !!!!
en plus ça m'est déjà arrivé… erreur toute bête: oublier de revenir dans le répertoire principal.
bon je recommence
Un heron qui vous veut du bien…
Hors ligne
#17 Le 06/02/2011, à 12:53
- heronmaiden
Re : automatiser lancement d'une commande à chaque boot [résolu]
je reboot et je donne la réponse d'ici peu, mais normalement c'est résolu
Un heron qui vous veut du bien…
Hors ligne
#18 Le 06/02/2011, à 12:57
- heronmaiden
Re : automatiser lancement d'une commande à chaque boot [résolu]
ça poutre ! Résolu.
merci à Vysserk3, mjdon et 01franz.
PS: ya pas un "bouton" résolu ?
Dernière modification par heronmaiden (Le 06/02/2011, à 12:59)
Un heron qui vous veut du bien…
Hors ligne
#19 Le 06/02/2011, à 13:09
- 01franz
Re : automatiser lancement d'une commande à chaque boot [résolu]
tu édit le titre dans ton premier message
toujours utile
sudo tail -f /var/log/syslog
Hors ligne