On 3/19/06, Eric Evans <[EMAIL PROTECTED]> wrote:
<pruned>

> > + CFG=/etc/default/ifplugd
> > + IFPLUGD=/usr/sbin/ifplugd
> > + test -x /usr/sbin/ifplugd
> > ++ id -u
> > + '[' 0 '!=' 0 ']'
> > + '[' -f /etc/default/ifplugd ']'
> > + . /etc/default/ifplugd
> > ++ INTERFACES=
> > ++ HOTPLUG_INTERFACES=all
> > ++ ARGS='-q -f -u0 -d10 -w -I'
> > ++ SUSPEND_ACTION=stop
> > + VERB=usb0
> > + shift
> > + '[' 0 -ne 0 ']'
> > + '[' x = xauto -o x = xall ']'
> > + case "$VERB" in
> > + echo 'Usage: /etc/init.d/ifplugd
> > {start|stop|restart|force-reload|status|suspend|resume}'
> > Usage: /etc/init.d/ifplugd
> > {start|stop|restart|force-reload|status|suspend|resume}
> > + exit 1
>
> This looks suspiciously like the first argument to the init script was
> "usb0". If your interface is usb0, make sure you are using:
>
>   sh -x /etc/init.d/ifplugd start usb0

Whoops. Tried. Works. Whoops.

> > > Now, if "/etc/init.d/ifplugd start <interface>" *does* work, then run ...
> > >
> > >  ACTION=add INTERFACE=<interface> sh -x /etc/hotplug.d/net/ifplugd.hotplug
> > >
> > > ... which again will produce lots of output which you should paste/attach
> > > in reply to this mail.
> >
> > Skipped this part, for reasons outlined above.
>
> Let's go ahead and try it. If your interface is usb0, make sure ifplugd
> is not running and invoke:
>
>   ACTION=add INTERFACE=usb0 sh -x /etc/hotplug.d/net/ifplugd.hotplug

Tried.

Output:
+ DAEMON_NAME=ifplugd
+ DAEMON=/usr/sbin/ifplugd
+ CFG=/etc/default/ifplugd
+ '[' -x /usr/sbin/ifplugd ']'
+ HOTPLUGFUNCS=/lib/udev/hotplug.functions
+ '[' -f /lib/udev/hotplug.functions ']'
+ . /lib/udev/hotplug.functions
++ FIRMWARE_DIRS='/lib/firmware /usr/local/lib/firmware
/usr/lib/hotplug/firmware'
++ EVENTS_DIR=/dev/.events
++ MODPROBE='/sbin/modprobe -s -q'
++ PATH=/sbin:/bin:/usr/sbin:/usr/bin
++ '[' -e /etc/default/hotplug ']'
++ '[' -x /usr/bin/logger ']'
++ LOGGER=/usr/bin/logger
++ '[' -t 1 -a -z /usr/bin/logger ']'
++ '[' '!' -e /dev/log ']'
++ '[' -t 1 ']'
+ DEBUG=yes
+ export DEBUG
+ '[' usb0 ']'
+ '[' -f /etc/default/ifplugd ']'
+ . /etc/default/ifplugd
++ INTERFACES=
++ HOTPLUG_INTERFACES=all
++ ARGS='-q -f -u0 -d10 -w -I'
++ SUSPEND_ACTION=stop
+ '[' -x /sbin/ifrename -a -r /etc/iftab ']'
+ case $ACTION in
+ for IF in '$HOTPLUG_INTERFACES'
+ '[' usb0 = all -o all = all ']'
+ debug_mesg Invoking ifplugd for usb0
+ '[' -z yes -o yes = no ']'
+ mesg Invoking ifplugd for usb0
+ echo Invoking ifplugd for usb0
Invoking ifplugd for usb0
+ /usr/bin/logger -t 'ifplugd.hotplug[22172]' Invoking ifplugd for usb0
+ /etc/init.d/ifplugd start usb0
Starting Network Interface Plugging Daemon: usb0.
+ break

ifplugd will now run, and will now automatically bring up usb0.
However, after closing the interface it will not re-start it.

The relevant part of ifconfig will then look like this:

usb0      Link encap:Ethernet  HWaddr EE:C7:72:82:CE:8F
          UP BROADCAST RUNNING MULTICAST  MTU:1494  Metric:1
          RX packets:1 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:68 (68.0 b)  TX bytes:0 (0.0 b)

instead of like this:

usb0      Link encap:Ethernet  HWaddr EE:C7:72:82:CE:8F
          inet addr:192.168.129.1  Bcast:192.168.129.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1494  Metric:1
          RX packets:2 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:128 (128.0 b)  TX bytes:0 (0.0 b)

As you can see, the IP addresses specified in /etc/network/interfaces
have not been correctly re-assigned.

Ciao,
J

Reply via email to