Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 14/01/2010, à 10:50

aurelieng

Lancer un script au démarrage pour ajouter une ligne dans un fichier

Salut à tous,

je sais, je sais, la question a été posée 250 fois sur le forum. He bine, j'ai lu les 250 réponses, j'ai appliqué les 250 réponses, et ça ne marche pas.

voilà le soucis:
Lorsque je me connecte à la fac en dhcp via la connection ethernet je suis obligé de rajouter des commandes pour que la connection fonctionne dans /etc/resolv.conf

voilà ce que me donne le fichier resolv.conf
# Generated by NetworkManager
nameserver 80.10.246.2
nameserver 80.10.246.129

pour que cela marche je dois ajouter la ligne suivante:
nameserver 162.38.140.1

puis executer dans un terminal:
sudo route add default gw 162.38.140.254 eth0

et là ça marche. Mais je suis obligé de recommencer à chaque fois que je rebranche mon pc portable.
j'ai donc pensé à écrire un script qui se lance au démarrage:
#! /bin/sh
sleep 20
echo "nameserver 162.38.140.1" | sudo tee -a /etc/resolv.conf
sudo route add default gw 162.38.140.254 eth0
exit

je l'ai rendu executable avec chmod
j'ai ensuite essayé les différentes méthodes sur le forum en le plaçant dans usr/bin/ ou dans etc/init.d puis update-rc.d etc....
ça ne marche pas. Je fais également avec systeme-preferences-applications au demarrage en allant chercher le fichier directement: /usr/bin/reseau.sh (le nom de mon script), j'ai également essayé directement sous la forme: cd usr/bin/ | sudo ./reseau.sh
ça ne marche pas.

par contre si je me place sous /usr/bin dans un terminal et que je lance sudo ./reseau.sh
ça fonctionne

quelqu'un aurait-il une idée ?

merci d'avance,

aurelieng

Hors ligne

#2 Le 14/01/2010, à 10:59

sr40150

Re : Lancer un script au démarrage pour ajouter une ligne dans un fichier

Salut,

Essaye de faire gksu gnome-schedule
et tu ajoute ton sudo ./reseau.sh. en tache planifiée au démarrage

Bye

P.S: J'avais eu un problème similaire pour programmer l'extinction d'une machine. Mais le principe reste le même...

Dernière modification par sr40150 (Le 14/01/2010, à 11:04)

Hors ligne

#3 Le 14/01/2010, à 11:10

dekans

Re : Lancer un script au démarrage pour ajouter une ligne dans un fichier

Tu peux ajouter cette commande dans :
/etc/rc.local

Sans le sudo, c'est déjà exécuté en root.
Fais bien attention de mettre ta commande AVANT le 'exit 0' tongue


dekans@jabber.kubuntu-fr.org

Hors ligne

#4 Le 14/01/2010, à 11:51

xamaco

Re : Lancer un script au démarrage pour ajouter une ligne dans un fichier

Tu devrais pouvoir résoudre le problème en éditant le fichier /etc/dhcp3/dhclient.conf
Sous 'send host-name "<hostname>";', essaie de rajouter une ligne :
supersede domain-name-servers 162.38.140.1, xxx.xxx.xxx.xxx;
Le ,xxx.xxx.xxx.xxx est facultatif et devrait correspondre au dns secondaire.

Hors ligne

#5 Le 14/01/2010, à 12:09

aurelieng

Re : Lancer un script au démarrage pour ajouter une ligne dans un fichier

Pour répondre à sr40150:

j'ai essayé via gnome-schedule et ça ne fonctionne pas.

la ligne n'est pas ajoutée dans le fichier.

j'essaye les autres méthodes proposées.

merci beaucoup !

aurelieng

Hors ligne

#6 Le 14/01/2010, à 12:19

aurelieng

Re : Lancer un script au démarrage pour ajouter une ligne dans un fichier

deuxième essai avec l'ajout dans rc.local

ça ne marche pas, la ligne n'est pas ajoutée.

j'essaye la troisième solution et je vous tiens au courant.

Hors ligne

#7 Le 14/01/2010, à 12:22

sr40150

Re : Lancer un script au démarrage pour ajouter une ligne dans un fichier

ok bon courage.

Hors ligne

#8 Le 14/01/2010, à 12:25

aurelieng

Re : Lancer un script au démarrage pour ajouter une ligne dans un fichier

3eme essai en ajoutant 162.38.140.1 dans le fichier dhclient.conf comme indiqué par xamaco.

he bien, çaaaaaa........ ne marche pas ;-(

je vais sans doute me résoudre à lancer le script "à la main" à chaque fois que je me connecte, tant pis.

si vous avez une solution pour lancer un script sh au démarrage, je suis preneur. Je ne comprends pas bien pourquoi ça marche quand je fais sudo ./reseau.sh dans un terminal et pas quand j'essaye de le lancer automatiquement au démarrage. mystère.

merci bien.

aurelieng

Hors ligne

#9 Le 14/01/2010, à 12:50

dekans

Re : Lancer un script au démarrage pour ajouter une ligne dans un fichier

aurelieng a écrit :

deuxième essai avec l'ajout dans rc.local

ça ne marche pas, la ligne n'est pas ajoutée.

j'essaye la troisième solution et je vous tiens au courant.

fais voir ton rc.local


dekans@jabber.kubuntu-fr.org

Hors ligne

#10 Le 14/01/2010, à 13:45

aurelieng

Re : Lancer un script au démarrage pour ajouter une ligne dans un fichier

et hop voilà mon rc.local

#!/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.

echo "nameserver 162.38.140.1" | tee -a /etc/resolv.conf
route add default gw 162.38.140.254 eth0
exit 0

any idea ?

Hors ligne