Magellan Linux

Diff of /trunk/mkinitrd/lib/linuxrc.sh

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 344 by niro, Sun Feb 26 00:53:40 2006 UTC revision 605 by niro, Sat Nov 10 19:56:21 2007 UTC
# Line 1  Line 1 
1  #!/bin/sh  #!/bin/sh
2  # $Header: /home/cvsd/magellan-cvs/magellan-src/mkinitrd/lib/linuxrc.sh,v 1.4 2006-02-26 00:53:40 niro Exp $  # $Header: /home/cvsd/magellan-cvs/magellan-src/mkinitrd/lib/linuxrc.sh,v 1.9 2007-11-10 19:56:06 niro Exp $
3    
4  # loads given kernel modules  # loads given kernel modules
5  load_kernel_modules()  load_kernel_modules()
# Line 56  check_drives() Line 56  check_drives()
56  DOSCSI=no  DOSCSI=no
57  DOUSB=no  DOUSB=no
58  DOSATA=no  DOSATA=no
59    NOPATA=no
60    
61  ## starts here ##  ## starts here ##
62    
# Line 66  mount -t sysfs sysfs /sys Line 67  mount -t sysfs sysfs /sys
67  # silencio  # silencio
68  echo 0 > /proc/sys/kernel/printk  echo 0 > /proc/sys/kernel/printk
69    
 echo "-- Creating inital device nodes ..."  
 mount -o mode=0755 -t tmpfs udev /dev  
 mkdir /dev/pts  
 mkdir /dev/shm  
 mkdir /dev/mapper  
 mkdir /dev/misc  
 mkdir /dev/fb  
 mkdir /dev/vc  
 mknod /dev/console c 5 1  
 mknod /dev/null c 1 3  
 mknod /dev/ram b 1 1  
 mknod /dev/rtc c 10 135  
 mknod /dev/systty c 4 0  
 mknod /dev/tty c 5 0  
 mknod /dev/zero c 1 5  
 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  
   
 echo "-- Starting udevd ..."  
 /sbin/udevstart  
 ln -snf /proc/self/fd /dev/fd  
 ln -snf fd/0 /dev/stdin  
 ln -snf fd/1 /dev/stdout  
 ln -snf fd/2 /dev/stderr  
 ln -snf /proc/kcore /dev/core  
 touch /dev/.udev  
   
 echo "-- Setting up hotplug ..."  
 #echo "/sbin/hotplug" > /proc/sys/kernel/hotplug  
 echo "/sbin/udev" > /proc/sys/kernel/hotplug  
   
70  # check command line for params  # check command line for params
71  for i in $(cat /proc/cmdline)  for i in $(cat /proc/cmdline)
72  do  do
# Line 125  do Line 80  do
80   dosata)   dosata)
81   DOSATA=yes   DOSATA=yes
82   ;;   ;;
83     nopata)
84     NOPATA=yes
85     ;;
86   esac   esac
87  done  done
88    
89  # now load all needed modules  # now load all needed modules
90  load_kernel_modules "generic"  load_kernel_modules "generic"
91    [ "${NOPATA}" != "yes" ] && load_kernel_modules "pata"
92  [ "${DOSCSI}" = "yes" ] && load_kernel_modules "scsi"  [ "${DOSCSI}" = "yes" ] && load_kernel_modules "scsi"
93  [ "${DOUSB}" = "yes" ] && load_kernel_modules "usb"  [ "${DOUSB}" = "yes" ] && load_kernel_modules "usb"
94  [ "${DOSATA}" = "yes" ] && load_kernel_modules "sata"  [ "${DOSATA}" = "yes" ] && load_kernel_modules "sata"
# Line 146  mkdir -p /sysroot/mnt/magellan Line 105  mkdir -p /sysroot/mnt/magellan
105    
106  # needed for the usbstick, the timeout maybe to short  # needed for the usbstick, the timeout maybe to short
107  if [ "${DOUSB}" = "yes" ]; then  if [ "${DOUSB}" = "yes" ]; then
108   echo "-- Waiting 3 seconds for possible usb mount ..."   echo "-- Waiting 8 seconds for possible usb mount ..."
109   sleep 3   sleep 8
110  fi  fi
111    
112  # searching cdrom with cdid  # searching cdrom with cdid
# Line 158  echo "Searching for a boot device ..." Line 117  echo "Searching for a boot device ..."
117    
118  # searching usbstick  # searching usbstick
119  if [ "${DOUSB}" = "yes" ]; then  if [ "${DOUSB}" = "yes" ]; then
120   check_drives "/dev/scsi/host[0-99]/bus[0-99]/target[0-99]/lun[0-99]/part[0-99]" "vfat"   check_drives "/dev/sd*" "vfat"
121     check_drives "/dev/sg*" "vfat"
122  fi  fi
123    
124  # for cdrom_device in $CDROM_LIST (ide)  # for cdrom_device in $CDROM_LIST (ide)
# Line 168  check_drives "/dev/hd*" iso9660 Line 128  check_drives "/dev/hd*" iso9660
128  # scsi cdroms  # scsi cdroms
129  if [ "${DOSCSI}" = "yes" ] || [ "${DOSATA}" = "yes" ]; then  if [ "${DOSCSI}" = "yes" ] || [ "${DOSATA}" = "yes" ]; then
130   check_drives "/dev/sr*" iso9660   check_drives "/dev/sr*" iso9660
131     check_drives "/dev/sg*" iso9660
132     check_drives "/dev/scd*" iso9660
133  fi  fi
134    
135  # mount our rootfs from cdrom  # mount our rootfs from cdrom
# Line 193  else Line 155  else
155   # symlinking cloop rootfs to /mnt as newroot   # symlinking cloop rootfs to /mnt as newroot
156   cd /sysroot   cd /sysroot
157    
158   for x in bin sbin lib boot usr opt   for x in bin sbin lib lib64 boot usr opt
159   do   do
160   ln -s mnt/cloop/${x} ${x}   [ -d mnt/cloop/${x} ] && ln -s mnt/cloop/${x} ${x}
161   done   done
162   mkdir -p initrd proc tmp sys var/tmp dev   mkdir -p initrd proc tmp sys var/tmp dev media
163    
164   # make /sysroot/dev/console & /mnt/dev/null   # make /sysroot/dev/console & /mnt/dev/null
165   [ ! -e /sysroot/dev/console ] && mknod -m 600 /sysroot/dev/console c 5 1   [ ! -e /sysroot/dev/console ] && mknod -m 600 /sysroot/dev/console c 5 1

Legend:
Removed from v.344  
changed lines
  Added in v.605