Dnia 16 września 2008 11:21 Tomasz Pala <[EMAIL PROTECTED]> napisał(a):

> On Tue, Sep 16, 2008 at 11:29:08 +0200, Paweł Zuzelski wrote:
> 
> > cat /proc/partitions | awk /$device_short'$'/
> 
> A zamiast tego wystarczy:
> 
> awk /$device_short'$'/ /proc/partitions
> 
> > zamiast: basename $device /dev/ wystarczy samo basename $device
> 

Dzieki - sparawdzilem i faktycznie tak jest.
Zalaczam patch z uwzglednionymi waszymi sugestiami.

Oczywiscie z lvm itp. nie bedzie problemu

Mysle tez o tym sytuacji gdy mount sie nie uda ... jakby to obsluzyc i czy jest 
sens?

--- /sbin/geninitrd	2008-08-06 11:16:10.000000000 +0000
+++ ./geninitrd	2008-09-16 11:54:33.000000000 +0000
@@ -2125,6 +2125,31 @@
 			device=$rootdev
 		fi
 
+		# 30 * 0.5 sec delay for root part apear
+		echo "Waiting for root device apear "
+		timetowait=30
+		device_short=`basename $device`
+		while [ "$timetowait" != "0" ];
+		do
+			timetowait=$((timetowait - 1))
+			wehaveroot=`awk /$device_short'$'/ /proc/partitions`
+
+			if [ -z "$wehaveroot" ]; then
+				echo -n "."
+				usleep 500000
+			else
+				timetowait=0
+				echo "Found root device"
+			fi
+		done
+
+		if [ -z "$wehaveroot" ]; then
+			echo "NOT found root device"
+			busybox awk 'NR > 2 {print "/dev/"$4}' /proc/partitions
+			echo -n "Can't find root=$device please choose one from listed above :"
+			read device
+		fi
+
 		mount -t $rootfs -r $device /newroot
 		init="$(echo "$CMDLINE" | busybox awk '/init=\// { gsub(/.*init=/,NIL,$0); gsub(/ .*/,NIL,$0); print }')"
 		if [ -z "$init" -o ! -x "/newroot$init" ]; then
_______________________________________________
pld-devel-pl mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-devel-pl

Odpowiedź listem elektroniczym