Guest User

Untitled

a guest
Jun 19th, 2018
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.57 KB | None | 0 0
  1. #!/sbin/sh
  2.  
  3. #check if the device is mtd
  4. if [ -e /dev/block/mtdblock0 ] ; then
  5.     #the device is mtd
  6.    
  7.     #mount /data
  8.     if [ -d /data ] ; then
  9.         /tmp/busybox mount -t ext4 /dev/block/mmcblk0p2 /data
  10.     else
  11.         /tmp/busybox mkdir mkdir /data
  12.         /tmp/busybox mount -t ext4 /dev/block/mmcblk0p2 /data
  13.     fi
  14.    
  15.     #check if /data/data is a symbolic link
  16.     if [ -h /data/data ] ; then
  17.         #it is not, so we will run the fixer later
  18.         /tmp/busybox touch /tmp/nofix
  19.     else
  20.         #it is, so we will check if the fix can be reverted
  21.  
  22.         #check to see if mtdblock6 exists
  23.         if ! [ -e /dev/block/mtdblock6 ] ; then
  24.             #it doesn't, so error out the script and stop
  25.             exit 1
  26.         fi
  27.    
  28.         #mount /datadata
  29.         if [ -d /datadata ] ; then
  30.             /tmp/busybox mount -t yaffs2 /dev/block/mtdblock6 /datadata
  31.         else
  32.             /tmp/busybox mkdir /datadata
  33.             /tmp/busybox mount -t yaffs2 /dev/block/mtdblock6 /datadata
  34.         fi
  35.        
  36.         #wipe /datadata and check to make sure the amount of stuff in /data/data does not exceed the ammount of free space on /datadata
  37.         /tmp/busybox rm -rf /datadata/*
  38.         FREE_SPACE=$(/tmp/busybox df -k | /tmp/busybox awk '$1 == "/dev/block/mtdblock6" {print int($4/1024+512)}') ; USED_SPACE=$(/tmp/busybox du -sk /data/data/ | /tmp/busybox awk '{print int($1/1024+512)}')
  39.         if [ $FREE_SPACE -gt $USED_SPACE ] ; then
  40.             #there is enough room on /datadata, so continue with the revert later
  41.             /tmp/busybox touch /tmp/revert_pass
  42.         else
  43.             #there is not enough room, so error out the script and stop
  44.             exit 1
  45.         fi
  46.     fi
  47. else
  48.     #device is not mtd, so error out the script and stop
  49.     exit 1
  50. fi
  51. exit 0
Add Comment
Please, Sign In to add comment