mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-12-29 04:06:47 +02:00
0d9004633d
The current init script always tries to start hotplug 2, even if it's not present, so we get an error on boot. This change checks for the presence of the hotplug2 binary before trying to start it. Signed-off-by: Jeremy Kerr <jk@ozlabs.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@9606 3c298f89-4303-0410-b956-a3cf2f4a3e73
60 lines
1.4 KiB
Bash
Executable File
60 lines
1.4 KiB
Bash
Executable File
#!/bin/sh /etc/rc.common
|
|
# Copyright (C) 2006 OpenWrt.org
|
|
|
|
START=10
|
|
|
|
system_config() {
|
|
local cfg="$1"
|
|
local hostname
|
|
|
|
config_get hostname "$cfg" hostname
|
|
echo "${hostname:-OpenWrt}" > /proc/sys/kernel/hostname
|
|
|
|
config_get conloglevel "$cfg" conloglevel
|
|
[ -n "$conloglevel" ] && dmesg -n "$conloglevel"
|
|
|
|
config_get log_ip "$cfg" log_ip
|
|
syslogd -C16 ${log_ip:+-L -R $log_ip}
|
|
klogd
|
|
}
|
|
|
|
apply_uci_config() {(
|
|
include /lib/config
|
|
uci_apply_defaults
|
|
)}
|
|
|
|
start() {
|
|
[ -f /proc/mounts ] || /sbin/mount_root
|
|
[ -f /proc/jffs2_bbc ] && echo "S" > /proc/jffs2_bbc
|
|
vconfig set_name_type DEV_PLUS_VID_NO_PAD
|
|
|
|
apply_uci_config
|
|
config_load system
|
|
config_foreach system_config system
|
|
|
|
mkdir -p /var/run
|
|
mkdir -p /var/log
|
|
mkdir -p /var/lock
|
|
mkdir -p /var/state
|
|
touch /var/log/wtmp
|
|
touch /var/log/lastlog
|
|
ln -sf /tmp/resolv.conf.auto /tmp/resolv.conf
|
|
[ "$FAILSAFE" = "true" ] && touch /tmp/.failsafe
|
|
|
|
[ -x /sbin/hotplug2 ] && /sbin/hotplug2 --override --persistent \
|
|
--max-children 1 --no-coldplug &
|
|
|
|
# the coldplugging of network interfaces needs to happen later, so we do it manually here
|
|
for iface in $(awk -F: '/:/ {print $1}' /proc/net/dev); do
|
|
/usr/bin/env -i ACTION=add INTERFACE="$iface" /sbin/hotplug-call net
|
|
done
|
|
|
|
# create /dev/root if it doesn't exist
|
|
[ -e /dev/root ] || {
|
|
rootdev=$(awk 'BEGIN { RS=" "; FS="="; } $1 == "root" { print $2 }' < /proc/cmdline)
|
|
[ -n "$rootdev" ] && ln -s "$rootdev" /dev/root
|
|
}
|
|
|
|
load_modules /etc/modules.d/*
|
|
}
|