參考資訊:
https://github.com/mer-hybris/hybris-boot
init
#!/bin/sh set -x exec > /init.log 2>&1 echo "running initramfs loader..." LOCAL_IP=192.168.2.15 ANDROID_USB=/sys/class/android_usb/android0 #echo "ls -l /" >/init-ctl/stdin #echo "continue" >/init-ctl/stdin export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin /bin/busybox --install -s mkdir -p /dev mount -t devtmpfs devtmpfs /dev mkdir -p /dev/pts mount -t devpts devpts /dev/pts mkdir -p /proc mkdir -p /sys mount -t sysfs sysfs /sys mount -t proc proc /proc mkdir -p /config echo /sbin/mdev > /proc/sys/kernel/hotplug mdev -s sleep 3 ln -s . /dev/block ln -s /proc/mounts /etc/mtab mkdir /mnt mount /dev/mmcblk0p39 /mnt echo /dev/mmcblk0 > /sys/class/android_usb/f_mass_storage/lun/file echo 0 > $ANDROID_USB/enable echo "" > $ANDROID_USB/functions echo 1 > $ANDROID_USB/enable usleep 500000 echo 0 > $ANDROID_USB/enable echo 18D1 > $ANDROID_USB/idVendor echo D001 > $ANDROID_USB/idProduct echo "MyLoader" > $ANDROID_USB/iManufacturer echo "initramfs" > $ANDROID_USB/iProduct echo "v1.0" > $ANDROID_USB/iSerial echo rndis,mass_storage > $ANDROID_USB/functions echo 1 > $ANDROID_USB/enable /sbin/ifconfig rndis0 $LOCAL_IP echo "start 192.168.2.20" > /etc/udhcpd.conf echo "end 192.168.2.90" >> /etc/udhcpd.conf echo "lease_file /var/udhcpd.leases" >> /etc/udhcpd.conf echo "interface rndis0" >> /etc/udhcpd.conf echo "option subnet 255.255.255.0" >> /etc/udhcpd.conf udhcpd telnetd -b ${LOCAL_IP}:23 -l /bin/sh INJ_DIR=/init-ctl INJ_STDIN=$INJ_DIR/stdin mkdir $INJ_DIR mkfifo $INJ_STDIN while : ; do while read IN; do if [ "$IN" = "continue" ]; then break 2;fi $IN done <$INJ_STDIN done rm -rf $INJ_DIR killall telnetd killall udhcpd echo "" > /proc/sys/kernel/hotplug exec switch_root /mnt /sbin/init
步驟如下:
1. 下載https://github.com/steward-fu/website/releases/download/xt897/myloader.tar.gz
2. 透過Recovery刷入boot.zip
3. 開機後,連接USB至PC
4. 執行如下命令進行連線
$ telnet 192.168.2.15 Trying 192.168.2.15... Connected to 192.168.2.15. Escape character is '^]'. ~ # ls bin config dev etc init init-ctl init.log mnt proc root sbin sys usr