〖 Android 〗 SSHD 와 Bash Shell 빠 른 배치 (프로그램: DroidSSHD 와 Better Terminal Emulator Pro)
8514 단어 emulator
~ ~ 이 글 은 개인 설정 기록 만 ~ ~
저 는 항상 sshd 로 장 치 를 연결 해 야 하기 때문에 logcat 로 그 를 캡 처 하 는 것 이 너무 편리 하고 문 제 를 조사 하 는 데 편리 하 며 여러 사람 이 공유 할 수 있 습 니 다.
그리고 USB 구멍 제한 이 있 는 사람 에 게 이것 은 더욱 의미 가 있다.
슈퍼 단말기 증강 패 키 지 를 내부 네트워크 에 배치 하 는 것 도 다운 로드 를 편리 하 게 하기 위해 서 이다. 왜냐하면 언제든지 외부 네트워크 에 올 라 갈 수 있 는 것 이 아니 고 외부 네트워크 의 다운로드 가 너무 느리다.
패키지 의 설정 이 상대 적 으로 번 거 롭 고 bid 9 도 메 인 네 임 분석 서버, nginx 또는 apache 2 웹 서버 를 설정 해 야 합 니 다.
그러나 일반 개발 자 들 에 게 이런 게임 을 만 드 는 서버 는 아무것도 아니다.
그 밖 에 ssh 는 adb 셸 과 같 지 않 고 일부 환경 변수 도 없다.
이 럴 때 pm 또는 am 명령 을 직접 실행 하면 Android 장치 가 다시 시 작 됩 니 다.
물론 이것 도 방법 이 없 는 것 이 아니 라 뒤에서 제공 하 는 sshcmd 가 이 작은 문 제 를 해결 할 수 있 습 니 다.
파일 다운로드:
1. DroidSSHdv06.apk 다운로드 1 (google) 다운로드 2 (국내)
2. BetterTerminalEmulatorPro. apk (슈퍼 단말기) 다운로드 1 (google) 다운로드 2 (국내)
3. [선택 가능] 슈퍼 터미널 강화 팩 bettermproweb.zip 다운로드
설치 용도:
1. DroidSSHD 와 슈퍼 터미널 설치
2. [선택 가능] 스트레스 해소 bettertermpro_웹. zip 에서 nginx 나 apache 2 에 구 축 된 웹 서버 루트 디 렉 터 리 (직접 외부 네트워크 조건 다운로드 가 너무 느 립 니 다. 이 기계 가 hostA 라 고 가정 합 니 다)
3. [선택 가능] 핸드폰 으로 접속 하 는 와 이 파이, DNS 분석 서버 설정 (내부 도 메 인 네 임 분석 서비스 가 있 는 전제) 은 magicandroidapps. com 을 hostA 로 가리킨다.
SSHD 열기:
DroidSSHD 를 실행 하고 루트 권한 으로 실행 할 것 을 선택 하 십시오. 포트 번호 설정 3322 를 가정 하고 Start on boot 를 선택 한 다음 Start 를 선택 하 십시오.
ssh_config 설정:
vi ~/.ssh/config
설정 정 보 를 입력 하 십시오. 예 를 들 어 제 샤 오미 2 핸드폰 은 어떻게 설정 되 어 있 습 니까?
Host xiaomi
HostName 55.55.137.149
Port 3322
User root
비밀번호 없 는 로그 인:
ssh-copy-id xiaomi
$HOME 변수 가 DroidSSHD 에 의 해/sdcard 로 지정 되 었 기 때문에 xiaomi 라 는 장치 에 로그 인하 여 작업 을 수행 해 야 합 니 다.
ssh xiaomi 로그 인 후 다음 명령 을 수행 합 니 다:
busybox=/data/data/com.magicandroidapps.bettertermpro/bin/busybox.exe
$busybox cp /sdcard/.ssh/authorized_keys /data/data/br.com.bott.droidsshd/files/etc/authorized_keys
uid_ssh=$($busybox ls -l /data/data/br.com.bott.droidsshd/files | $busybox awk '{print $3}' | $busybox head -n1)
uid_num=$($busybox id $uid_ssh|$busybox awk -F'[=(]' '{print $2}')
$busybox chown $uid_num:$uid_num /data/data/br.com.bott.droidsshd/files/etc/authorized_keys
unset uid_ssh
unset uid_num
$busybox mount -o remount,rw /system
$busybox cp /data/data/com.magicandroidapps.bettertermpro/bin/scp /system/xbin/scp
$busybox cp /data/data/com.magicandroidapps.bettertermpro/bin/sftp-server /data/data/br.com.bott.droidsshd/files/bin/
unset busybox
scp 와 sftp - server 를 복사 하 는 것 은 DroidSSHD 가 sshfs 마 운 트 를 지원 하고 파일 작업 을 편리 하 게 하기 위해 서 입 니 다.
sshcmd:
adb 셸 명령 대신 ssh 명령 을 완전히 대체 합 니 다.
#!/bin/bash
# adb shell , adb shell !
# self: get location
self=$(readlink -f $0)
self_dir=$(dirname $self)
DEVICE=${DEVICE:-'xiaomi'}
busybox=/data/data/com.magicandroidapps.bettertermpro/bin/busybox.exe
# run command
ssh -F $emmdevices $DEVICE \
$busybox env \
LOCAL_ENV_CURR_MODEM=/dev/block/platform/msm_sdcc.1/by-name/modem1 \
LOOP_MOUNTPOINT=/mnt/obb \
LD_LIBRARY_PATH=/vendor/lib:/system/lib \
BOOTCLASSPATH=/system/framework/core.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/framework_ext.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar:/system/framework/qcom.fmradio.jar \
PATH=/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin \
LOCAL_ENV_CURR_SYSTEM=/dev/block/platform/msm_sdcc.1/by-name/system1 \
MKSH=/system/bin/sh \
ANDROID_DATA=/data \
ANDROID_ROOT=/system \
HOSTNAME=android \
SHELL=/system/bin/sh \
ANDROID_PROPERTY_WORKSPACE=8,65536 \
EXTERNAL_STORAGE=/storage/sdcard0 \
ANDROID_ASSETS=/system/app \
TERM=vt100 \
ASEC_MOUNTPOINT=/mnt/asec \
HOME=/data \
ANDROID_BOOTLOGO=1 \
"$@"
이렇게, 유사 명령 env DEVICE = xiaomi./sshcmd am start - n 을 사용 합 니 다. com. easyapp. injecta/com. fake. activity. fakeUtil 명령 행 을 통 해 프로그램 을 시작 할 수 있 습 니 다.
sshpidcat:
물론 logcat 를 잡 을 때 프로그램 을 지정 하 시 겠 습 니까?
혹시 여러분 이 원 하 는 캡 처 로 그 는 이 렇 습 니 다: logcat < packagename > 관련 로그 출력 만 캡 처 할 것 을 지정 합 니 다.
맞아요. pidcat 를 사용 하면 완성 할 수 있어 요. 다운로드 (github)
그러나 이것 도 USB 연결 에 의존 합 니 다. 간단 한 수정 을 통 해 ssh 를 통 해 지정 한 apk 로그 출력 을 캡 처 할 수 있 습 니 다 (이전 sshcmd 에 의존)
파일 이 크기 때문에 파일 을 직접 다운로드 합 니 다.
sshpidcat. zip (sshcmd 와 sshpidcat 두 파일 포함) 다운로드
유사 명령 을 이렇게 사용 합 니 다. env DEVICE=xiaomi ./sshpidcat com. easyapp. injecta 는 캡 처 만 가능 합 니 다. com. easyapp. inject 의 출력
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
firebase functions의 emulator에 storage가 추가되었으므로 시도했다.$ firebase init emulators↓(*) Authentication Emulator (*) Functions Emulator (*) Firestore Emulator ( ) Database Emulato...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.