Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
798 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  [Résolu]-- script pour relancer la carte réseau

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Résolu]-- script pour relancer la carte réseau

n°1194842
Profil sup​primé
Posté le 25-01-2010 à 14:54:10  answer
 

Bonjour,
Nouveau sous ubuntu et plus principalement sous xubuntu je suis victime d’un problème réseau au niveau de mon système j’ai énormément de message  eth0: excessive work at interrupt dans mes logs. Le système étant hébergé sur une dedibox, je suis obligé d’effectuer un redémarrage à distance via la console d’administration du site dedibox.
Je pensais créer une sorte de bath ou de script permettant de relancer la carte réseau si celle-ci ne répond plus au ping de la passerelle.
J’ai besoin d’aide pour réaliser cela car pour le moment je n’ai pas les connaissances adéquates ..
merci


Message édité par Profil supprimé le 27-01-2010 à 11:11:19
mood
Publicité
Posté le 25-01-2010 à 14:54:10  profilanswer
 

n°1194871
Profil sup​primé
Posté le 25-01-2010 à 16:13:25  answer
 

Je suis pas le seul ça me rassure http://www.dedibox-news.com/sujet-5722-1.html donc comme énoncé sur le site, je vais effectuer un petit script qui va effectuer un ping de la passerelle et qui en fonction du résultat va redémarrer le réseau. Je m'inspire du code et j'obtiens :
 
a=$(ping -c 1 88.191.59.1 |grep transmitted|awk '{ print($4) }')
b=1
 
 
if [ "$a" -eq "$b" ]
then
  date >> /var/log/test_net
else
  date >> /var/log/test_net
  echo reseau HS >> /var/log/test_net
  /etc/init.d/networking restart
fi
 
Je présume que ce code est correct, mais avec quelle extension dois-je l'enregistrer ? et où dois-je le placer ? merci

n°1194895
ducon3d
Posté le 25-01-2010 à 18:17:17  profilanswer
 

ajoute ceci au debut de ton script:
#!/bin/sh

 

ensuite tu nomme ton fichier comme ceci par exemple nettest.sh
tu le rend exectublable:
chmod 700 nettest.sh
et tu le refile a root:
chown root:root netttest.sh
ensuite tu le mets dans cron, en root bien sur

 

edit: la ligne crontab :
* * * * * /root/netttest.sh > /dev/null

 

re-edit: j'oubliais c'est super naze comme truc.

 


Message édité par ducon3d le 25-01-2010 à 18:26:04
n°1194904
Profil sup​primé
Posté le 25-01-2010 à 19:01:36  answer
 

Merci de m'avoir répondu.
 
Par contre j'ai besoin de quelques explications.
Quand tu dis tu le refiles à root, ça veut dire que tu le rends propriétaire à root uniquement c'est bien ça ?
 
Pour le moment je galère avec crontab, dois-je faire un :
sudo crontab -e ?  

n°1194937
ducon3d
Posté le 25-01-2010 à 20:42:46  profilanswer
 

oui le script tu lui met comme proprietaire root.
mais is tu fais tout en root depuis le debut ce sera le cas par defaut.
sur ubuntu (donc la version gnome) dans un terminal tu fais (// truc c'est du commentaire donc a ne pas taper):
sudo -s //passe en root
gedit /root/nettest.sh // la tu colle le script (cf ci-dessous) et tu sauvegarde et tu quitte.
chmod 700 /root/nettest.sh
echo "* * * * * /root/nettest.sh >/dev/null" >> /etc/crontab // c'est bien >> et surtout pas >
exit
 
#!/bin/sh
 
a=$(ping -c 1 88.191.59.1 |grep transmitted|awk '{ print($4) }')
b=1
 
if [ "$a" -eq "$b" ]
then
  date >> /var/log/test_net
else
  date >> /var/log/test_net
  echo reseau HS >> /var/log/test_net
  /etc/init.d/networking restart
fi  
 
 
 
voila, mais j'ai pas teste, de plus je te le repete c'est une solution tres naze.
 
faudrais trouver un meilleur workaround que ca.

n°1195252
Profil sup​primé
Posté le 26-01-2010 à 21:15:57  answer
 

Ayant encore eu ma déconnexion, je viens tout juste d'appliquer à la lettre ce que tu m'as conseillé, je pense que ça va fonctionner.
 
Je suis d'accord avec toi sur le principe que c'est très laid comme contournement... mais c'est pour le moment la seule chose que j'ai trouvé sur le net pour palier au problème.
 
En tout cas merci de m'avoir répondu.

n°1195283
Profil sup​primé
Posté le 27-01-2010 à 01:33:34  answer
 

Plus de réseau à nouveau, cela n'a pas fonctionné... peut-on vérifier l'application de la crontab ?

n°1195288
ducon3d
Posté le 27-01-2010 à 02:22:54  profilanswer
 

cat /var/log/test_net

n°1195289
Profil sup​primé
Posté le 27-01-2010 à 02:26:57  answer
 

Le fichier n'existe pas

n°1195291
ducon3d
Posté le 27-01-2010 à 02:41:01  profilanswer
 

donc le script ne tourne pas.
lance le script manuellement pour tester
/root/netttest.sh
maintenant le log devrais exister.(verifie)
 
puis verfie le cron.
crontab -e

mood
Publicité
Posté le 27-01-2010 à 02:41:01  profilanswer
 

n°1195293
Profil sup​primé
Posté le 27-01-2010 à 02:49:18  answer
 

root@sd-123456: /root# sh nettest.sh
 
rien dans /var/log
 
et le crontab -e est vide  :sweat:


Message édité par Profil supprimé le 27-01-2010 à 02:50:52
n°1195294
ducon3d
Posté le 27-01-2010 à 03:31:27  profilanswer
 

je viens de tester le script, il marche.
(et ca log aussi)
 
donc verifie tes droits pour commencer
ls -l /root/netttest.sh
ca doit donner ca:
-rwx------ 1 root root blabla...
 
je vais regarder pour cron.

n°1195295
ducon3d
Posté le 27-01-2010 à 03:39:01  profilanswer
 

edite /etc/crontab pour ajouter a la ligne ce que j'ai mis en gras:
echo "* * * * * root /root/nettest.sh >/dev/null"

 

ca corrige le petit probleme de cron
toujours est-il que le script marche, hors tu n'arrive pas a le lancer a la main, donc tu as un probleme de droits sans doute.


Message édité par ducon3d le 27-01-2010 à 03:39:13
n°1195313
Profil sup​primé
Posté le 27-01-2010 à 09:51:55  answer
 

Le ls -l donne
-rwx------ 1 root root  246 2010-01-26 21:09 nettest.sh   (nettest.sh apparait en vert)
J'ai bien édité le fichier cron en écrivant :  sudo gedit /etc/crontab
et j'ai collé ce que tu as écris echo "* * * * * root /root/nettest.sh >/dev/null"  (avec les guillemets)
Le fichier étant vide, j'ai sauvegardé puis j'ai fait un crontab -e et là je constate que le fichier est de nouveau vide, comme s'il s'agissait d'un fichier temporaire car nano indique le chemin Fichier : /tmp/crontab.bnI5tQ/crontab et à chaque crontab -e le nom change

n°1195331
Profil sup​primé
Posté le 27-01-2010 à 10:26:57  answer
 

Le script fonctionne, il n'y a plus que crontab qui me pose problème

n°1195334
Profil sup​primé
Posté le 27-01-2010 à 11:10:26  answer
 

Il semble que cela fonctionne toutes les minutes. J'avoue que c'est très moche comme solution.
J'ai lu sur un site qu'il était possible de changer de kernel, http://www.placeoweb.com/dotclear/ [...] 5-00000000  
concrètement que se passera-t-il si j'effectue ce changement ? je vais tout perdre ?

n°1195360
ducon3d
Posté le 27-01-2010 à 13:19:27  profilanswer
 

non tu ne perd pas tout, tu perd rien. c'est juste une mise a jour de kernel.
 
si tu suis bien la procedure il y aura pas de probleme.
par contre ne te foire pas sur le fichier de conf de grub.

n°1195389
Profil sup​primé
Posté le 27-01-2010 à 14:25:03  answer
 

J'ai une dédibox V1 (avec un CPU VIA 2ghz C7) et selon moi ce n'est pas une version amd64, du coup je ne vois pas quel kernel prendre.

n°1195391
o'gure
Modérateur
Multi grognon de B_L
Posté le 27-01-2010 à 14:28:15  profilanswer
 

Vérifie dans /proc quel type de processeur tu as.


---------------
Relax. Take a deep breath !
n°1195395
Profil sup​primé
Posté le 27-01-2010 à 14:40:08  answer
 

model name : VIA Esther processor 2000MHz

n°1195404
ducon3d
Posté le 27-01-2010 à 15:12:04  profilanswer
 

dans ce cas il te faut un kernel 32bit.
mais de toute facon dans le tuto que tu as trouve ils utilisent apt, donc aucun probleme pour trouver un nouveau kernel.

n°1195490
Profil sup​primé
Posté le 27-01-2010 à 23:29:50  answer
 

Plus précisément quel kernel ?  
 
Mauvaise nouvelle, quelque chose n'a pas fonctionné, ce soir vers 22h40 j'ai perdu la connexion et j'ai laissé un peu la machine tournée pour voir si elle allait reprendre d'elle même, mais non. Je regarde donc le log test_net et je constate qu'entre 22h40 (heure de la perte de connexion) et 23h10 (heure du reboot via le site dedibox) aucun nouvel élément n'a été inscrit dans le fichier alors que d'habitude une nouvelle entrée arrive après chaque minute. Et par contre si j'ai bien compris le code je devrai voir "echo reseau HS" dans le log et ce n'est pas le cas.

n°1195669
ducon3d
Posté le 28-01-2010 à 18:32:52  profilanswer
 

faut verifier le script alors, je regarderai ca ce soir si j'ai le temps

 

edit: change de kernel si ca arrange le probleme. pour trouver la version fait ce qu'il y a dans le tuto, et dis nous ou tu coince...


Message édité par ducon3d le 28-01-2010 à 18:43:09
n°1195711
Profil sup​primé
Posté le 28-01-2010 à 21:14:55  answer
 

bruno@sd-12426:~$ uname -a
Linux sd-12426 2.6.28-11-server #42-Ubuntu SMP Fri Apr 17 02:48:10 UTC 2009 i686 GNU/Linux
bruno@sd-12426:~$ sudo apt-get install linux-image-2.6.25.4dedibox-r9-smp-x32 - Linux kernel binary image for version 2.6.25.4dedibox-r9-smp-x32
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances        
Lecture des informations d'état... Fait
linux-image-2.6.25.4dedibox-r9-smp-x32 est déjà la plus récente version disponible.
E: Impossible de trouver le paquet Linux


 
La liste des kernels disponibles se trouvant ici http://forum.hardware.fr/hfr/OSAlt [...] m#t1195520

n°1195725
ducon3d
Posté le 28-01-2010 à 22:17:24  profilanswer
 

uname -a donne le nom du kernel qui tourne.
et la reponse est 2.6.28
qui n'est pas un kernel "dedibox", ce qui n'est pas particulierement un probleme normalement, mais pourquoi as-tu cette version ? tu as trafique un truc ?
 
le dernier kernel dedibox est un 2.6.25
 
fais donc ceci et donne le resultat:
dpkg -l | grep linux-image
cat /boot/grub/menu.lst

n°1196387
Profil sup​primé
Posté le 01-02-2010 à 23:29:19  answer
 

Finalement j'ai changé de version d'ubuntu en optant pour une version server
butor@sd-12426:/home$ uname -a
Linux sd-12426 2.6.28-11-server #42-Ubuntu SMP Fri Apr 17 02:48:10 UTC 2009 i686 GNU/Linux
Pour le moment plus de problèmes.
Merci pour ton aide.

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  [Résolu]-- script pour relancer la carte réseau

 

Sujets relatifs
[RESOLU] [BASH] Récupérer une date dans une string[résolu] renseignement sur virtualisation windows
Astérisk DUNDI multi carte ethernet[ RESOLU ] X hs sur archlinux
[vim] commandes en tête de fichier texte [résolu]phpBB, comment avoir le bouton d'édition des msg [Résolu]
[résolu] PFSense + Squid config des allowed_subnets ?[RESOLU] renommer un fichier commencant par -T
Plus de sujets relatifs à : [Résolu]-- script pour relancer la carte réseau


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR