
PocketBook devices are built on a relatively open Linux foundation, and unlike Kindle or Kobo, PocketBook ships with a developer mode that grants root access without exploiting a vulnerability. This guide walks you through enabling SSH, understanding the filesystem layout, installing custom reading apps, and respecting the device’s hardware limits.
Enabling developer mode and SSH
PocketBook’s developer mode gives you root access over SSH and telnet through a simple settings toggle. No jailbreak or exploit is required — the feature is built into the stock OS.
- On your PocketBook, open Settings → About Device.
- Tap the firmware version number five times in rapid succession. A new “Developer Mode” option will appear in the main Settings menu.
- Open Settings → Developer Mode and toggle SSH Server to “On.” The device will display the IP address and port (default port 22). Note that the Wi-Fi interface must be connected for SSH to work.
- From your computer, connect via SSH:
ssh root@<pocketbook-ip>
The default password is no password — just press Enter at the password prompt. Change this immediately by running passwd after your first login to prevent unauthorized access on public networks.
Alternative: USB networking. If Wi-Fi is unreliable or you need a faster connection, PocketBook supports USB gadget mode. Connect via USB, enable “USB Networking” in Developer Mode, and SSH to
192.168.2.1. This avoids Wi-Fi entirely and is more secure in public spaces.
Understanding the filesystem
The PocketBook filesystem is a standard embedded Linux layout with some device-specific quirks:
/mnt/ext1/— The user-accessible internal storage partition. This is what you see when you connect via USB. It survives factory resets./ebrmain/— Read-only system partition containing the PocketBook reading application (pbreader) and UI binaries. Do not modify files here directly; use overlay mounts instead./mnt/ext1/applications/— The directory PocketBook scans for third-party applications. Any.appfile placed here appears in the Applications menu./mnt/ext1/system/— User-level configuration files, including language packs, themes, and font overrides.
The system partition is a squashfs filesystem — it’s read-only by design and cannot be permanently modified without rebuilding the firmware image. This is actually a safety feature: no matter what you mess up in userspace, a factory reset restores the device to a clean state.
Installing custom reading apps
The PocketBook application framework uses .app files, which are simple shell scripts with a specific header format. Here’s how to install a custom reader:
Installing KOReader: Download the PocketBook build of KOReader from the project’s GitHub releases page. Extract the archive and copy the koreader.app folder to /mnt/ext1/applications/. It will appear in the Applications menu after a reboot or a library refresh. KOReader on PocketBook supports the full feature set — EPUB, PDF with reflow, CBZ, DJVU, OPDS catalogs, and the built-in Wallabag client.
Creating your own .app launcher: A minimal PocketBook app is a directory containing an application.xml descriptor and a launch script. Here’s a template for launching a custom binary:
<?xml version="1.0" encoding="utf-8"?>
<application>
<title>My Script</title>
<description>Custom shell utility</description>
<entry>./run.sh</entry>
<icon>./icon.bmp</icon>
</application>
The run.sh script can do anything root can: mount network shares, run rsync backups, start a VNC server, or launch an alternative EPUB renderer. PocketBook apps have full framebuffer access, so you can draw directly to the screen using the built-in inkview library or bypass it entirely for custom UI.
Installing terminal and system utilities
Once you have SSH access, you can install standard Linux tools. PocketBook uses BusyBox by default, which is limited. For a full toolset:
- Download a statically compiled ARM binary of your desired tool (e.g.,
rsync,htop,git,python3). - Place it in
/mnt/ext1/system/bin/(create the directory if it doesn’t exist). - Add
/mnt/ext1/system/bin/to yourPATHin/mnt/ext1/system/.profile.
For a full terminal environment on the device itself, install pbterm — a terminal emulator .app specifically written for PocketBook. It gives you an on-device shell with the software keyboard, useful for quick tasks without a laptop.
Safety limits and best practices
PocketBook devices have modest hardware — typically a single-core 1 GHz ARM CPU and 512 MB of RAM. Respect these limits:
- Don’t run background daemons continuously. An always-on SSH server has negligible CPU cost, but things like a VNC server, a web server, or a continuous
rsyncsync will drain the 1500 mAh battery in under 4 hours. - Avoid writing to the internal flash excessively. The internal storage uses eMMC flash with limited write cycles. Logging every page turn or running a database server from internal storage will wear it out. Use RAM disks (
tmpfs) for temporary files and logs. - The CPU throttles aggressively above 45°C. If the device feels warm to the touch, the CPU is clocking down to 300 MHz. Let it cool before continuing intensive operations like PDF re-rendering.
- Use overlay mounts, not direct system partition writes. If you need to modify a system file (e.g., a font configuration), copy it to the user partition and mount it over the original with
mount --bind. This keeps changes reversible. - Back up your
/mnt/ext1/system/directory before experimenting. That directory contains all user-level configuration. A broken config file can cause boot issues, and having a backup means you can restore via USB even if the UI won’t load.
PocketBook’s developer-friendly approach makes it the easiest mainstream e-reader platform for tinkerers. The factory-shipped SSH access and squashfs system partition mean you can experiment freely with a hard safety net: when in doubt, factory-reset from the Settings menu and start fresh.