물론 ConnectBot이 있지만 스크립팅 할 수있는 것을 찾고 있습니다.
편집 : 여기에서 명확히하기 위해 터미널에서 스크립트를 실행하는 데 관심이 없습니다 . 내가하고 싶은 일은 자동 / 예약 방식으로 SSH 명령을 실행하는 것입니다. Tasker와 Locale Execute는 cron과 동일 하며 스크립트 에서 실행하려면 'ssh'명령 만 있으면 됩니다.
물론 ConnectBot이 있지만 스크립팅 할 수있는 것을 찾고 있습니다.
편집 : 여기에서 명확히하기 위해 터미널에서 스크립트를 실행하는 데 관심이 없습니다 . 내가하고 싶은 일은 자동 / 예약 방식으로 SSH 명령을 실행하는 것입니다. Tasker와 Locale Execute는 cron과 동일 하며 스크립트 에서 실행하려면 'ssh'명령 만 있으면 됩니다.
답변:
Google 에서 터미널 에뮬레이터 를 설치할 수 있습니다 . 또는 Better Terminal Emulator Pro가 있습니다. 루트가 아닌 전화로 터미널 에뮬레이터를 사용해 보았지만 제대로 작동하는 것 같습니다.
Better Terminal Emulator Pro에는 dropbear ssh client가 포함되어 있으며 명령 행 또는 실행기를 통해 시작할 수 있습니다. 저자의 추가 정보 .
내 원래의 질문은 ssh 바이너리에 관한 것이며 그에 대한 답변이 있으므로 해당 답변을 수락합니다. 그러나 언젠가 누군가에게 흥미로울 수있는 다른 방법이 있습니다.
Tasker + ConnectBot을 사용하여 일정에 따라 임의의 원격 (또는 로컬, 로컬 실행이 더 좋습니다) 명령을 실행할 수 있습니다.
1 단계 : ConnectBot에서 연결을 설정합니다.
2 단계 : connectbot을 호출하는 Tasker Task를 만듭니다.
3 단계 : 일반적으로 Tasker에서이 작업을 사용하십시오.
오래된 스레드이지만 BTEP에 대한 의견을 +1하고 싶었습니다.
또한 BTEP의 ssh 바이너리를 사용하고 있지만 링크하지 않고 경로에서 호출합니다 ./data/data/com.magicandroidapps.bettertermpro/bin/ssh root@192.168.1.1
또는 한 쌍의 키를 생성하고 공개 키 인증을 사용하십시오.
다양한 스크립트에서 SL4A r4의 위 명령을 사용하고 정상적으로 작동합니다. :)
이 작업을 수행하기 전에 a + x /data/data/com.magicandroidapps.bettertermpro/home/.ssh를 chmod해야했습니다.
이 작업이 완료되고 TitaniumBackup으로 BTEP를 백업 / 복원하면 권한이 유지됩니다. 즉, 새로운 ROM을 플래시하면 앱을 복원 할 수 있으며 모든 스크립트가 다시 작동합니다.
Android 4.4를 실행할 때 BotBrew Basil Experimental 을 성공적으로 사용 했습니다 . BotBrew Basil Experimental은 apt-get을 기반으로하므로 APK 및 부트 스트랩 설치 후 apt-get install dropbear
SSH 클라이언트 (및 서버)를 설치하기 위해 루트 쉘에서 수행했습니다.
터미널 에뮬레이터와 quickssh를 설치하십시오. Quickssh에는 dropbear도 포함되어 있습니다. 비용이 많이 들지 않습니다. 이는 매우 간단하고 dropbear를 기반으로하기 때문에해서는 안됩니다.
https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid
find -name ssh
user @ host
문제 해결됨
터미널 에뮬레이터는 스크립트 *를 절대적으로 지원합니다. 혐오 자들을 믿지 마십시오. 아직 익숙하지 않은 경우 BASH 셸 스크립팅을 배워야합니다. 스크립트를 작성하여 SD 카드에 저장하십시오. Term에서 "sh filename"으로 실행하십시오.
SSH와 관련하여 "스크립트"로 무엇을하고 싶은지 명확히하면 더 나은 권장 사항을 줄 수 있습니다.
* (실제로 BASH 스크립트를 지원하는 Android OS이므로 터미널 에뮬레이터는 Android 쉘에 대한 액세스 권한 만 부여하므로 본질적으로 스크립팅이 가능합니다)
스크립트에서 ssh를 호출하려면 ssh 키를 설정하기 만하면됩니다. 웹에는 백만 가지 방법이 있지만 Cyanogen 위키에는 Android 사용자에게 더 적합한 페이지가 있습니다. 키를 설정하면 일반적인 ssh 명령은 다음과 같습니다. ssh -i / PATH / TO / KEY USER @ IP
스크립트에 넣고 실행하면 원격 시스템에 로그인됩니다.
하지만 여기 당신이하고 싶은 생각이 있습니다. 원격 컴퓨터에서만 명령을 실행하려면 작은 따옴표로 묶으십시오. ssh -i / PATH / TO / KEY USER @ IP 'command'
로그인하지 않고 원격 컴퓨터에서 명령을 실행합니다. 옵션, 파이프, 리디렉션 등을 사용하여 명령을 실행할 수 있지만 간결하게 유지하는 것이 더 좋습니다. 지연을 제외하고 명령을 로컬로 실행하는 것과 동일하게 보이며 동일하게 사용할 수 있습니다.
로케일 실행은 실행할 명령에 대해 까다로울 수 있습니다. 작동하지 않으면 스크립트에 넣고 Locale Execute를 사용하여 스크립트를 실행하십시오.
또한 전화에있는 ssh 바이너리에 문제가 있었고 / system / xbin에서 옮기고 / system / xbin / ssh에서 Better Terminal Emulator ssh 바이너리에 대한 링크를 만드는 것이 더 안정적이라는 것을 알았습니다. BTEP 바이너리는 /data/data/com.magicandroidapps.bettertermpro/bin/ssh에 있습니다.
Botbrew 는 okpg
BSD 용 또는 최근 APT
데비안 용과 같은 Android 용 패키지 관리자입니다 . 꽤 좋은. 패키지로 ssh 클라이언트가 없지만 자체 패키지를 작성하는 데 익숙해지면 너무 어렵지 않습니다. 또한 다른 C / C ++ / etc 바이너리 및 라이브러리를 빌드하려는 경우 툴체인으로 유용 할 수 있습니다.
따라서 이것이 직접적인 대답은 아니지만 일부 사람들이 아는 것이 유용 할 수 있습니다.
이제 Termux라는 터미널이 있으며 openssh를 설치할 수 있습니다. Google Play Store , F-Droid 및 Github에서 사용할 수 있습니다.
AndFTP는 구성하는 모든 포트를 통해 연결할 수 있으므로 SSH를 통해 연결할 수 있습니다. 그러나 사용법을 스크립팅하는 것이 얼마나 쉬운 지 잘 모르겠습니다. 호스팅 서버에 항상 앱을 직접 사용하고 훌륭하게 작동합니다.
터미널 에뮬레이터로 SSH를 사용할 수 있는지 확실하지 않지만 시도해 볼 수도 있습니다. 나는 ADB와 관련하여 너무 게으른 일을하기 위해 그 응용 프로그램을 자주 사용합니다.
간단한 ssh 클라이언트가 흥미 롭다면 Android-NDK Bionic 라이브러리 drobpear-ssh-client-only로 만들었습니다. ftp://ftp.simtreas.ru/pub/my/dropbear/dropbear-ssh-only.tgz 소스 및 ftp://ftp.simtreas.ru/pub/my/dropbear/ssh 바이너리