|
From: <abe...@us...> - 2012-09-12 19:55:27
|
Revision: 5677
http://astlinux.svn.sourceforge.net/astlinux/?rev=5677&view=rev
Author: abelbeck
Date: 2012-09-12 19:55:20 +0000 (Wed, 12 Sep 2012)
Log Message:
-----------
pre init, use 'devtmpfs' mounted by the kernel as /dev. Fallback to previous tmpfs method should devtmpfs not be available... which it shouldn't
Modified Paths:
--------------
branches/1.0/project/astlinux/target_skeleton/etc/rc
Modified: branches/1.0/project/astlinux/target_skeleton/etc/rc
===================================================================
--- branches/1.0/project/astlinux/target_skeleton/etc/rc 2012-09-10 03:52:34 UTC (rev 5676)
+++ branches/1.0/project/astlinux/target_skeleton/etc/rc 2012-09-12 19:55:20 UTC (rev 5677)
@@ -120,38 +120,53 @@
;;
esac
- mount -t tmpfs -o size=200k none /dev
- mount -t tmpfs -o size=10000k none /var
+ devtmpfs="$(awk '/^devtmpfs/ { print $2; nextfile; }' /proc/mounts)"
+ if [ -n "$devtmpfs" ]; then
+ mount -o remount,size=512k "$devtmpfs"
+ if [ "$devtmpfs" != "/dev" ]; then
+ mount -o move "$devtmpfs" /dev
+ fi
+ fstab_dev=""
+ else
+ echo "Warning: devtmpfs not available, falling back to tmpfs for /dev" >&2
+ mount -t tmpfs -o size=512k none /dev
+ fstab_dev="none /dev tmpfs size=512k 0 0"
+
+ if [ -d /stat/dev ]; then
+ cp -a /stat/dev/. /dev/
+ fi
+ fi
+
mount -t tmpfs -o size=10000k none /tmp
+ fstab_tmp="none /tmp tmpfs size=10000k 0 0"
+ mount -t tmpfs -o size=10000k none /var
+ fstab_var="none /var tmpfs size=10000k 0 0"
+
mount -t sysfs none /sys
- mkdir /dev/pts
+ mkdir -p /dev/pts
mount -t devpts none /dev/pts
- mkdir /dev/usb
+ mkdir -p /dev/usb
mount -t usbfs usbfs /proc/bus/usb
- mkdir /tmp/etc
- mkdir /tmp/etc/modprobe.d
+ mkdir -p /tmp/etc/modprobe.d
echo '## Auto-generated file, do not edit!!' >/tmp/etc/modprobe.d/alias.conf
if [ -n "$ASTURW" ]; then
- echo "# UNIONFS" > /tmp/etc/fstab
+ fstab_base="# UNIONFS"
else
- echo "$ROOTDEV / ext2 ro 0 0" > /tmp/etc/fstab
+ fstab_base="$ROOTDEV / ext2 ro 0 0"
fi
- echo "proc /proc proc defaults 0 0
-none /dev tmpfs size=200k 0 0
-none /tmp tmpfs size=10000k 0 0
-none /var tmpfs size=10000k 0 0
-" >> /tmp/etc/fstab
+ echo "${fstab_base}
+proc /proc proc defaults 0 0${fstab_dev:+
+$fstab_dev}${fstab_tmp:+
+$fstab_tmp}${fstab_var:+
+$fstab_var}
+" > /tmp/etc/fstab
- if [ -d /stat/dev ]; then
- cp -a /stat/dev/. /dev/
- fi
-
mkdir /var/spool /var/lib /var/lib/nfs
touch /var/lib/nfs/etab /var/lib/nfs/xtab /var/lib/nfs/rmtab
mkdir /var/empty /var/lock /var/db /var/run /var/racoon
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|