79 lines
1.8 KiB
Plaintext
79 lines
1.8 KiB
Plaintext
|
#!/bin/sh /etc/rc.common
|
||
|
# Copyright (C) 2006-2011 OpenWrt.org
|
||
|
|
||
|
START=10
|
||
|
STOP=98
|
||
|
|
||
|
uci_apply_defaults() {
|
||
|
. /lib/functions/system.sh
|
||
|
|
||
|
cd /etc/uci-defaults || return 0
|
||
|
files="$(ls)"
|
||
|
[ -z "$files" ] && return 0
|
||
|
mkdir -p /tmp/.uci
|
||
|
for file in $files; do
|
||
|
( . "./$(basename $file)" ) && rm -f "$file"
|
||
|
done
|
||
|
uci commit
|
||
|
}
|
||
|
|
||
|
boot() {
|
||
|
[ -f /proc/mounts ] || /sbin/mount_root
|
||
|
[ -f /proc/jffs2_bbc ] && echo "S" > /proc/jffs2_bbc
|
||
|
[ -f /proc/net/vlan/config ] && vconfig set_name_type DEV_PLUS_VID_NO_PAD
|
||
|
|
||
|
mkdir -p /var/run
|
||
|
mkdir -p /var/log
|
||
|
mkdir -p /var/lock
|
||
|
mkdir -p /var/state
|
||
|
mkdir -p /var/tmp
|
||
|
mkdir -p /tmp/.uci
|
||
|
chmod 0700 /tmp/.uci
|
||
|
touch /var/log/wtmp
|
||
|
touch /var/log/lastlog
|
||
|
touch /tmp/resolv.conf.auto
|
||
|
ln -sf /tmp/resolv.conf.auto /tmp/resolv.conf
|
||
|
grep -q debugfs /proc/filesystems && /bin/mount -o noatime -t debugfs debugfs /sys/kernel/debug
|
||
|
[ "$FAILSAFE" = "true" ] && touch /tmp/.failsafe
|
||
|
|
||
|
/sbin/kmodloader
|
||
|
|
||
|
# allow wifi modules time to settle
|
||
|
#sleep 1
|
||
|
|
||
|
/sbin/wifi detect > /tmp/wireless.tmp
|
||
|
[ -s /tmp/wireless.tmp ] && {
|
||
|
cat /tmp/wireless.tmp >> /etc/config/wireless
|
||
|
}
|
||
|
rm -f /tmp/wireless.tmp
|
||
|
|
||
|
/bin/board_detect
|
||
|
uci_apply_defaults
|
||
|
|
||
|
# temporary hack until configd exists
|
||
|
/sbin/reload_config
|
||
|
|
||
|
# create /dev/root if it doesn't exist
|
||
|
[ -e /dev/root -o -h /dev/root ] || {
|
||
|
rootdev=$(awk 'BEGIN { RS=" "; FS="="; } $1 == "root" { print $2 }' < /proc/cmdline)
|
||
|
[ -n "$rootdev" ] && ln -s "$rootdev" /dev/root
|
||
|
}
|
||
|
|
||
|
[ -d /dev/by-name -o -h /dev/by-name/rootfs ] || {
|
||
|
mkdir -p -m 755 /dev/by-name
|
||
|
for line in `cat /proc/cmdline`
|
||
|
do
|
||
|
if [ ${line%%=*} = 'partitions' ] ; then
|
||
|
parts=${line##*=}
|
||
|
part=" "
|
||
|
while [ "$part" != "$parts" ]
|
||
|
do
|
||
|
part=${parts%%:*}
|
||
|
ln -s "/dev/${part#*@}" "/dev/by-name/${part%@*}"
|
||
|
parts=${parts#*:}
|
||
|
done
|
||
|
fi
|
||
|
done
|
||
|
}
|
||
|
}
|