Difference between revisions of "Netplug"

From CBLFS
Jump to navigationJump to search
Line 163: Line 163:
 
  ln -sf /etc/sysconfig/network-devices/ifup /sbin/ifup
 
  ln -sf /etc/sysconfig/network-devices/ifup /sbin/ifup
 
  ln -sf /etc/sysconfig/network-devices/ifdown /sbin/ifdown
 
  ln -sf /etc/sysconfig/network-devices/ifdown /sbin/ifdown
 +
 +
And finally modify ifconfig.etho/dhcpcd changing ONBOOT=yes to ONBOOT=no, using your favorite editor, or use the following sed script:
 +
 +
sed -i -e '/ONBOOT/s/yes/no/' /etc/sysconfig/network-devices/ifconfig.eth0/dhcpcd
  
 
= Contents =
 
= Contents =

Revision as of 09:35, 26 December 2006

Download Source:
http://www.red-bean.com/~bos/netplug/netplug-1.2.9.tar.bz2
Download Patches (Currently in repo, will add links later):
netplug-1.2.9-gcc4-1.patch
netplug-1.2.9-ignore-wireless-1.patch
netplug-1.2.9-remove-nest-1.patch

Introduction to Netplug

Netplug is a Linux daemon that brings up/down network interfaces in response to network cables being plugged in and out. This application is mostly useful for a laptop or computer (used for lan parties?) that is often relocated to different LANs.

The netplugd script shared below does not yet replace the clfs-bootscripts network script, but works with it. A later version of these instructions may include a netplugd script which DOES replace the clfs-bootscripts network script.


Dependencies

Required

Configuration Information

This package does not use a configure script. Any additional configuration must be made within the Makefile.

Non-Multilib

Much of this, including the patches were ripped from the Gentoo ebuild. These instructions did successfully install the application onto a pentium-m based x86 laptop.

Modify the Makefile:

remove=" -ggdb3 "
[[ " ${CFLAGS} " == *" -O"[0-9]" "* ]] && remove="${remove}-O3 "
sed -i -e "s/${remove}/ /" Makefile
sed -i '/bk_root/,$d' Makefile

Apply patches:

patch -Np0 -i ../netplug-1.2.9-gcc4-1.patch
patch -Np1 -i ../netplug-1.2.9-remove-nest-1.patch
patch -Np1 -i ../netplug-1.2.9-ignore-wireless-1.patch

Compile and install the package:

make
make install

Multilib

AFAICT this package does not provide any libraries so only one installation is needed.

32Bit

Must be tested and any instructions should be included by others

N32

Must be tested and any instructions should be included by others

64Bit

Must be tested and any instructions should be included by others

Configuring

Create the netplugd script:

cat > /etc/rc.d/init.d/netplugd << "EOF
#!/bin/sh
########################################################################
# Begin $rc_base/init.d/netplugd
#
# Description : Netplugd-1.2.9
#
# Authors     : Harvey Muller
#
# Version     : 00.01
#
# Notes       : Very berry beta
#
########################################################################

. /etc/sysconfig/rc
. ${rc_functions}

[ -x /sbin/netplugd ] || exit 0

if [ -f /etc/sysconfig/netplugd ]; then
    . /etc/sysconfig/netplugd
fi

case "${1}" in
	start)
		boot_mesg "Starting network plug daemon..."
		loadproc /sbin/netplugd ${NETPLUGDARGS} -p /var/run/netplugd.pid
                RETVAL=$?
                echo
                [ $RETVAL -eq 0 ] && touch /var/lock/subsys/netplugd
		;;
 
	stop)
		boot_mesg "Stopping network plug daemon..."
		killproc netplugd
                RETVAL=$?
                echo
                [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/netplugd
		;;

	restart|reload)
		${0} stop
		${0} start
		;;

	status)
		statusproc netplugd
                RETVAL=$?
		;;

        condrestart)
                [ -f /var/lock/subsys/netplugd ] && restart || :
                ;;

	*)
		echo "Usage: ${0} {start|stop|reload|restart|status|condrestart}"
		exit 1
		;;
esac

exit $RETVAL

# End $rc_base/init.d/netplugd
EOF

Create symlinks to netplugd script:

ln -sf /etc/rc.d/init.d/netplugd /etc/rc.d/rc0.d/K80netplugd
ln -sf /etc/rc.d/init.d/netplugd /etc/rc.d/rc1.d/K80netplugd
ln -sf /etc/rc.d/init.d/netplugd /etc/rc.d/rc2.d/S21netplugd
ln -sf /etc/rc.d/init.d/netplugd /etc/rc.d/rc3.d/S21netplugd
ln -sf /etc/rc.d/init.d/netplugd /etc/rc.d/rc4.d/S21netplugd
ln -sf /etc/rc.d/init.d/netplugd /etc/rc.d/rc5.d/S21netplugd
ln -sf /etc/rc.d/init.d/netplugd /etc/rc.d/rc6.d/K80netplugd

If you have configured your wired interface through udev (or other means) to be named eth0, and you only have one wired interface, then we may as well configure netplug to use it only:

sed -i 's/eth\*/eth0/' /etc/netplug/netplugd.conf

Netplug requires the /var/lock/subsys directory be present:

[ -d /var/lock/subsys ] || install -d -m755 /var/lock/subsys

Make links in /sbin for ifup and ifdown:

ln -sf /etc/sysconfig/network-devices/ifup /sbin/ifup
ln -sf /etc/sysconfig/network-devices/ifdown /sbin/ifdown

And finally modify ifconfig.etho/dhcpcd changing ONBOOT=yes to ONBOOT=no, using your favorite editor, or use the following sed script:

sed -i -e '/ONBOOT/s/yes/no/' /etc/sysconfig/network-devices/ifconfig.eth0/dhcpcd

Contents

Installed Programs: /sbin/netplugd

Installed Libraries: none

Installed Directories: /etc/netplug, /etc/netplug.d, /var/lock/subsys

Installed Scripts: /etc/netplug.d/netplug, /etc/rc.d/init.d/netplugd

Installed Documentation: /usr/share/man/man8/netplugd.8

Short Descriptions

netplugd: a daemon which automatically brings your network interface up/down based on cable insertion/removal.

Retrieved from "?title=Netplug&oldid=6340"