logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 19-07-2011 14:55:55

nanoseifer
Membre
Inscription : 19-07-2011

[Résolu] Supression de l'incrémentation des eth*

Bonjour les debiannais big_smile

J'ai un problème bien compliqué, et à mon grand regret je ne trouve pas la solution. Je vous explique mon soucis :
Je voudrais pouvoir fixer mon ip associé à ma deuxième carte réseau. Or les collègues ayant besoin de cartes réseaux (ou moi même) pour des test différents, on change les cartes réseaux. Du coup, j'ai rarement la même carte dans le pc. Donc je ne peux fixer mon ip à partir d'un eth défini, car la mac address étant différente, l'eth s'incrémente mad

Je souhaiterais donc que quelle que soit ma 2ème carte réseau, celle-ci soit associée à eth1. Je ne peux pas l'associer en fonction du driver car les cartes ne sont pas les mêmes.
Du coup, je cherche à réinitialiser au démarrage le fichier qui associe une carte réseau à un eth. (le fichier étant 70-persistent-net.rules il me semble). J'ai lu qu'en le supprimant, il se régénérait. Dans ce cas là pourquoi ne pas le supprimer à chaque démarrage... Seulement comment le supprimer avant la phase de régénération?

Bref je sais pas si vous avez tout suivi hmm mais je compte sur vous cool

Dernière modification par nanoseifer (28-07-2011 09:38:45)

Hors ligne

#2 19-07-2011 16:26:01

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : [Résolu] Supression de l'incrémentation des eth*

Bonjour nanoseifer et bienvenue sur df !

C'est fou, voilà le lien vers le tuto pour modifier le nommage des cartes réseaux :
http://debian-facile.org/doc:systeme:udev

Fais attention, peinture fraîche (voir la date de création...), mais je l'utilise couramment ce tuto. smile

Amitié, Joel

saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#3 20-07-2011 08:20:48

nanoseifer
Membre
Inscription : 19-07-2011

Re : [Résolu] Supression de l'incrémentation des eth*

Bonjour Joel smile

Merci pour ton lien, malheureusement, il ne répond pas à mon problème qui est plus complexe que ça. J'ai déjà exploré ce fichier, et mon but est que quelle que soit la seconde carte que j'insère, elle soit renommée en eth1 sans que j'ai à venir la modifier sur le pc. hmm
Car en faite je pilote 2 pc linux à partir d'un pc windows, et l'intérêt est de ne rien faire sur les pc linux à part les allumer. roll

Une solution pourrait-être de le supprimer au démarrage car il se régénère au démarrage du pc en mettant à jour le nom des cartes (j'ai lu ça sur plusieurs forum). Sauf que je ne suis pas assez qualifié pour réussir cela. De plus il faudrait qu'il soit supprimer avant la phase de régénération (si tu vois où je veux en venir). neutral

Toute autre solution reste bien sur bonne à prendre. big_smile

Hors ligne

#4 20-07-2011 09:34:41

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : [Résolu] Supression de l'incrémentation des eth*

Effectivement...

Peut-être qu'un script le ferait sur ce fichier même ?
soit :

invoke-rc.d networking stop
rm /etc/udev/rules.d/70-persistent-net.rules


puis le redémarrage des connexions network :

invoke-rc.d networking start


et celui des eth :

ifup eth0 && ifup eth1


À tester, j'ai pas essayé.
De plus, je ne suis pas fortiche en script, si cela fonctionne à la main, commande après commande, ce script doit pouvoir être bien amélioré encore !

Yep ? roll


saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#5 20-07-2011 10:34:29

nanoseifer
Membre
Inscription : 19-07-2011

Re : [Résolu] Supression de l'incrémentation des eth*

C'est l'idée à laquelle je pensais, ça devrait marcher, merci smile

Mais j'ai commencé linux y'a 2 semaines, du coup si tu peux me guider, car je ne sais pas où rentrer ce code sad
Dans les fichiers du startup(dans ce cas là lequel), ou dans un autre??
Ce script me supprime donc le fichier persistent, mais je crois que je dois relancer udev au complet afin de régénérer mon persistent-net.rules, et pas seulement network... dans ce cas je dois remplacer networking par udev, c'est ça?

Dernière modification par nanoseifer (20-07-2011 10:59:40)

Hors ligne

#6 20-07-2011 11:13:00

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : [Résolu] Supression de l'incrémentation des eth*

Hop hop hop !

Ah non ah non !
Je pensais que la regénération était faite sur la réinitialisation de la connexion.
Si c'est pas le cas, il doit juste falloir modifier les "eth" et non le fichier au complet.
Utiliser grep et sed donc smile
Ces deux commandes ne sont pas ésotériques, regarde les tutos les concernant dans le wiki df.

Réalise à la main la modification d'un fichier fictif, commande après commande, ensuite, tu pourras nous proposer un script à ta façon que les meilleurs d'entres nous sur le sujet te perfectionneront.

Yeaaaaaaaah big_smile

saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#7 20-07-2011 11:27:45

nanoseifer
Membre
Inscription : 19-07-2011

Re : [Résolu] Supression de l'incrémentation des eth*

Ok merci! Bon ben j'ai du boulot, faut que je me penche dessus. Dès que j'ai construit quelque chose je le poste voir ce que vous en pensez.

Hors ligne

#8 20-07-2011 14:15:22

nanoseifer
Membre
Inscription : 19-07-2011

Re : [Résolu] Supression de l'incrémentation des eth*

Bon après réflexion, je risque d'avoir quelques soucis. En admettant que mon script se retrouve au démarrage, je dois prendre en compte tous les cas de figure:
1)-je n'ai pas changé de carte donc ma carte est enregistrée sous eth1.
2)-j'ai changé de carte, l'ancienne est en eth1, la nouvelle en eth2.
Bien sur, je pars du principe que le script étant appliqué à chaque démarrage, eth ne dépassera jamais 2 car toujours ramené à 1 (on est bien d'accord là dessus?)
Après ça se corse. Pour réussir dans le cas numéro 2, je dois supprimer la ligne avec "eth1", et changer dans l'autre ligne "eth2" par "eth1". Mais si j'applique ce script dans le cas 1, je perds mon eth1 alors qu'il était bon, et je n'aurais plus que mon eth0, la 2ème carte serais inutilisable...

Je sais pas si c'est possible, mais peut-on utiliser grep pour lire le fichier et si seulement il existe un eth2, il exécute le script???

Hors ligne

#9 20-07-2011 16:16:58

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : [Résolu] Supression de l'incrémentation des eth*

peut-on utiliser grep pour lire le fichier et si seulement il existe un eth2, il exécute le script???


Perso, j'utiliserai grep pour trouver le fichier et sed pour modifier eth1 en eth0 et eth2 en eth1.


saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#10 20-07-2011 16:29:47

nanoseifer
Membre
Inscription : 19-07-2011

Re : [Résolu] Supression de l'incrémentation des eth*

Le soucis est que s'il existe un eth2, il existe alors un eth1 (comme 1+1=2 cool).
Or dans le script je dois supprimer mon eth1 avant de modifier mon eth2, parce-que sinon j'aurais 2 eth1 différents (gros bug). Dans le cas ou je garde la meme carte réseau, mon eth reste eth1, donc si le script le supprime, la carte ne sera ni eth1, ni eth2.

Tu me suis??? wink

Du coup je dois lancer le script seulement si eth2 existe... Donc je dois lire le fichier avant, insérer un if eth2 existe alors ... et je lance mon script de remplacement.

Enfin c'est ce que je pense  hmm
Et seulement est-ce possible???

Edit : oui pour la modification j'avais bien l'intention d'utiliser sed

Dernière modification par nanoseifer (20-07-2011 16:30:37)

Hors ligne

#11 20-07-2011 16:31:05

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : [Résolu] Supression de l'incrémentation des eth*

peut-on utiliser grep pour lire le fichier et si seulement il existe un eth2, il exécute le script???


Perso, j'utiliserai grep pour trouver le fichier et sed pour modifier eth1 en eth0 et eth2 en eth1.
Ensuite, on peut faire des boucles en utilisant if afin d'éviter une intervention intempestive.
Voir là :
http://debian-facile.org/doc:programmat … -dir-exist

Je suis sûr qu'il y a moyen de moyenner un script pourvu que ces commandes fonctionnent déjà.

smile

Edit :
http://debian-facile.org/doc:programmation:scripts

Edit2 :
Plutôt que la commande grep, on peut utiliser la commande find, voir le tuto extrêment précis sur find là :
http://debian-facile.org/commande:find

Dernière modification par smolski (20-07-2011 16:36:36)


saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#12 20-07-2011 16:37:46

nanoseifer
Membre
Inscription : 19-07-2011

Re : [Résolu] Supression de l'incrémentation des eth*

Le tuto pour ton IF est utilisable pour un fichier ou un répertoire, mais pas d'exemple pour une chaine à l'intérieur d'un fichier... 
Un petit exemple sous la main???  big_smile

j'aurais bien bricolé un if "le fichier" "la chaine à chercher"
mais va savoir si ça marche -_-

Sinon le delete du sed, il supprime bien la ligne au complet??

Hors ligne

#13 20-07-2011 16:44:10

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : [Résolu] Supression de l'incrémentation des eth*

Sinon le delete du sed, il supprime bien la ligne au complet??


http://debian-facile.org/doc:systeme:se … ptions_sed

j'aurais bien bricolé un if "le fichier" "la chaine à chercher"


Oui, ça paraît bon en utilisant find pour le fichier et grep pour la chaîne à chercher.


saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#14 21-07-2011 10:28:58

nanoseifer
Membre
Inscription : 19-07-2011

Re : [Résolu] Supression de l'incrémentation des eth*

Je connais déjà la racine du fichier, donc pas besoin de le chercher??
Du coup grep suffit.. ??? Si je lui met :
if grep eth2 ~/trucmuche/70-persistent-net.rules  ça fonctionne???
Et j'enchaine par quoi? je met mon sed directement??  (je connait pas la programmation sous linux...)

if grep eth2 ~/etc/udev/rules.d/70-persistent-net.rules
      sed -e "d eth1" "s/eth2/eth1/g" /etc/udev/rules.d/70-persistent-net.rules


smile

Edit : Je dois surement délimiter mon if, pour qu'il prenne en compte le sed... style if {mon argument} {mon action}

Dernière modification par nanoseifer (21-07-2011 15:00:48)

Hors ligne

#15 21-07-2011 10:57:58

nanoseifer
Membre
Inscription : 19-07-2011

Re : [Résolu] Supression de l'incrémentation des eth*

if [ grep eth2 ~/etc/udev/rules.d/70-persistent-net.rules ]
  then
      sed -e "d eth1" "s/eth2/eth1/g" /etc/udev/rules.d/70-persistent-net.rules
fi


ou

if [ "grep eth2 ~/etc/udev/rules.d/70-persistent-net.rules" != "" ]
  then
      sed -e "d eth1" "s/eth2/eth1/g" /etc/udev/rules.d/70-persistent-net.rules
fi


Edit : Qui dit mieux?! big_smile

Dernière modification par nanoseifer (21-07-2011 15:00:33)

Hors ligne

#16 21-07-2011 16:03:13

eol
Membre
Inscription : 03-09-2009

Re : [Résolu] Supression de l'incrémentation des eth*

nanoseifer a écrit :

J'ai lu qu'en le supprimant, il se régénérait. Dans ce cas là pourquoi ne pas le supprimer à chaque démarrage... Seulement comment le supprimer avant la phase de régénération?


Bonjour,
Pour être sûr de le supprimer avant la phase de regénération de manière simple, je le supprimerais à l'extinction, pas au démarrage ... wink

Hors ligne

#17 21-07-2011 16:06:02

nanoseifer
Membre
Inscription : 19-07-2011

Re : [Résolu] Supression de l'incrémentation des eth*

C'est vrai eol, pas bête wink

Si mon script fonctionne pas, je tenterai ça. C'est la couche 0 qui gère l'extinction non?? Il me semble l'avoir lu!

Hors ligne

#18 22-07-2011 08:58:20

nanoseifer
Membre
Inscription : 19-07-2011

Re : [Résolu] Supression de l'incrémentation des eth*

up please sad

Hors ligne

#19 22-07-2011 10:42:28

eol
Membre
Inscription : 03-09-2009

Re : [Résolu] Supression de l'incrémentation des eth*

nanoseifer a écrit :

up please sad


Bonjour,

less /etc/rc0.d/README


devrait t'en dire un peu plus.

Hors ligne

#20 22-07-2011 10:53:39

nanoseifer
Membre
Inscription : 19-07-2011

Re : [Résolu] Supression de l'incrémentation des eth*

Ok merci, mais j'attendais plus de réponse concernant le script en fait, histoire de pas m'être creusé la tête pour rien. Si j'ai pas de réponse j'aurais pas le choix de toute façon.

Edit :

The scripts in this directory are executed once when entering runlevel 0.

The scripts are all symbolic links whose targets are located in /etc/init.d .

Generally it is not necessary to alter the scripts in this directory.
Their purpose is to stop all services and to make the system ready for shutdown.

For more information see /etc/init.d/README.


Donc ça confirme bien que c'est la bonne couche. Comment faire pour supprimer le fichier dans ce cas? Je dois faire un script? Rajouter une ligne dans un fichier déjà existant du style [c]rm /etc/udev/rules.d/70-persistent-net.rules[/c]

Dernière modification par nanoseifer (22-07-2011 11:24:17)

Hors ligne

#21 25-07-2011 08:12:48

nanoseifer
Membre
Inscription : 19-07-2011

Re : [Résolu] Supression de l'incrémentation des eth*

Weekend terminé, j'espérai avoir des réponses. up please yikes

Hors ligne

#22 26-07-2011 13:54:24

nanoseifer
Membre
Inscription : 19-07-2011

Re : [Résolu] Supression de l'incrémentation des eth*

Please help j'ai été abandonné et je ne sais pas si mon script va fonctionner, ni même comment supprimer le fichier à l'extinction du PC. sad

Hors ligne

#23 26-07-2011 14:14:22

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : [Résolu] Supression de l'incrémentation des eth*

Salut nanoseifer,

Pour tester, tu peux créer une copie du fichier dans ton home et diriger tes tentatives de script sur ce fichier test.
Je ne peux t'aider davantage à cet instant.

Amitié, Joel smile

saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#24 26-07-2011 14:21:15

nanoseifer
Membre
Inscription : 19-07-2011

Re : [Résolu] Supression de l'incrémentation des eth*

Merci bonne idée. Je n'ai pas osé le tester car peur de faire une fausse manip. Quel script dois-je essayer, le 1er ou le 2ème de ceux que j'ai proposé? Et où dois-je mettre le script, et sous quel format?

Edit: une autre question s'impose. Comment savoir si le script se lance avant la détection de la seconde carte réseau?

Je pense que je vais repartir sur un script qui supprime le fichier lors de l'extinction du pc

Dans ce cas là, pourrait-il suffire de rajouter la ligne suivante dans un script déjà existant à l'extinction
rm /etc/udev/rules.d/70-persistent-net.rules

????

Dernière modification par nanoseifer (26-07-2011 14:26:56)

Hors ligne

#25 26-07-2011 14:51:02

nanoseifer
Membre
Inscription : 19-07-2011

Re : [Résolu] Supression de l'incrémentation des eth*

Quelle différence y'a t-il entre la couche de halt (la 0) et la couche de reboot (la 6)??? Vu qu'il y a une différence, mon script doit apparaitre dans les 2 couches?

Dernière modification par nanoseifer (26-07-2011 15:04:12)

Hors ligne

Pied de page des forums