# - bof - # # :a # - - # # - Arch - # # :a.1 # - - # # - Arch - # # :a.2 # - - # # - Documentation - # https://jaketrent.com/post/connect-iphone-arch-linux/ # :a.3 # - - # # - Install software - # sudo pacman -S libimobiledevice --noconfirm --needed; yay -S ifuse --noconfirm --needed; # :a.4 # - - # # - Start service - # sudo systemctl start usbmuxd.service; systemctl status usbmuxd.service; idevicepair pair; # :a.5 # - - # # - Create folder & mount phone - # sudo mkdir -p /mnt/iphone; sudo ifuse -o allow_other /mnt/iphone; ls /mnt/iphone; # :b # - - # # - Ubuntu - # # - - # # - Very important - # Copy this folder to Downloads folder. https://askubuntu.com/questions/812006/how-can-i-mount-my-iphone-6s-on-ubuntu-16-04 sudo apt-get install ideviceinstaller python-imobiledevice libimobiledevice-utils libimobiledevice6 libplist3 python-plist usbmuxd ifuse; sudo apt-get install libimobiledevice6 libplist3 ifuse; sudo apt-get install libtool autoconf automake; sudo apt-get install libxml2-dev python-dev; sudo apt-get install build-essential; sudo apt-get install libssl-dev; # - - # Step 1: Installing libplist Download latest version of libplist from GitHub. Extract the content of the zip file. cd libplist-master ./autogen.sh make; sudo make install; # - - # Step 2: Installing libusbmuxd Download latest version of libusbmuxd from GitHub. Extract the content of the zip file. cd libusbmuxd-master ./autogen.sh make; sudo make install; # - - # Step 3: Installing libimobiledevice sudo apt-get install libssl-dev; Download latest version of libimobiledevice from GitHub. Extract the content of the zip file. cd libimobiledevice-master ./autogen.sh; make; sudo make install; # - - # Step 4: Installing a better version of usbmuxd sudo apt-get remove usbmuxd; sudo apt-get install libimobiledevice-dev libplist-dev libusb-dev libusb-1.0.0-dev libtool-bin libtool; Download latest version of usbmuxd from GitHub. Extract the content of the zip file. cd usbmuxd-master ./autogen.sh; make; sudo make install; # - - # Step 5: Installing ifuse sudo apt-get install libfuse-dev; Download latest version of ifuse from GitHub. Extract the content of the zip file. cd ifuse-master ./autogen.sh; ./configure make; sudo make install; # - - # Step 6: Running usbmuxd and attaching iPhone Run usbmuxd in the terminal and then plug in the iPhone. sudo apt install usbmuxd; usbmuxd Now check to see if the device was recognized correctly by doing dmesg | grep ipheth If nothing shows up, try disconnecting the iPhone, running usbmuxd again, and then plugging back in. Then check again. # - - # Step 7: Creating a mount point for the iPhone sudo mkdir /media/iPhone sudo chmod 777 /media/iPhone # - - # Step 8: Editing the ifuse configuration file The ifuse configuration file /etc/fuse.conf requires editing if you want to access the iPhone without being root. Edit the configuration file using your favorite editor, for example gedit sudo gedit /etc/fuse.conf In the file ensure that the following two lines are under the line that says # Allow non-root users to specify the allow_other or allow_root mount options: op$ user_allow_other Save the file and quit the editor. # - - # Step 9: Pairing the iPhone Run the following line in order to pair your iPhone using idevicepair: idevicepair pair; # - - # Step 10: Mounting with ifuse Run the following line to mount the device at the mount point specified earlier: ifuse /media/iPhone NOTE: At this point you may mount the root filesystem if you have your phone jailbroken by doing the following line instead ifuse /media/iPhone/ --root The iPhone should now be accessible at /media/iPhone through your file browser. When you want to unmount, do the following two lines fusermount -u /media/iPhone/ idevicepair unpair; # - eof - #