Souci avec ifup

Le
Yves Lambert
Bonjour,

J'ai un souci de configuration : au démarrage le réseau n'est pas
configuré. Lorsque je lance ifup manuellement j'ai l'erreur suivante :
jar-ptitsa:~# ifup eth0
/var/run/dhclient.eth0.pid: interface name too long (is 26)
Failed to bring up eth0.
(debian sid/experimental, ifup version 0.7alpha
Version dhclient isc-dhclient-4.1.1-P1)


J'ai l'impression que c'est l'appel à dhclient qui échoue, le paramètre
de start-stop-daemon étant passé de façon erronée à dhclient, or je
n'arrive pas à voir dans quel script cet appel est fait - et d'où
provint cette erreur.

Quelqu'un peut-il me donner des piste ?

--
J'ai l'orgueil des vices qu'on me prête;
je suis moins fier des vices que j'ai.
-+- Jean Cocteau -+-

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: http://lists.debian.org/20100822161420.1e58b782@jar-ptitsa.bidart.net
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Pascal Hambourg
Le #22494961
Salut,

Yves Lambert a écrit :

J'ai un souci de configuration : au démarrage le réseau n'est pas
configuré. Lorsque je lance ifup manuellement j'ai l'erreur suivante :
jar-ptitsa:~# ifup eth0
/var/run/dhclient.eth0.pid: interface name too long (is 26)
Failed to bring up eth0.
(debian sid/experimental, ifup version 0.7alpha
Version dhclient isc-dhclient-4.1.1-P1)



Ah, les joies de sid.

J'ai l'impression que c'est l'appel à dhclient qui échoue, le paramètre
de start-stop-daemon étant passé de façon erronée à dhclient, or je
n'arrive pas à voir dans quel script cet appel est fait - et d'où
provint cette erreur.



Je ne sais pas dans sid, mais dans lenny les clients DHCP sont appelés
directement depuis l'exécutable ifup.

$ strings /sbin/ifup | grep dhclient

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Yves Lambert
Le #22495581
On Sun, 22 Aug 2010 18:00:02 +0200
Pascal Hambourg

Je ne sais pas dans sid, mais dans lenny les clients DHCP sont appelés
directement depuis l'exécutable ifup.

$ strings /sbin/ifup | grep dhclient



Oui, c'est bien ça aussi. ça me semble un a priori un peu moisi, mais
bon....


Et l'appel se fait apparemment ainsi :

dhclient -e -pf /var/run/dhclient.%iface%.pid
-lf /var/lib/dhcp/dhclient.%iface%.leases %iface%

Bon j'avance :
Dans la version 0.6.5 de ifupdown ifup et ifdown sont un même
programme. Ce n'est pas le cas avec la version 0.7alpha. La
version 0.6.5 communique correctement avec isc-dhclient-4.1.1-P1

Les appels dans la version 0.6.5 sont fait ainsi :
dhclient -v -pf /var/run/dhclient.%iface%.pid
-lf /var/lib/dhcp/dhclient.%iface%.leases %iface%

Si je lance :

# dhclient -e -pf /var/run/dhclient.eth0.pid
-lf /var/lib/dhcp/dhclient.eth0.leases eth0

Je reproduis l'erreur :

/var/run/dhclient.eth0.pid:
interface name too long (is 26)

Ce "-e" tout seul ne me dit rien qui vaille :

Usage: dhclient [-4|-6] [-SNTP1dvrx] [-nw] [-p <port>] [-s server]
[-cf config-file] [-lf lease-file][-pf pid-file] [-e
VAR=val] [-sf script-file] [interface]

Effectivement sans le -e ça passe. Et en remplaçant e par v c'est
encore mieux. dhclient ne bronche pas, bien que "-pf" ne ressemble pas
du tout à VAR=VAL et prend logiquement l'argument suivant pour
<interface> et plante. Les versions antérieures de isc-dhclient
regimbaient un peu plus (Cf bug #242537)


Dans la version 0.6.5 de ifupdown ifup et ifdown sont aparamment un même
programme. Ce n'est pas le cas avec la version 0.7alpha. La
version 0.6.5 communique bien avec isc-dhclient-4.1.1-P1

Les appels dans la version 0.6.5 sont fait ainsi :
dhclient -v -pf /var/run/dhclient.%iface%.pid
-lf /var/lib/dhcp/dhclient.%iface%.leases %iface%

avec l'appel (obsolète) à dhclient3 qui est fait aussi dans la version
0.7

En parcourant le bug #242537 (de 2004 (!)) il semblerait que ce n'est
pas une typo, mais un parti pris - bref ifup ne donctionne pas avec
isc-dhclient-4.1.1-P1 pas plus qu'il ne fonctionnait avec
isc-dhclient-3.0.0_beta

Typo ou pas typo ce "-e" tout seul ne me semble pas catholique.


Excusez moi je suis assez cancre, voici un diff unifié bref je ne fais
qu'à moitié le boulot. Pour une fois que j'ai un patch pour un bug que
je trouve :) par la même occasion mon patch vire les appels à dhclient3
vu que les versiosn testing et unstable de dhcp3-client ne fournissent
plus /sbin/dhclient3, et l'appel à ce script est obsolète). Je publie
ceci pour avis et conseil sur la liste/le forum
linux.debian.devel.french avant de remplir le bug sur le bts...

diff -u -w inet.defn.orig inet.defn
--- inet.defn.orig 2010-08-22 22:16:56.000000000 +0200
+++ inet.defn 2010-08-22 22:18:35.000000000 +0200
@@ -71,10 +71,8 @@

up
[[ip link set dev %iface% address %hwaddress%]]
- dhclient3 -pf /var/run/dhclient.%iface%.pid
-lf /var/lib/dhcp3/dhclient.%iface%.leases %iface%
- if (execable("/sbin/dhclient3"))
- dhclient -e -pf /var/run/dhclient.%iface%.pid
-lf /var/lib/dhcp/dhclient.%iface%.leases %iface%
- elsif (execable("/sbin/dhclient"))
+ dhclient -v -pf /var/run/dhclient.%iface%.pid
-lf /var/lib/dhcp/dhclient.%iface%.leases %iface%
+ if (execable("/sbin/dhclient"))
pump -i %iface% [[-h %hostname%]] [[-l %leasehours%]]
elsif (execable("/sbin/pump") && mylinuxver() > mylinux(2,1,100))
udhcpc -n -p /var/run/udhcpc.%iface%.pid -i %iface% [[-H
%hostname%]]
@@ -85,10 +83,8 @@
elsif (execable("/sbin/dhcpcd"))

down
- dhclient3 -r -pf /var/run/dhclient.%iface%.pid
-lf /var/lib/dhcp3/dhclient.%iface%.leases %iface%
- if (execable("/sbin/dhclient3"))
cat /var/run/dhclient.%iface%.pid | xargs -i kill -TERM {}
- elsif (execable("/sbin/dhclient"))
+ if (execable("/sbin/dhclient"))
pump -i %iface% -r
elsif (execable("/sbin/pump") && mylinuxver() > mylinux(2,1,100))
cat /var/run/udhcpc.%iface%.pid | xargs -i kill -TERM {}

--
J'ai souvent remarqué, pour ma part, que les cocus épousent de
préférence les femmes adultères.
-+- Alphonse Allais -+-

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Jean-Jacques Doti
Le #22495671
Apparemment il s'agit du bug 544371
(http://bugs.debian.org/cgi-bin/bugreport.cgi?bugT4371) qui a été
corrigé dan la branche 0.6.5 de ifupdown mais pas dans la version
expérimental. Ça fait partie des risque lorsque l'on installe une
version alpha ;-)


Le 22/08/2010 22:58, Yves Lambert a écrit :
On Sun, 22 Aug 2010 18:00:02 +0200
Pascal Hambourg

Je ne sais pas dans sid, mais dans lenny les clients DHCP sont appelés
directement depuis l'exécutable ifup.

$ strings /sbin/ifup | grep dhclient


Oui, c'est bien ça aussi. ça me semble un a priori un peu moisi, mais
bon....


Et l'appel se fait apparemment ainsi :

dhclient -e -pf /var/run/dhclient.%iface%.pid
-lf /var/lib/dhcp/dhclient.%iface%.leases %iface%

Bon j'avance :
Dans la version 0.6.5 de ifupdown ifup et ifdown sont un même
programme. Ce n'est pas le cas avec la version 0.7alpha. La
version 0.6.5 communique correctement avec isc-dhclient-4.1.1-P1

Les appels dans la version 0.6.5 sont fait ainsi :
dhclient -v -pf /var/run/dhclient.%iface%.pid
-lf /var/lib/dhcp/dhclient.%iface%.leases %iface%

Si je lance :

# dhclient -e -pf /var/run/dhclient.eth0.pid
-lf /var/lib/dhcp/dhclient.eth0.leases eth0

Je reproduis l'erreur :

/var/run/dhclient.eth0.pid:
interface name too long (is 26)

Ce "-e" tout seul ne me dit rien qui vaille :

Usage: dhclient [-4|-6] [-SNTP1dvrx] [-nw] [-p<port>] [-s server]
[-cf config-file] [-lf lease-file][-pf pid-file] [-e
VAR=val] [-sf script-file] [interface]

Effectivement sans le -e ça passe. Et en remplaçant e par v c'est
encore mieux. dhclient ne bronche pas, bien que "-pf" ne ressemble pas
du tout à VAR=VAL et prend logiquement l'argument suivant pour
<interface> et plante. Les versions antérieures de isc-dhclient
regimbaient un peu plus (Cf bug #242537)


Dans la version 0.6.5 de ifupdown ifup et ifdown sont aparamment un même
programme. Ce n'est pas le cas avec la version 0.7alpha. La
version 0.6.5 communique bien avec isc-dhclient-4.1.1-P1

Les appels dans la version 0.6.5 sont fait ainsi :
dhclient -v -pf /var/run/dhclient.%iface%.pid
-lf /var/lib/dhcp/dhclient.%iface%.leases %iface%

avec l'appel (obsolète) à dhclient3 qui est fait aussi dans la version
0.7

En parcourant le bug #242537 (de 2004 (!)) il semblerait que ce n'est
pas une typo, mais un parti pris - bref ifup ne donctionne pas avec
isc-dhclient-4.1.1-P1 pas plus qu'il ne fonctionnait avec
isc-dhclient-3.0.0_beta

Typo ou pas typo ce "-e" tout seul ne me semble pas catholique.


Excusez moi je suis assez cancre, voici un diff unifié bref je ne fais
qu'à moitié le boulot. Pour une fois que j'ai un patch pour un bug que
je trouve :) par la même occasion mon patch vire les appels à dhclient3
vu que les versiosn testing et unstable de dhcp3-client ne fournissent
plus /sbin/dhclient3, et l'appel à ce script est obsolète). Je publie
ceci pour avis et conseil sur la liste/le forum
linux.debian.devel.french avant de remplir le bug sur le bts...

diff -u -w inet.defn.orig inet.defn
--- inet.defn.orig 2010-08-22 22:16:56.000000000 +0200
+++ inet.defn 2010-08-22 22:18:35.000000000 +0200
@@ -71,10 +71,8 @@

up
[[ip link set dev %iface% address %hwaddress%]]
- dhclient3 -pf /var/run/dhclient.%iface%.pid
-lf /var/lib/dhcp3/dhclient.%iface%.leases %iface%
- if (execable("/sbin/dhclient3"))
- dhclient -e -pf /var/run/dhclient.%iface%.pid
-lf /var/lib/dhcp/dhclient.%iface%.leases %iface%
- elsif (execable("/sbin/dhclient"))
+ dhclient -v -pf /var/run/dhclient.%iface%.pid
-lf /var/lib/dhcp/dhclient.%iface%.leases %iface%
+ if (execable("/sbin/dhclient"))
pump -i %iface% [[-h %hostname%]] [[-l %leasehours%]]
elsif (execable("/sbin/pump")&& mylinuxver()> > mylinux(2,1,100))
udhcpc -n -p /var/run/udhcpc.%iface%.pid -i %iface% [[-H
%hostname%]]
@@ -85,10 +83,8 @@
elsif (execable("/sbin/dhcpcd"))

down
- dhclient3 -r -pf /var/run/dhclient.%iface%.pid
-lf /var/lib/dhcp3/dhclient.%iface%.leases %iface%
- if (execable("/sbin/dhclient3"))
cat /var/run/dhclient.%iface%.pid | xargs -i kill -TERM {}
- elsif (execable("/sbin/dhclient"))
+ if (execable("/sbin/dhclient"))
pump -i %iface% -r
elsif (execable("/sbin/pump")&& mylinuxver()> > mylinux(2,1,100))
cat /var/run/udhcpc.%iface%.pid | xargs -i kill -TERM {}




--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Yves Lambert
Le #22495761
On Mon, 23 Aug 2010 00:40:03 +0200
Jean-Jacques Doti
Apparemment il s'agit du bug 544371 (http://bugs.debian.org/cgi-bin/bugreport.cgi?bugT4371)



querybts 544371, non ?

qui a été corrigé dan la branche 0.6.5 de ifupdown



En effet, merci. Je n'aurais pas trouvé un bug fermé o_O

mais pas dans la
version expérimental.



heu experimental /ou/ expérimentalE :)

Ça fait partie des risque lorsque l'on installe
une version alpha ;-)



ça permet de trouver des bugs et d'éviter qu'ils se propagent trop
bas (-> unstable -> testing -> volatile -> stable)

C'est le problème avec debian/experimental : il peut y avoir des trucs
tout à fait stable mais impossible à installer sans faire de
gymnastique (exemple perl 5.12 : y a-t-il un howto quelque part ? je
sais qu'il faut l'installer dans un fakeroot, et qu'il doit
y avoir pas mal de packages à recompiler. Ensuite je suppose qu'on fait
comme un upgrade de bsd, on remplace / par le fakeroot une fois que
tout semble ok :) ce qui me manque c'est le point de départ, en fait...
(et aussi qu'il n'y a pas dans les dépôts des versions compatibles de
packages essentiels :@ mais c'est un autre problème : si personne ne
teste perl 5.12, l'upgrade ne se fera jamais)



--
Je n'ai pas souvent assisté à des course de spermatozoïdes, mais j'ai
donné beaucoup de départs.
-+- Olivier de Kersauson -+-

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Publicité
Poster une réponse
Anonyme