2 # Copyright 2010 Vertical Communications
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
7 determine_root_device
() {
8 root_device
="$(mount | grep ' / ' | cut -f1 -d\ | grep -v rootfs )"
12 jffs
="$(awk '/jffs2/ {print $2}' /proc/mounts)"
16 mkdir
-p /tmp
/extroot_modules
/modules.d
17 mkdir
-p /tmp
/extroot_modules
/modules
18 ln -sf /etc
/modules.d
/* /tmp
/overlay
/etc
/modules.d
/* /tmp
/extroot_modules
/modules.d
19 ln -sf /lib
/modules
/*/* /tmp
/overlay
/lib
/modules
/*/* /tmp
/extroot_modules
/modules
20 local modules
="$(grep -l '# May be required for rootfs' /tmp/extroot_modules/modules.d/* 2>/dev/null)"
21 cd /tmp
/extroot_modules
/modules
&& [ -n "$modules" ] && {
22 cat $modules |
sed -e 's/^\([^#].*\)/insmod \.\/\1.ko/'| sh
2>&- ||
:
24 rm -rf /tmp
/extroot_modules
27 pivot_rom
() { # <new_root> <old_root>
28 mount
-o move
/proc
$1/proc
&& \
29 pivot_root
$1 $1$2 && {
30 mount
-o move
$2/dev
/dev
31 mount
-o move
$2/tmp
/tmp
32 mount
-o move
$2/sys
/sys
2>&-
This page took 0.052934 seconds and 5 git commands to generate.