initramfsでadbを実行する方法は?

initramfsでadbを実行する方法は?

私のフックがうまくいくようです(時々最初の実行は失敗しますが、もう一度実行するとライブラリの問題はないようです)。 initramfsにソケットサポートがないようです。私のシステムはDebian 9です。一般的なDebianシステムはソケットサポートを提供しているようですman systemd.socekt.5。一般的な Debian システムの起動に使用する場合にも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

関連情報