[SCM] live-boot branch, debian-next, updated. debian/3.0_a29-1-2-g2c55445

Daniel Baumann daniel at debian.org
Tue Jun 5 14:34:25 UTC 2012


The following commit has been merged in the debian-next branch:
commit 2c55445da34354eb4afaa7e087efb33b5e97d9d7
Author: Daniel Baumann <daniel at debian.org>
Date:   Tue Jun 5 16:34:14 2012 +0200

    Converting select_eth_device initramfs-tools pre-mount script into regular live-boot script.

diff --git a/initramfs-tools/scripts/live-premount/select_eth_device b/initramfs-tools/scripts/live-premount/select_eth_device
deleted file mode 100755
index fe86313..0000000
--- a/initramfs-tools/scripts/live-premount/select_eth_device
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/sh
-
-# Original script by Andreas Teuchert <ant+dl at hsg-kl.de>
-# Modified by Frédéric Boiteux <fboiteux at calistel.com>
-
-PREREQ="blacklist udev"
-
-prereqs()
-{
-	echo "$PREREQ"
-}
-
-case $1 in
-# get pre-requisites
-prereqs)
-	prereqs
-	exit 0
-	;;
-esac
-
-# Boot type in initramfs's config
-bootconf=$(egrep '^BOOT=' /conf/initramfs.conf | tail -1)
-
-# can be superseded by command line (used by Debian-Live's netboot for example)
-for ARGUMENT in $(cat /proc/cmdline); do
-	case "${ARGUMENT}" in
-		netboot=*)
-			NETBOOT="${ARGUMENT#netboot=}"
-			;;
-	esac
-done
-
-if [ "$bootconf" != "BOOT=nfs" ] &&
-   [ "$NETBOOT" = "" ] &&
-   [ "$FETCH" = "" ] &&
-   [ "$FTPFS" = "" ] &&
-   [ "$HTTPFS" = "" ]
-then
-    # Not a net boot : nothing to do
-    exit 0
-fi
-
-# we want to do some basic IP
-modprobe -q af_packet
-
-# Available Ethernet interfaces ?
-l_interfaces=""
-echo "Waiting for ethernet card(s) up... If this fails, maybe the ethernet card is not supported by the kernel `uname -r`?"
-while [ -z "$l_interfaces" ]; do
-  l_interfaces="$(cd /sys/class/net/ && ls -d eth* 2>/dev/null)"
-done
-
-if [ $(echo $l_interfaces | wc -w) -lt 2 ]; then
-	# only one interface : no choice
-	echo "DEVICE=$l_interfaces" >> /conf/param.conf
-	exit 0
-fi
-
-# If user force to use specific device, write it
-for ARGUMENT in $(cat /proc/cmdline); do
-    case "${ARGUMENT}" in
-        live-netdev=*)
-        NETDEV="${ARGUMENT#live-netdev=}"
-        echo "DEVICE=$NETDEV" >> /conf/param.conf
-	echo "Found live-netdev parameter in /proc/cmdline. Force to use network device $NETDEV."
-        exit 0
-        ;;
-    esac
-done
-
-found_eth_dev=""
-while true; do
-	echo -n "Looking for a connected Ethernet interface ..."
-
-	for interface in $l_interfaces; do
-		# ATTR{carrier} is not set if this is not done
-		echo -n " $interface ?"
-		ipconfig -c none -d $interface -t 1 >/dev/null 2>&1
-	done
-
-	echo ''
-
-	for step in 1 2 3 4 5; do
-		for interface in $l_interfaces; do
-			carrier=$(cat /sys/class/net/$interface/carrier \
-				2>/dev/null)
-			# link detected
-			if [ "$carrier" = 1 ]; then
-				echo "Connected $interface found"
-				# inform initrd's init script :
-				found_eth_dev="$found_eth_dev $interface"
-			fi
-		done
-		if [ -n "$found_eth_dev" ]; then
-			echo "DEVICE='$found_eth_dev'" >> /conf/param.conf
-			exit 0
-		else
-			# wait a bit
-			sleep 1
-		fi
-	done
-done
diff --git a/scripts/boot.sh b/scripts/boot.sh
index eeaa4dc..3211ed0 100755
--- a/scripts/boot.sh
+++ b/scripts/boot.sh
@@ -480,10 +480,7 @@ mountroot ()
 			;;
 	esac
 
-	maybe_break live-premount
-	log_begin_msg "Running /scripts/live-premount"
-	run_scripts /scripts/live-premount
-	log_end_msg
+	Select_eth_device
 
 	# Needed here too because some things (*cough* udev *cough*)
 	# changes the timeout
diff --git a/scripts/boot/select-eth-device.sh b/scripts/boot/select-eth-device.sh
new file mode 100755
index 0000000..924b8bc
--- /dev/null
+++ b/scripts/boot/select-eth-device.sh
@@ -0,0 +1,87 @@
+#!/bin/sh
+
+Select_eth_device ()
+{
+	# Boot type in initramfs's config
+	bootconf=$(egrep '^BOOT=' /conf/initramfs.conf | tail -1)
+
+	# can be superseded by command line (used by Debian-Live's netboot for example)
+	for ARGUMENT in $(cat /proc/cmdline); do
+		case "${ARGUMENT}" in
+			netboot=*)
+				NETBOOT="${ARGUMENT#netboot=}"
+				;;
+		esac
+	done
+
+	if [ "$bootconf" != "BOOT=nfs" ] &&
+	   [ "$NETBOOT" = "" ] &&
+	   [ "$FETCH" = "" ] &&
+	   [ "$FTPFS" = "" ] &&
+	   [ "$HTTPFS" = "" ]
+	then
+	    # Not a net boot : nothing to do
+	    return
+	fi
+
+	# we want to do some basic IP
+	modprobe -q af_packet
+
+	# Available Ethernet interfaces ?
+	l_interfaces=""
+	echo "Waiting for ethernet card(s) up... If this fails, maybe the ethernet card is not supported by the kernel `uname -r`?"
+	while [ -z "$l_interfaces" ]; do
+	  l_interfaces="$(cd /sys/class/net/ && ls -d eth* 2>/dev/null)"
+	done
+
+	if [ $(echo $l_interfaces | wc -w) -lt 2 ]; then
+		# only one interface : no choice
+		echo "DEVICE=$l_interfaces" >> /conf/param.conf
+		return
+	fi
+
+	# If user force to use specific device, write it
+	for ARGUMENT in $(cat /proc/cmdline); do
+	    case "${ARGUMENT}" in
+	        live-netdev=*)
+	        NETDEV="${ARGUMENT#live-netdev=}"
+	        echo "DEVICE=$NETDEV" >> /conf/param.conf
+		echo "Found live-netdev parameter in /proc/cmdline. Force to use network device $NETDEV."
+	        return
+	        ;;
+	    esac
+	done
+
+	found_eth_dev=""
+	while true; do
+		echo -n "Looking for a connected Ethernet interface ..."
+
+		for interface in $l_interfaces; do
+			# ATTR{carrier} is not set if this is not done
+			echo -n " $interface ?"
+			ipconfig -c none -d $interface -t 1 >/dev/null 2>&1
+		done
+
+		echo ''
+
+		for step in 1 2 3 4 5; do
+			for interface in $l_interfaces; do
+				carrier=$(cat /sys/class/net/$interface/carrier \
+					2>/dev/null)
+				# link detected
+				if [ "$carrier" = 1 ]; then
+					echo "Connected $interface found"
+					# inform initrd's init script :
+					found_eth_dev="$found_eth_dev $interface"
+				fi
+			done
+			if [ -n "$found_eth_dev" ]; then
+				echo "DEVICE='$found_eth_dev'" >> /conf/param.conf
+				return
+			else
+				# wait a bit
+				sleep 1
+			fi
+		done
+	done
+}

-- 
live-boot



More information about the debian-live-changes mailing list