kadischi/linuxrc livecd-linuxrc,1.4,1.5

Jasper O'neal Hartline (autopsy) fedora-extras-commits at redhat.com
Tue Aug 29 03:04:14 UTC 2006


Author: autopsy

Update of /cvs/devel/kadischi/linuxrc
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv14095/kadischi/linuxrc

Modified Files:
	livecd-linuxrc 
Log Message:
Implement hybrid initramfs with nash/busybox rather than Ext2 initrd


Index: livecd-linuxrc
===================================================================
RCS file: /cvs/devel/kadischi/linuxrc/livecd-linuxrc,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- livecd-linuxrc	11 Apr 2006 08:26:16 -0000	1.4
+++ livecd-linuxrc	29 Aug 2006 03:04:12 -0000	1.5
@@ -1,53 +1,93 @@
-#!/bin/ash
+#!/bin/nash
 
-#set -x
-if [ "${INITRD_DBG}" = "x" ]; then set -x; fi
-
-echo Mounted proc filesystem
 mount -t proc /proc /proc
 
+echo Mounting proc filesystem
 echo Mounting sysfs filesystem
-mount -t sysfs none /sys
-mount -t tmpfs none /tmp
-
-cd /
-
-find-live-cd /cdrom
+mount -t sysfs /sys /sys
+echo Creating /dev
+mount -o mode=0755 -t tmpfs /dev /dev
+mkdir /dev/pts
+mount -t devpts -o gid=5,mode=620 /dev/pts /dev/pts
+mkdir /dev/shm
+#mkdir /dev/mapper
+echo Creating initial device nodes
+mknod /dev/null c 1 3
+mknod /dev/zero c 1 5
+mknod /dev/systty c 4 0
+mknod /dev/tty c 5 0
+mknod /dev/console c 5 1
+mknod /dev/ptmx c 5 2
+mknod /dev/rtc c 10 135
+mknod /dev/tty0 c 4 0
+mknod /dev/tty1 c 4 1
+mknod /dev/tty2 c 4 2
+mknod /dev/tty3 c 4 3
+mknod /dev/tty4 c 4 4
+mknod /dev/tty5 c 4 5
+mknod /dev/tty6 c 4 6
+mknod /dev/tty7 c 4 7
+mknod /dev/tty8 c 4 8
+mknod /dev/tty9 c 4 9
+mknod /dev/tty10 c 4 10
+mknod /dev/tty11 c 4 11
+mknod /dev/tty12 c 4 12
+mknod /dev/ttyS0 c 4 64
+mknod /dev/ttyS1 c 4 65
+mknod /dev/ttyS2 c 4 66
+mknod /dev/ttyS3 c 4 67
+mknod /dev/loop0 b 7 0
+mknod /dev/loop1 b 7 1
+mknod /dev/loop2 b 7 2
+mknod /dev/loop3 b 7 3
+mknod /dev/loop4 b 7 4
+mknod /dev/loop5 b 7 5
+mknod /dev/loop6 b 7 6
+mknod /dev/loop7 b 7 7
+#mknod /dev/root b 7 1
+echo Setting up hotplug.
+hotplug
+echo Creating block device nodes.
+mkblkdevs
+echo "Loading jbd.ko module"
+modprobe jbd
+echo "Loading ext3.ko module"
+modprobe ext3
+echo "Loading dm-mod.ko module"
+modprobe dm-mod
+echo "Loading dm-mirror.ko module"
+modprobe dm-mirror
+echo "Loading dm-zero.ko module"
+modprobe dm-zero
+echo "Loading dm-snapshot.ko module"
+modprobe dm-snapshot
+echo Making device-mapper control node
+mkdmnod
+mkblkdevs
+echo Scanning logical volumes
+lvm vgscan --ignorelockingfailure
+echo Activating logical volumes
+lvm vgchange -ay --ignorelockingfailure  VolGroup00
 
-# Make kernel don't mount root fs
-echo 0x100 > /proc/sys/kernel/real-root-dev
 
-echo "Mounting root filesystem"
+# Modprobe and find-live-cd
 modprobe loop
 modprobe squashfs
-mount -t squashfs -oloop,ro /cdrom/kadischi.sqsh /sysroot
-
-echo "Doing the pivot_root"
-cd /sysroot
-pivot_root /sysroot /sysroot/initrd
-cd /
-
-umount /initrd/proc
-umount /initrd/sys
+find-live-cd /cdrom
 
-#
-# FIXME: make this work with udev
-#
 
-# Mount a (writeable) ramfs at dev and populate it with nodes:
-mount -n -t ramfs initrd_dev /dev
+# Make kernel don't mount root fs
+echo 0x100 > /proc/sys/kernel/real-root-dev
 
-cd /dev
-for node in mem kmem null port zero core full ram ptmx tty pty shm cpu input agpgart dri cdrom console; do
-    /initrd/sbin/MAKEDEV $node
-done
 
-# Mount pseudo-terminal fs at /dev/pts:
-mkdir /dev/pts
-mount -n -t devpts initrd_devpts /dev/pts
+echo "Mounting root filesystem"
+/bin/busybox mount -t squashfs -oloop,ro /cdrom/kadischi.sqsh /sysroot
+echo Creating root device.
+#echo "Doing the pivot_root"
+# mount /sysroot
+#pivot_root /sysroot /sysroot/initrd
+setuproot
 
-# readonly
 echo "Setting up readonly-root"
-/etc/rc.readonly linuxrc
-
-# rc.readonly will umount both /initrd/tmp and /initrd
+/bin/busybox chroot /sysroot /etc/rc.readonly linuxrc
+switchroot




More information about the scm-commits mailing list