lfs/chapter07/ethnet.xml
Gerard Beekmans 09c2137984 Fixed accidental removal of a >
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@212 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
2001-02-23 19:04:46 +00:00

189 lines
4.2 KiB
XML

<sect1 id="ch09-ethnet">
<title>Creating the /etc/init.d/ethnet script</title>
<para>
This section only applies if you are going to configure a network card.
If you're not, skip this section.
</para>
<para>
Create a new file <filename>/etc/init.d/ethnet</filename> containing the
following:
</para>
<literallayout>
<userinput>cat &gt; /etc/init.d/ethnet &lt;&lt; "EOF"</userinput>
#!/bin/sh
# Begin /etc/init.d/ethnet
#
# Main script by Gerard Beekmans - gerard@linuxfromscratch.org
# GATEWAY check by Jean-François Le Ray - jfleray@club-internet.fr
#
#
# Include the functions declared in the /etc/init.d/functions file
# and the variables from the /etc/sysconfig/network file.
#
source /etc/init.d/functions
source /etc/sysconfig/network
case "$1" in
start)
#
# Obtain all the network card configuration files
#
for interface in $(ls /etc/sysconfig/network-scripts/ifcfg* | \
grep -v ifcfg-lo)
do
#
# Load the variables from that file
#
source $interface
#
# If the ONBOOT variable is set to yes, process this file and bring the
# interface down.
#
if [ "$ONBOOT" == yes ]
then
echo -n "Bringing up the $DEVICE interface..."
/sbin/ifconfig $DEVICE $IP broadcast $BROADCAST \
netmask $NETMASK
evaluate_retval
fi
done
#
# If the /etc/sysconfig/network file contains a GATEWAY variable, set
# the gateway.
#
if [ "$GATEWAY" != "" ]; then
echo -n "Setting up routing for eth0 interface..."
/sbin/route add default gw $GATEWAY metric 1
evaluate_retval
fi
;;
stop)
#
# Obtain all the network card configuration files
#
for interface in $(ls /etc/sysconfig/network-scripts/ifcfg* | \
grep -v ifcfg-lo)
do
#
# Load the variables from that file
#
source $interface
#
# If the ONBOOT variable is set, process the file and bring the
# interface down
#
if [ $ONBOOT == yes ]
then
echo -n "Bringing down the $DEVICE interface..."
/sbin/ifconfig $DEVICE down
evaluate_retval
fi
done
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
;;
esac
# End /etc/init.d/ethnet
<userinput>EOF</userinput>
</literallayout>
<sect2>
<title>Adding default gateway to /etc/sysconfig/network</title>
<para>
If you require a default gateway to be setup, run the following command:
</para>
<literallayout>
<userinput>cat &gt;&gt; /etc/sysconfig/network &lt;&lt; "EOF"</userinput>
GATEWAY=192.168.1.2
<userinput>EOF</userinput>
</literallayout>
<para>
Change GATEWAY to match your network setup.
</para>
</sect2>
<sect2>
<title>Creating NIC configuration files</title>
<para>
Which interfaces are brought up and down by the ethnet script depends on
the files in the /etc/sysconfig/network-scripts directory. This
directory should contain files in the form of ifcfg-x where x is an
identification number (or whatever you choose to name it).
</para>
<para>
First create the network-scripts directory by running:
</para>
<blockquote><literallayout>
<userinput>mkdir /etc/sysconfig/network-scripts</userinput>
</literallayout></blockquote>
<para>
Now, create new files in that directory containing the following.
Example file names are ifcfg-eth0, ifcfg-eth0:3 and ifcfg-eth1:2
</para>
<blockquote><literallayout>
ONBOOT=yes
DEVICE=eth0
IP=192.168.1.1
NETMASK=255.255.255.0
BROADCAST=192.168.1.255
</literallayout></blockquote>
<para>
Of course, change the values of those four variables in every file to
match the proper setup. Usually NETMASK and BROADCAST will remain the
same, just the DEVICE IP variables will change per network interface. If
the ONBOOT variable is set to yes, the ethnet script will bring it up
during boot up of the system. If set to anything else but yes it will be
ignored by the ethnet script and thus not brought up.
</para>
</sect2>
&c9-ethnet-symperm;
</sect1>