Connect an iPhone to a Raspi
Table of Contents
- Unlock your iPhone
- Connect and login into your raspi
- Update - Retrieve new lists of packages
- Upgrade - Perform an upgrade
- Install the necessary packages
- Connect the iPhone with the raspi via USB
- Accept the trust dialog on the iPhone
- Pair the phone
- Accept another trust dialog the on the iPhone
- Create a mount folder
- Mount the iPhone
- Approve success
- Summary of all commands to copy/paste
Environment:
- iPhone 5SE iOS 11.0.1 (15A402)
- Raspberry Pi 3 (4.19.66-v7+)
Most of the steps below are a gist of this blog post1
Unlock your iPhone
Unlock/Enter the pass-code (in case you have one) on your iPhone in order to avoid errors.
Connect and login into your raspi
Existence of an entry ‘Host raspi’ in ~/.ssh/config is assumed:
ssh raspi
Update - Retrieve new lists of packages
sudo apt-get update
Upgrade - Perform an upgrade
sudo apt-get upgrade
Install the necessary packages
sudo apt-get install libimobiledevice-utils
sudo apt-get install usbmuxd
sudo apt-get install ifuse
Connect the iPhone with the raspi via USB
Accept the trust dialog on the iPhone
Pair the phone
idevicepair pair
SUCCESS: Paired with device 3b9...
ERROR: Please accept the trust dialog on the screen of device 3b9...
, then attempt to pair again.
Accept another trust dialog the on the iPhone
Create a mount folder
sudo mkdir /mnt/iphone/ --verbose
mkdir: mkdir: created directory '/mnt/iphone/'
Mount the iPhone
Consider storing this command as a shortcut to your desktop for convenience:
ifuse /mnt/iphone/
Approve success
tree -d -L 1 /mnt/iphone/
/mnt/iphone/
├── Books
├── CloudAssets
├── DCIM
├── Downloads
├── LoFiCloudAssets
├── MediaAnalysis
├── PhotoData
├── PhotoStreamsData
├── Photos
├── PublicStaging
├── Purchases
├── Radio
├── Recordings
└── iTunes_Control
14 directories
Summary of all commands to copy/paste
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libimobiledevice-utils
sudo apt-get install usbmuxd
sudo apt-get install ifuse
idevicepair pair
sudo mkdir /mnt/iphone/ --verbose
ifuse /mnt/iphone/
tree -d -L 1 /mnt/iphone/