diff options
Diffstat (limited to 'package/base-files/files/etc/preinit')
-rwxr-xr-x | package/base-files/files/etc/preinit | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/package/base-files/files/etc/preinit b/package/base-files/files/etc/preinit index c60a0f850f..b23508f552 100755 --- a/package/base-files/files/etc/preinit +++ b/package/base-files/files/etc/preinit @@ -1,6 +1,20 @@ #!/bin/sh # Copyright (C) 2006 OpenWrt.org export PATH=/bin:/sbin:/usr/bin:/usr/sbin +. /etc/diag.sh + +failsafe() { + lock /tmp/.failsafe + ash --login +} + [ -e /etc/preinit.arch ] && . /etc/preinit.arch + +set_state preinit + mount_root ${FAILSAFE:+failsafe} + +eval ${FAILSAFE:+failsafe} +lock -w /tmp/.failsafe + exec /sbin/init |