Advertisement
nocwat

Ubuntu start script for XOLO X900

Jan 6th, 2013
286
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 2.40 KB | None | 0 0
  1. #!/system/bin/sh
  2.  
  3. MNT_DEV=""
  4. MNT_PATH="/system/sd"
  5. MOUNT_DEV=0
  6.  
  7. export PATH="/usr/bin:/usr/sbin:/bin:$PATH"
  8. export TERM="xterm"
  9. export HOME="/root"
  10. export LANG="en_US.UTF-8"
  11. export LC_ALL="en_US.UTF-8"
  12.  
  13. if [ $MOUNT_DEV -eq 1 ]; then
  14.     MNT_PATH_DEV="$MNT_PATH/dev"
  15. else
  16.     MNT_PATH_DEV=""
  17. fi
  18.  
  19. CHK_MOUNT(){
  20.     awk '{if ($2=="'$1'") {exit 1;}}' /proc/mounts
  21.     return $?
  22. }
  23.  
  24. CLEAN_MNT(){
  25.     busybox umount $MNT_PATH/dev/shm $MNT_PATH/dev/pts $MNT_PATH_DEV $MNT_PATH/proc $MNT_PATH/sys $MNT_PATH/sdcard $MNT_PATH/android/system
  26.     if [ $? -ne 0 ]; then
  27.         busybox umount -fl $MNT_PATH/dev/shm $MNT_PATH/dev/pts $MNT_PATH_DEV $MNT_PATH/proc $MNT_PATH/sys $MNT_PATH/sdcard $MNT_PATH/android/system
  28.     fi
  29.     umount $MNT_PATH
  30. }
  31.  
  32. #DEVS=`cd /sys/block; ls -d sd* 2>/dev/null`
  33. #DEV_PART="1"
  34.  
  35. DEVS="mmcblk1"
  36. DEV_PART="p1"
  37.  
  38. for i in $DEVS; do
  39.     if [ -d "/sys/block/"$i"/"$i$DEV_PART ]; then
  40.         MNT_DEV=$i$DEV_PART
  41.         echo 8192 > /sys/block/$i/queue/read_ahead_kb
  42.         break
  43.     fi
  44. done
  45.  
  46. if [ -z "$MNT_DEV" ]; then
  47.     echo "No USB disk in system"
  48.     exit 1
  49. fi
  50.  
  51. CHK_MOUNT $MNT_PATH
  52. if [ $? -eq 0 ]; then
  53.     mount -t ext4 /dev/block/$MNT_DEV $MNT_PATH
  54.     if [ $? -ne 0 ]; then
  55.         echo "Mount USB disk $MNT_DEV failed"
  56.         CLEAN_MNT
  57.         exit 2
  58.     fi
  59. fi
  60.  
  61. busybox rm -f $MNT_PATH/tmp/.X*-lock $MNT_PATH/tmp/.X11-unix/X* $MNT_PATH/var/log/Xorg.*.log* $MNT_PATH/var/run/dbus/*
  62.  
  63. if [ "x$MNT_PATH_DEV" = "x" ]; then
  64.     busybox cp -ra /dev/graphics/fb* $MNT_PATH/dev
  65.     busybox rm -rf $MNT_PATH/dev/input
  66.     busybox cp -ra /dev/input $MNT_PATH/dev
  67.     chmod 777 $MNT_PATH/dev/fb*
  68.     busybox chown 0:0 $MNT_PATH/dev/fb*
  69.     chmod 777 $MNT_PATH/dev/input/*
  70.     busybox chown 0:0 $MNT_PATH/dev/input/*
  71. else
  72.     CHK_MOUNT $MNT_PATH_DEV
  73.     if [ $? -eq 0 ]; then
  74.         mount -o bind /dev $MNT_PATH_DEV
  75.     fi
  76. fi
  77.  
  78. CHK_MOUNT $MNT_PATH/dev/shm
  79. if [ $? -eq 0 ]; then
  80.     if [ ! -d /dev/shm ]; then
  81.         busybox mkdir -m 777 /dev/shm
  82.     fi
  83.     mount -o bind /dev/shm $MNT_PATH/dev/shm
  84. fi
  85.  
  86. CHK_MOUNT $MNT_PATH/dev/pts
  87. if [ $? -eq 0 ]; then
  88.     mount -t devpts devpts $MNT_PATH/dev/pts
  89. fi
  90.  
  91. CHK_MOUNT $MNT_PATH/proc
  92. if [ $? -eq 0 ]; then
  93.     mount -t proc proc $MNT_PATH/proc
  94. fi
  95. CHK_MOUNT $MNT_PATH/sys
  96. if [ $? -eq 0 ]; then
  97.     mount -t sysfs sysfs $MNT_PATH/sys
  98. fi
  99.  
  100. mount -o bind /mnt/sdcard $MNT_PATH/sdcard
  101. mount -o bind /system $MNT_PATH/android/system
  102.  
  103. if [ ! -d /sys/module/udlfb ]; then
  104.     insmod /system/lib/modules/udlfb.ko
  105. fi
  106.  
  107. chroot $MNT_PATH /bin/bash
  108.  
  109. CLEAN_MNT
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement