initramfs에서 adb를 실행하는 방법은 무엇입니까?

initramfs에서 adb를 실행하는 방법은 무엇입니까?

내 후크가 작동하는 것 같습니다(때때로 첫 번째 실행이 실패하지만 다시 실행하면 라이브러리 문제가 없는 것 같습니다). initramfs에 소켓 지원이 부족한 것 같습니다. 내 시스템은 데비안 9입니다. 일반적인 데비안 시스템은 소켓 지원을 제공하는 것 같습니다 man systemd.socekt.5. 일반 데비안 시스템을 부팅 하는 데 사용하는 경우에도 init=/bin/bash동일한 문제가 있는 것 같습니다.

루팅되지 않은 Android 휴대폰의 이미지 파일을 메모리로 가져오고 해당 이미지 파일에서 실행하고 싶습니다.

파일 시스템 초기화 파일 시스템 초기화 내 후크:

#!/bin/sh
PREREQ=""
prereqs()
{
     echo "$PREREQ"
}

case $1 in
prereqs)
     prereqs
     exit 0
     ;;
esac

. /usr/share/initramfs-tools/hook-functions
# Begin real processing below this line

copy_exec /usr/bin/adb /sbin
for x in $(dpkg -L android-libadb android-libbase android-libcutils libgcc1 libc6 libstdc++6 gcc-6-base |grep -e '^/lib/' -e '^/usr/lib/'); do
    copy_exec "${x}" "${x}"
done

cp -a "/lib/udev/rules.d/51-android.rules" "${DESTDIR}/lib/udev/rules.d/51-android.rules"
exit 0

관련 정보