Skip to content

Manage and control iOS devices from a Linux environment using USB.

License

Notifications You must be signed in to change notification settings

davidecelentano/iosctlsh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 

Repository files navigation

iOS Control - Manage iOS devices on Linux via USB

A Linux-based command-line utility for managing iOS devices, including backups, restores, updates, and more.

Disclaimer

This project is an independent, open-source tool and is not affiliated with, endorsed by, or sponsored by Apple Inc. iOS, iPhone, and other related trademarks are the property of Apple Inc. This tool is provided as-is for managing iOS devices on Linux systems.


Table of Contents


About the Project

iosctlsh is a Linux-based command-line utility designed to manage iOS devices effortlessly. From performing software updates to creating backups, restoring encrypted backups, and enabling developer mode, this tool simplifies complex iOS management tasks for Linux users.

Features

  • Perform iOS software updates and restores using signed firmwares downloaded from ipsw.me.
  • Create full backups or delta (incremental) backups.
  • Restore backups from other iOS devices or encrypted backups.
  • Enable Developer Mode for advanced debugging and development tools.
  • Exit or enter Recovery Mode.
  • Retrieve detailed device diagnostics, including model information and encryption backup status.

Built With

  • Bash - Shell scripting language.
  • pymobiledevice3 - A Python library for managing iOS devices.
  • jq - Command-line JSON processor.

Getting Started

To set up iosctlsh on your Linux system, follow these steps.

Prerequisites

Ensure you have the following installed:

  • usbmuxd:
    Check by running: usbmuxd --version

  • python3:
    Check by running: python --version

  • jq:
    Check by running: jq --version

  • python3-devel:
    Package name varies by distro

  • libusb:
    package name varies by distro

Installation

  1. Clone the repository: git clone https://github.com/davidecelentano/iosctlsh.git

  2. Navigate to the project directory: cd iosctlsh

  3. Make the script executable: chmod +x iosctl.sh

  4. Run the script: ./iosctl.sh

Overview

Screenshot From 2025-01-22 23-19-02

License

This project is licensed under the GNU General Public License v3.0. See the LICENSE file for details.