mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-30 17:40:16 +02:00
init script cleanup, use /etc/rc.d/ for enabled scripts, /etc/init.d/<pkgname> (enable|disable) manages symlinks
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@5128 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
da89de0b0c
commit
5eca1169a0
@ -55,6 +55,13 @@ install-targets: base-files-install $(INSTALL_PACKAGES)
|
|||||||
install:
|
install:
|
||||||
rm -rf $(BUILD_DIR)/root
|
rm -rf $(BUILD_DIR)/root
|
||||||
$(MAKE) install-targets
|
$(MAKE) install-targets
|
||||||
|
@( \
|
||||||
|
cd $(BUILD_DIR)/root; \
|
||||||
|
for script in ./etc/init.d/*; do \
|
||||||
|
grep '#!/bin/sh /etc/rc.common' $$script >/dev/null || continue; \
|
||||||
|
IPKG_INSTROOT=$(BUILD_DIR)/root $(which bash) ./etc/rc.common $$script enable; \
|
||||||
|
done; \
|
||||||
|
)
|
||||||
|
|
||||||
index: $(PACKAGE_DIR)/Packages
|
index: $(PACKAGE_DIR)/Packages
|
||||||
|
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
# ADAM2 patcher for Netgear DG834 and compatible
|
# ADAM2 patcher for Netgear DG834 and compatible
|
||||||
# Copyright (C) 2006 OpenWrt.org
|
# Copyright (C) 2006 OpenWrt.org
|
||||||
|
|
||||||
|
START=00
|
||||||
start() {
|
start() {
|
||||||
MD5="$(md5sum /dev/mtdblock/0 | awk '{print $1}')"
|
MD5="$(md5sum /dev/mtdblock/0 | awk '{print $1}')"
|
||||||
[ "$MD5" = "0530bfdf00ec155f4182afd70da028c1" ] && {
|
[ "$MD5" = "0530bfdf00ec155f4182afd70da028c1" ] && {
|
@ -1,6 +1,8 @@
|
|||||||
#!/bin/sh /etc/rc.common
|
#!/bin/sh /etc/rc.common
|
||||||
# Copyright (C) 2006 OpenWrt.org
|
# Copyright (C) 2006 OpenWrt.org
|
||||||
|
|
||||||
|
START=05
|
||||||
|
|
||||||
start() {
|
start() {
|
||||||
[ -e /etc/config/network ] && exit 0
|
[ -e /etc/config/network ] && exit 0
|
||||||
|
|
@ -1,6 +1,7 @@
|
|||||||
#!/bin/sh /etc/rc.common
|
#!/bin/sh /etc/rc.common
|
||||||
# Copyright (C) 2006 OpenWrt.org
|
# Copyright (C) 2006 OpenWrt.org
|
||||||
|
|
||||||
|
START=05
|
||||||
start() {
|
start() {
|
||||||
[ -e /etc/config/network ] && exit 0
|
[ -e /etc/config/network ] && exit 0
|
||||||
|
|
@ -1,6 +1,7 @@
|
|||||||
#!/bin/sh /etc/rc.common
|
#!/bin/sh /etc/rc.common
|
||||||
# Copyright (C) 2006 OpenWrt.org
|
# Copyright (C) 2006 OpenWrt.org
|
||||||
|
|
||||||
|
START=10
|
||||||
start() {
|
start() {
|
||||||
[ -f /proc/mounts ] || /sbin/mount_root
|
[ -f /proc/mounts ] || /sbin/mount_root
|
||||||
[ -f /proc/jffs2_bbc ] && echo "S" > /proc/jffs2_bbc
|
[ -f /proc/jffs2_bbc ] && echo "S" > /proc/jffs2_bbc
|
@ -1,6 +1,7 @@
|
|||||||
#!/bin/sh /etc/rc.common
|
#!/bin/sh /etc/rc.common
|
||||||
# Copyright (C) 2006 OpenWrt.org
|
# Copyright (C) 2006 OpenWrt.org
|
||||||
|
|
||||||
|
START=40
|
||||||
start() {
|
start() {
|
||||||
setup_switch() { return 0; }
|
setup_switch() { return 0; }
|
||||||
|
|
@ -11,8 +11,8 @@ syslogd -C 16 #${log_ipaddr:+-L -R $log_ipaddr}
|
|||||||
klogd
|
klogd
|
||||||
|
|
||||||
(
|
(
|
||||||
for i in /etc/init.d/S*; do
|
for i in /etc/rc.d/S*; do
|
||||||
$i start 2>&1
|
$i boot 2>&1
|
||||||
done
|
done
|
||||||
|
|
||||||
sysctl -p >&-
|
sysctl -p >&-
|
||||||
|
@ -1,5 +1,9 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
. /etc/functions.sh
|
# Copyright (C) 2006 OpenWrt.org
|
||||||
|
|
||||||
|
. $IPKG_INSTROOT/etc/functions.sh
|
||||||
|
|
||||||
|
START=50
|
||||||
|
|
||||||
start() {
|
start() {
|
||||||
return 0
|
return 0
|
||||||
@ -27,12 +31,14 @@ shutdown() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
disable() {
|
disable() {
|
||||||
rm -f /etc/rc.d/${initscript##*/}
|
name="$(basename "${initscript}")"
|
||||||
|
rm -f "$IPKG_INSTROOT/etc/rc.d/S??$name"
|
||||||
}
|
}
|
||||||
|
|
||||||
enable() {
|
enable() {
|
||||||
|
name="$(basename "${initscript}")"
|
||||||
disable
|
disable
|
||||||
ln -s /etc/init.d/${initscript##*/} /etc/rc.d/${initscript##*/}
|
ln -s "/etc/init.d/$name" "$IPKG_INSTROOT/etc/rc.d/S${START}${name##S[0-9][0-9]}"
|
||||||
}
|
}
|
||||||
|
|
||||||
depends() {
|
depends() {
|
||||||
@ -48,6 +54,8 @@ Available commands:
|
|||||||
stop Stop the service
|
stop Stop the service
|
||||||
restart Restart the service
|
restart Restart the service
|
||||||
reload Reload configuration files (or restart if that fails)
|
reload Reload configuration files (or restart if that fails)
|
||||||
|
enable Enable service autostart
|
||||||
|
disable Disable service autostart
|
||||||
$EXTRA_HELP
|
$EXTRA_HELP
|
||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
@ -68,6 +76,8 @@ eval "case \"\$action\" in
|
|||||||
restart) restart;;
|
restart) restart;;
|
||||||
boot) boot;;
|
boot) boot;;
|
||||||
shutdown) shutdown;;
|
shutdown) shutdown;;
|
||||||
|
enable) enable;;
|
||||||
|
disable) disable;;
|
||||||
$cmds
|
$cmds
|
||||||
*) help;;
|
*) help;;
|
||||||
esac"
|
esac"
|
||||||
|
@ -49,7 +49,7 @@ define Package/dnsmasq/install
|
|||||||
install -m0755 -d $(1)/etc
|
install -m0755 -d $(1)/etc
|
||||||
install -m0644 ./files/dnsmasq.conf $(1)/etc/dnsmasq.conf
|
install -m0644 ./files/dnsmasq.conf $(1)/etc/dnsmasq.conf
|
||||||
install -m0755 -d $(1)/etc/init.d
|
install -m0755 -d $(1)/etc/init.d
|
||||||
install -m0755 ./files/dnsmasq.init $(1)/etc/init.d/S50dnsmasq
|
install -m0755 ./files/dnsmasq.init $(1)/etc/init.d/dnsmasq
|
||||||
endef
|
endef
|
||||||
|
|
||||||
$(eval $(call BuildPackage,dnsmasq))
|
$(eval $(call BuildPackage,dnsmasq))
|
||||||
|
@ -107,7 +107,7 @@ define Package/dropbear/install
|
|||||||
ln -sf ../sbin/dropbear $(1)/usr/bin/dbclient
|
ln -sf ../sbin/dropbear $(1)/usr/bin/dbclient
|
||||||
ln -sf ../sbin/dropbear $(1)/usr/bin/dropbearkey
|
ln -sf ../sbin/dropbear $(1)/usr/bin/dropbearkey
|
||||||
install -d -m0755 $(1)/etc/init.d
|
install -d -m0755 $(1)/etc/init.d
|
||||||
install -m0755 ./files/dropbear.init $(1)/etc/init.d/S50dropbear
|
install -m0755 ./files/dropbear.init $(1)/etc/init.d/dropbear
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/dropbearconvert/install
|
define Package/dropbearconvert/install
|
||||||
|
@ -195,7 +195,7 @@ define Package/iptables/install
|
|||||||
install -d -m0755 $(1)/etc/config
|
install -d -m0755 $(1)/etc/config
|
||||||
install -m0644 ./files/firewall.config $(1)/etc/config/firewall
|
install -m0644 ./files/firewall.config $(1)/etc/config/firewall
|
||||||
install -d -m0755 $(1)/etc/init.d
|
install -d -m0755 $(1)/etc/init.d
|
||||||
install -m0755 ./files/firewall.init $(1)/etc/init.d/S45firewall
|
install -m0755 ./files/firewall.init $(1)/etc/init.d/firewall
|
||||||
install -m0755 ./files/firewall.user $(1)/etc/
|
install -m0755 ./files/firewall.user $(1)/etc/
|
||||||
install -d -m0755 $(1)/usr/lib
|
install -d -m0755 $(1)/usr/lib
|
||||||
install -m0644 ./files/firewall.awk $(1)/usr/lib
|
install -m0644 ./files/firewall.awk $(1)/usr/lib
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# Copyright (C) 2006 OpenWrt.org
|
# Copyright (C) 2006 OpenWrt.org
|
||||||
|
|
||||||
## Please make changes in /etc/firewall.user
|
## Please make changes in /etc/firewall.user
|
||||||
|
START=45
|
||||||
start() {
|
start() {
|
||||||
include /lib/network
|
include /lib/network
|
||||||
scan_interfaces
|
scan_interfaces
|
||||||
|
@ -120,7 +120,7 @@ endif
|
|||||||
ifeq ($(findstring PCI,$(BUS)),PCI)
|
ifeq ($(findstring PCI,$(BUS)),PCI)
|
||||||
echo ath_pci >> $(1)/etc/modules.d/20-madwifi
|
echo ath_pci >> $(1)/etc/modules.d/20-madwifi
|
||||||
endif
|
endif
|
||||||
install -m0755 ./files/madwifi.init $(1)/etc/init.d/S20madwifi
|
install -m0755 ./files/madwifi.init $(1)/etc/init.d/madwifi
|
||||||
$(CP) \
|
$(CP) \
|
||||||
$(PKG_BUILD_DIR)/ath/ath_hal.$(LINUX_KMOD_SUFFIX) \
|
$(PKG_BUILD_DIR)/ath/ath_hal.$(LINUX_KMOD_SUFFIX) \
|
||||||
$(BUS_MODULES) \
|
$(BUS_MODULES) \
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
#!/bin/sh /etc/rc.common
|
#!/bin/sh /etc/rc.common
|
||||||
start() {
|
START=20
|
||||||
|
boot() {
|
||||||
iwpriv ath0 mode 3
|
iwpriv ath0 mode 3
|
||||||
}
|
}
|
||||||
|
@ -21,8 +21,6 @@ PKG_CAT:=zcat
|
|||||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
||||||
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
|
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
|
||||||
|
|
||||||
PKG_INIT_PRIO:=60
|
|
||||||
|
|
||||||
include $(INCLUDE_DIR)/package.mk
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
|
||||||
define Package/openswan/Default
|
define Package/openswan/Default
|
||||||
@ -76,7 +74,7 @@ endef
|
|||||||
define Package/openswan/install
|
define Package/openswan/install
|
||||||
$(CP) $(PKG_INSTALL_DIR)/* $(1)
|
$(CP) $(PKG_INSTALL_DIR)/* $(1)
|
||||||
install -d -m0755 $(1)/etc/init.d
|
install -d -m0755 $(1)/etc/init.d
|
||||||
$(CP) $(1)/etc/rc.d/init.d/ipsec $(1)/etc/init.d/S$(PKG_INIT_PRIO)ipsec
|
$(CP) ./files/ipsec.init $(1)/etc/init.d/ipsec
|
||||||
rm -rf $(1)/usr/share
|
rm -rf $(1)/usr/share
|
||||||
rm -rf $(1)/usr/man
|
rm -rf $(1)/usr/man
|
||||||
rm -rf $(1)/var
|
rm -rf $(1)/var
|
||||||
|
158
package/openswan/files/ipsec.init
Executable file
158
package/openswan/files/ipsec.init
Executable file
@ -0,0 +1,158 @@
|
|||||||
|
#!/bin/sh /etc/rc.common
|
||||||
|
# IPsec startup and shutdown script
|
||||||
|
# Copyright (C) 1998, 1999, 2001 Henry Spencer.
|
||||||
|
# Copyright (C) 2002 Michael Richardson <mcr@freeswan.org>
|
||||||
|
# Copyright (C) 2006 OpenWrt.org
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or modify it
|
||||||
|
# under the terms of the GNU General Public License as published by the
|
||||||
|
# Free Software Foundation; either version 2 of the License, or (at your
|
||||||
|
# option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful, but
|
||||||
|
# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||||
|
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
# for more details.
|
||||||
|
#
|
||||||
|
# RCSID $Id: setup.in,v 1.122.6.1 2005/07/25 19:17:03 ken Exp $
|
||||||
|
#
|
||||||
|
# ipsec init.d script for starting and stopping
|
||||||
|
# the IPsec security subsystem (KLIPS and Pluto).
|
||||||
|
#
|
||||||
|
# This script becomes /etc/rc.d/init.d/ipsec (or possibly /etc/init.d/ipsec)
|
||||||
|
# and is also accessible as "ipsec setup" (the preferred route for human
|
||||||
|
# invocation).
|
||||||
|
#
|
||||||
|
# The startup and shutdown times are a difficult compromise (in particular,
|
||||||
|
# it is almost impossible to reconcile them with the insanely early/late
|
||||||
|
# times of NFS filesystem startup/shutdown). Startup is after startup of
|
||||||
|
# syslog and pcmcia support; shutdown is just before shutdown of syslog.
|
||||||
|
#
|
||||||
|
# chkconfig: 2345 47 76
|
||||||
|
# description: IPsec provides encrypted and authenticated communications; \
|
||||||
|
# KLIPS is the kernel half of it, Pluto is the user-level management daemon.
|
||||||
|
|
||||||
|
START=60
|
||||||
|
script_init() {
|
||||||
|
me='ipsec setup' # for messages
|
||||||
|
|
||||||
|
# where the private directory and the config files are
|
||||||
|
IPSEC_EXECDIR="${IPSEC_EXECDIR-/usr/libexec/ipsec}"
|
||||||
|
IPSEC_LIBDIR="${IPSEC_LIBDIR-/usr/lib/ipsec}"
|
||||||
|
IPSEC_SBINDIR="${IPSEC_SBINDIR-/usr/sbin}"
|
||||||
|
IPSEC_CONFS="${IPSEC_CONFS-/etc}"
|
||||||
|
|
||||||
|
if test " $IPSEC_DIR" = " " # if we were not called by the ipsec command
|
||||||
|
then
|
||||||
|
# we must establish a suitable PATH ourselves
|
||||||
|
PATH="${IPSEC_SBINDIR}":/sbin:/usr/sbin:/usr/local/bin:/bin:/usr/bin
|
||||||
|
export PATH
|
||||||
|
|
||||||
|
IPSEC_DIR="$IPSEC_LIBDIR"
|
||||||
|
export IPSEC_DIR IPSEC_CONFS IPSEC_LIBDIR IPSEC_EXECDIR
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check that the ipsec command is available.
|
||||||
|
found=
|
||||||
|
for dir in `echo $PATH | tr ':' ' '`
|
||||||
|
do
|
||||||
|
if test -f $dir/ipsec -a -x $dir/ipsec
|
||||||
|
then
|
||||||
|
found=yes
|
||||||
|
break # NOTE BREAK OUT
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if ! test "$found"
|
||||||
|
then
|
||||||
|
echo "cannot find ipsec command -- \`$1' aborted" |
|
||||||
|
logger -s -p daemon.error -t ipsec_setup
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Pick up IPsec configuration (until we have done this, successfully, we
|
||||||
|
# do not know where errors should go, hence the explicit "daemon.error"s.)
|
||||||
|
# Note the "--export", which exports the variables created.
|
||||||
|
eval `ipsec _confread $config --optional --varprefix IPSEC --export --type config setup`
|
||||||
|
|
||||||
|
if test " $IPSEC_confreadstatus" != " "
|
||||||
|
then
|
||||||
|
case $1 in
|
||||||
|
stop|--stop|_autostop)
|
||||||
|
echo "$IPSEC_confreadstatus -- \`$1' may not work" |
|
||||||
|
logger -s -p daemon.error -t ipsec_setup;;
|
||||||
|
|
||||||
|
*) echo "$IPSEC_confreadstatus -- \`$1' aborted" |
|
||||||
|
logger -s -p daemon.error -t ipsec_setup;
|
||||||
|
exit 1;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
|
||||||
|
IPSEC_confreadsection=${IPSEC_confreadsection:-setup}
|
||||||
|
export IPSEC_confreadsection
|
||||||
|
|
||||||
|
IPSECsyslog=${IPSECsyslog-daemon.error}
|
||||||
|
export IPSECsyslog
|
||||||
|
|
||||||
|
# misc setup
|
||||||
|
umask 022
|
||||||
|
|
||||||
|
mkdir -p /var/run/pluto
|
||||||
|
}
|
||||||
|
|
||||||
|
script_command() {
|
||||||
|
if [ "${USER}" != "root" ]
|
||||||
|
then
|
||||||
|
echo "permission denied (must be superuser)" |
|
||||||
|
logger -s -p $IPSECsyslog -t ipsec_setup 2>&1
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
# make sure all required directories exist
|
||||||
|
if [ ! -d /var/run/pluto ]
|
||||||
|
then
|
||||||
|
mkdir -p /var/run/pluto
|
||||||
|
fi
|
||||||
|
if [ ! -d /var/lock/subsys ]
|
||||||
|
then
|
||||||
|
mkdir -p /var/lock/subsys
|
||||||
|
fi
|
||||||
|
tmp=/var/run/pluto/ipsec_setup.st
|
||||||
|
outtmp=/var/run/pluto/ipsec_setup.out
|
||||||
|
(
|
||||||
|
ipsec _realsetup $1
|
||||||
|
echo "$?" >$tmp
|
||||||
|
) > ${outtmp} 2>&1
|
||||||
|
st=$?
|
||||||
|
if test -f $tmp
|
||||||
|
then
|
||||||
|
st=`cat $tmp`
|
||||||
|
rm -f $tmp
|
||||||
|
fi
|
||||||
|
if [ -f ${outtmp} ]; then
|
||||||
|
cat ${outtmp} | logger -s -p $IPSECsyslog -t ipsec_setup 2>&1
|
||||||
|
rm -f ${outtmp}
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
start() {
|
||||||
|
script_init start "$@"
|
||||||
|
script_command start "$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
stop() {
|
||||||
|
script_init stop "$@"
|
||||||
|
script_command stop "$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
restart() {
|
||||||
|
script_init stop "$@"
|
||||||
|
script_command stop "$@"
|
||||||
|
script_command start "$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
status() {
|
||||||
|
script_init status "$@"
|
||||||
|
ipsec _realsetup status
|
||||||
|
}
|
||||||
|
EXTRA_COMMANDS=status
|
||||||
|
EXTRA_HELP=" status Show the status of the service"
|
@ -1,16 +1,14 @@
|
|||||||
#!/bin/sh /etc/rc.common
|
#!/bin/sh /etc/rc.common
|
||||||
# Copyright (C) 2006 OpenWrt.org
|
# Copyright (C) 2006 OpenWrt.org
|
||||||
|
|
||||||
|
START=50
|
||||||
|
|
||||||
boot() {
|
boot() {
|
||||||
/usr/lib/qos.sh firewall | sh
|
/usr/lib/qos.sh firewall | sh
|
||||||
}
|
}
|
||||||
|
|
||||||
start() {
|
start() {
|
||||||
# FIXME: after init script migration
|
qos-start
|
||||||
# qos-start
|
|
||||||
#
|
|
||||||
|
|
||||||
boot
|
|
||||||
}
|
}
|
||||||
|
|
||||||
stop() {
|
stop() {
|
Loading…
Reference in New Issue
Block a user