1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
--- /sbin/init.d/boot.orig Thu Jan 20 11:20:25 2000
+++ /sbin/init.d/boot Mon Feb 14 23:44:26 2000
@@ -33,2 +33,21 @@
+#
+# Load SCSI driver
+#
+modprobe scsi_hostadapter
+#
+# NOTE: grep needs to be available, i.e. reside in /bin !!!
+#
+if test -x /bin/scsidev -a test -x /bin/grep -a ! -z "`grep /dev/scsi /etc/fstab`"; then
+ HAVE_DEVSCSI_RAM3=1
+ ECHO_RETURN=$rc_done_up
+ echo "Setting up SCSI devices ..."
+ dd if=/dev/zero of=/dev/ram3 bs=1024 count=512 >/dev/null 2>&1
+ mke2fs -q -F -i1024 -g4096 /dev/ram3 512
+ test -d /dev/scsi || mkdir /dev/scsi
+ mount /dev/ram3 /dev/scsi
+ /bin/scsidev -r -q || ECHO_RETURN=$rc_failed_up
+ echo -e "$ECHO_RETURN"
+fi
+
#
@@ -222,4 +241,25 @@
+# If scsidev created a ramdisk for /dev/scsi, it's now time to
+# remove it: / is writeable now.
+# In order to prevent trouble, swap needs to be turned off before
+if test -x /bin/scsidev -a ! -z "$HAVE_DEVSCSI_RAM3"; then
+ ECHO_RETURN=$rc_done_up
+ echo "Cleaning /dev/scsi ..."
+ if test ! -z "`grep /dev/scsi /etc/fstab | grep swap`"; then
+ swapoff -a
+ NEED_SWAPON_AGAIN=1
+ fi
+ umount /dev/scsi || unset HAVE_DEVSCSI_RAM3
+fi
+if test -x /bin/scsidev; then
+ /bin/scsidev -r -q
+fi
+if test ! -z "$NEED_SWAPON_AGAIN"; then
+ swapon -a
+ unset NEED_SWAPON_AGAIN
+fi
+# ramdisk will be freed later, when /usr is mounted.
+
#
# Mount local filesystems in '/etc/fstab' (and create an entry
# for / and /proc).
@@ -301,2 +341,9 @@
+
+# Now finally remove the scsidev ramdisk to free some memory
+if test ! -z "$HAVE_DEVSCSI_RAM3"; then
+ echo "Free /dev/scsi ramdisk"
+ freeramdisk /dev/ram3
+ unset HAVE_DEVSCSI_RAM3
+fi
#
|