Local Shell
ZestSSH can open a local shell session directly on your Android device, giving you a terminal interface to the device’s own operating system without requiring any remote server.
Availability
Section titled “Availability”| Platform | Status |
|---|---|
| Android | Full support |
| iOS | Not available (sandboxing restrictions) |
| Windows | Not available (use Windows Terminal or PowerShell) |
| macOS | Not available (use Terminal.app) |
| Linux | Not available (use your distribution’s terminal emulator) |
Local shell is an Android-only feature. iOS prohibits spawning shell processes due to its strict sandboxing model. On desktop platforms, the native terminal emulator is readily accessible, so ZestSSH does not duplicate that functionality.
Quick Start
Section titled “Quick Start”- On the home screen, create a new connection and select Local Shell as the protocol.
- No hostname, port, or credentials are needed.
- Tap Connect to open a shell session.
How It Works
Section titled “How It Works”ZestSSH spawns /system/bin/sh as a child process on Android, inheriting the app’s environment variables. The process stdout and stderr are piped to the terminal emulator, and user input is forwarded to the process stdin.
The local shell runs with the same permissions as the ZestSSH app itself. On non-rooted devices, this means you have access to the app’s own sandbox and any commands available in Android’s /system/bin directory (such as ls, cat, ping, ip, netstat, and toybox utilities).
Use Cases
Section titled “Use Cases”- Network diagnostics — Run
ping,traceroute,ip addr, ornetstatfrom your device. - File inspection — Browse the app’s local storage or accessible directories.
- Script testing — Test shell one-liners or small scripts locally before running them on a remote server.
- Learning — Practice shell commands in a safe, local environment.
- Connectivity checks — Test network reachability before establishing SSH connections to remote servers.
Limitations
Section titled “Limitations”- Android only — Not available on iOS or desktop platforms.
- Limited permissions — On non-rooted devices, the shell runs in the app’s sandbox. You cannot access system directories or other apps’ data.
- No PTY resize — Terminal resize is best-effort. The shell process does not receive a true PTY resize signal; ZestSSH sets COLUMNS and LINES environment variables as a workaround.
- Limited utilities — Only commands available in Android’s
/system/binand the BusyBox/Toybox binaries are accessible. Tools likeapt,gcc, orpythonare not available unless you install a terminal environment like Termux separately. - No root access — The shell does not have root privileges unless the device is rooted and grants ZestSSH superuser access.
Troubleshooting
Section titled “Troubleshooting””Local shell is only available on Android”
Section titled “”Local shell is only available on Android””You are running ZestSSH on a platform that does not support local shell. On iOS, this is blocked by the operating system. On desktop, use your system’s built-in terminal.
Shell opens but no prompt appears
Section titled “Shell opens but no prompt appears”- Press Enter to trigger the prompt.
- The shell process may take a moment to initialize on older devices.
Commands not found
Section titled “Commands not found”Many standard Linux utilities are not included in Android’s minimal system shell. Try prefixing commands with toybox (e.g., toybox whoami) or check available commands with ls /system/bin.
Q: Is this the same as Termux?
A: No. The local shell is a basic /system/bin/sh process with limited utilities. Termux provides a full Linux environment with package management. ZestSSH’s local shell is intended for quick diagnostics and simple tasks, not as a replacement for Termux.
Q: Can I install packages in the local shell? A: No. Android’s system shell does not include a package manager. For a full Linux environment on Android, consider Termux.
Q: Does the local shell count toward my session limit? A: Yes. A local shell session counts as one active session for the purposes of the free tier session limit.