summaryrefslogtreecommitdiffstats
path: root/package/base-files/default/sbin/mount_root
blob: ae78ee4881a14120299e6a8ec5021419a5008e9d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!/bin/sh
. /etc/nvram.sh
if [ "$1" != "failsafe" ]; then 
	mount | grep jffs2 >&-
	if [ $? = 0 ] ; then
		if [ $(cat /proc/mtd | wc -l) = 6 ]; then
			echo 5 > /proc/sys/diag
			mtd unlock linux
			mtd erase OpenWrt
			jffs2root --move
		else
			mtd unlock rootfs
			mount -o remount,rw /dev/root /
		fi
	else
		if [ -z "$(nvram get no_root_swap)" ]; then
			mtd unlock OpenWrt
			mount -t jffs2 /dev/mtdblock/4 /jffs
			pivot_root /jffs /jffs/rom
			mount none /proc -t proc
			mount none /dev -t devfs
			umount /rom/proc rom/dev >&-
		fi
	fi
fi
mount none /tmp -t tmpfs -o nosuid,nodev,mode=1777,size=50%
mkdir -p /dev/pts
mount none /dev/pts -t devpts