On Sat, 22 Sep 2018 16:46:17 -0000 (UTC), Arlen H. Holder wrote:
While Apple Apologists like "joe" cry like babies whenever they interface
with the real world (Hint: They are used to "just giving up"), on the adult
newsgroups, we solve _every_ cross-platform problem we run into.
HINT: The minor hurdles that make Apple Apologists like "joe" cry like
babies are nothing to intelligent adults, who simply solve the issues.
Proof below...
**************************************************************************** 
How to read/write access iOS file systems on Ubuntu/Windows over USB cable 
Please improve so that all benefit from your efforts. 
**************************************************************************** 
The purpose of this apnote is to test read/write access to non-jailbroken 
iOS devices over USB cable using a dual-boot Windows10/Ubuntu18.04 PC. 
The goal is read/write access to the iOS device's visible file system 
to *both* Windows & Ubuntu, via the Linux file explorer & command line. 
Note that the iTunes abomination will *never* be installed on these PCs! 
Both Windows and Linux are *native* (i.e., zero additional software is 
needed for full read/write access to the entire visible file system of 
the iOS device. Everything is on the native operating system!) 
============================================================================ 
Section I: Native Ubuntu 18.04 Desktop 
============================================================================ 
0. Check what's installed natively when the iOS device is NOT connected: 
   a. Boot to Ubuntu 18.04 Desktop 
      <
http://img4.imagetitan.com/img.php?image=18_ios000.jpg> 
   b. Ensure ifuse and libimobiledevice-utils do not exist 
      $ which ifuse 
        (reports nothing) 
      $ which ideviceinfo 
        (reports nothing) 
   c. Note that libimobiledevice is installed, by default 
      $ sudo updateb 
      $ locate libimobiledevice 
        (reports stuff) 
   Apparently libimobiledevice is native, but not ifuse, nor are the 
   libimobiledevice-utils such as idevicepair & icevicesyslog, etc. 
   $ ifuse 
     Command 'ifuse' not found, but can be installed with: 
     sudo apt install ifuse 
   $ ideviceinfo 
     Command 'ideviceinfo' not found, but can be installed with: 
     sudo apt install libimobiledevice-utils 
============================================================================ 
1. Plug in an iOS device either before or after Ubuntu 18.04 has booted: 
   a. When you plug in the iPad for the first time, the iPad will ask: 
      "Trust this computer?" 
      <
http://img4.imagetitan.com/img.php?image=18_ios010.jpg> 
      Note: You won't see this message again after the first time. 
      Note that when you plug into Windows, you get a different message: 
      "Allow this device to access photos and videos?" 
      <
http://img4.imagetitan.com/img.php?image=18_ios020.jpg> 
   b. Notice two new icons show up on the desktop: 
      <
http://img4.imagetitan.com/img.php?image=18_ios030.jpg> 
      - iPad [a digital SLR icon] 
        (DCIM, read only, no thumbs) 
      - Documents on myipad [a monitor & keyboard icon] 
        (private space of the "good" apps, read/write, no thumbs) 
      <
http://img4.imagetitan.com/img.php?image=18_ios040.jpg> 
   c. Notice there is no Downloads yet 
      <
http://img4.imagetitan.com/img.php?image=18_ios050.jpg> 
   d. Notice there are no thumbnails yet 
      <
http://img4.imagetitan.com/img.php?image=18_ios060.jpg> 
   e. Notice you can only read from the DCIM directory tree. 
      <
http://img4.imagetitan.com/img.php?image=18_ios070.jpg> 
   f. Notice you can write to the private space of the good apps 
      (Namely: Adobe Acrobat, Excel, FileExplorer, GarageBand, 
      iMovie, Keynote, MFExplorer, MinimaList, NewsTapLite, Numbers, 
      Pages, PowerPoint, QuickSupport, RManager, SMBManager, Topo Reader, 
      VLC, Voice Recorder, WiFi HD, Word) 
      <iosxxx> 
   g. Determine your iOS device 40-hex-character serial number: 
      $ dmesg|grep SerialNumber: 
        SerialNumber: 6ee7ab2fa479394be85da7cb4aefc5d8b11b6f82 
      <iosxxx> 
   Note: 
      Rightclick in the VLC directory & select "Open in Terminal". 
       $ pwd 
         /run/user/1000/gvfs/afc:hose=<40char>,port=3/org.videolan.vlc-ios 
      <
http://img4.imagetitan.com/img.php?image=18_ios170.jpg> 
   Note: You can now copy any iOS device file over to Ubuntu or Windows. 
   Caveat: See addendum on Ubuntu mounting of Windows partitions below. 
============================================================================ 
2. Determine the iOS name of the folders that you want read/write access 
to: 
   a. Put your mouse cursor in "Documents on myipad" & press <Control+L> 
      <
http://img4.imagetitan.com/img.php?image=18_ios080.jpg> 
   b. This reports the true path to the "Documents on myipad" folder: 
      afc://6ee7ab2fa479394be85da7cb4aefc5d8b11b6f82 
      afc://<40-hex-character-unique-serial-number>:3/ 
      Note: If you put it in VLC you get 
      afc://6ee7ab2fa479394be85da7cb4aefc5d8b11b6f82:3/org.videolan.vlc-ios 
   c. Put your mouse cursor in DCIM and press control L 
   d. This reports the true path to the "DCIM" folder: 
      gphoto2://%5Busb%3A001,002%5D/DCIM 
      Note: If you put it in 101Apple you get 
      gphoto2://%5Busb%3A001,002%5D/DCIM/101APPLE 
   Note: You can now copy any iOS device file over to Ubuntu or Windows. 
   Caveat: See addendum on Ubuntu automounting of Windows partitions. 
============================================================================ 
3. Enable write access to both the DCIM & Downloads folders (among others): 
   a. Remove the ":3/" and put it in the space that Control L was in. 
      afc://6ee7ab2fa479394be85da7cb4aefc5d8b11b6f82 
   b. Notice a *new* Desktop icon shows up, named "myipad". 
   c. Notice you now have read/writeaccess to DCIM & Downloads (plus 
others). 
      Namely: Books,DCIM,Downloads,iMazing,iTunes_Control,MediaAnalysis, 
      PhotoData,Photos,PublicStaging,Purchases 
   d. Notice that the "iPad" mount is still read only (which doesn't 
matter). 
   e. Notice that you have no thumbnails anywhere. 
   Note: Rightclick in the DCIM directory & select "Open in Terminal". 
         $ pwd 
           /run/user/1000/gvfs/gphoto2:hose=%5Busb%3A001%2C002%5D/DCIM 
   Note: You can now copy any iOS device file over to Ubuntu or Windows. 
   Caveat: See addendum on Ubuntu mounting of Windows partitions below. 
============================================================================ 
Section II: Adding ifuse & libimobiledevice-info to Ubuntu 18.04 Desktop 
NOTE: This is optional! Adding these only adds minor capabilities that 
      wasn't already in the native operating system commands above. 
============================================================================ 
4. Install the ifuse iOS file system to run in the background on Ubuntu: 
      <
http://img4.imagetitan.com/img.php?image=18_ios100.jpg> 
   a. Optionally, update and upgrade your system: 
      $ sudo apt update && sudo apt upgrade 
      <
http://img4.imagetitan.com/img.php?image=18_ios090.jpg> 
   b. Install the ifuse iOS file system on Ubuntu: 
      $ sudo apt install ifuse 
   c. Look at the ifuse help 
      <
http://img4.imagetitan.com/img.php?image=18_ios110.jpg> 
      $ which ifuse 
        /usr/bin/ifuse 
      $ ifuse --help 
        Usage: ifuse MOUNTPOINT [OPTIONS] 
        Mount directories of an iOS device locally using fuse. 
        -o === mount options 
        -u === mount specific device by its 40-digit device UDID 
        -d === enable libimobiledevice communication debugging 
        -- root === mount root file system (jailbroken device required) 
        -- documents APPID === mount 'Documents' folder of identified app 
        -- container APPID === mount sandbox root of identified app 
============================================================================ 
5. EXAMPLE 1: Mount the entire iOS visible file system on Ubuntu: 
      <
http://img4.imagetitan.com/img.php?image=18_ios120.jpg> 
   a. Create a mount point directory for your iOS files 
      $ mkdir -p $HOME/data/iosfs 
   b. Access the iOS device via $HOME/data/iosfs 
      $ ifuse $HOME/data/iosfs 
   c. This immediately puts an "iosfs" icon on the Desktop. 
   d. Notice you have write access to the iOS Downloads & DCIM (& others). 
      Namely: Books,DCIM,Downloads,iMazing,iTunes_Control,MediaAnalysis, 
      PhotoData,Photos,PublicStaging,Purchases 
      <
http://img4.imagetitan.com/img.php?image=18_ios130.jpg> 
      <
http://img4.imagetitan.com/img.php?image=18_ios140.jpg> 
      <
http://img4.imagetitan.com/img.php?image=18_ios150.jpg> 
   e. Notice you now have thumbnails. 
   f. Notice you have all the power of Linux, on your iOS device now. 
  
   To unmount: 
      $ fusermount -u $HOME/data/iosfs 
============================================================================ 
6. EXAMPLE 2: Mount the iOS device by its unique 40-hex-character UDID: 
   a. Copy the serial number into your buffer 
      $ dmesg | grep SerialNumber: 
   b. Mount the iOS device by that serial number UDID 
      $ mkdir $HOME/data/ipad 
      $ ifuse $HOME/data/ipad -u 6ee7ab2fa479394be85da7cb4aefc5d8b11b6f82 
   c. This immediately puts an "iosfs" icon on the Desktop. 
   d. Notice you have write access to the iOS Downloads & DCIM (& others). 
      Namely: Books,DCIM,Downloads,iMazing,iTunes_Control,MediaAnalysis, 
      PhotoData,Photos,PublicStaging,Purchases 
   e. Notice you now have thumbnails. 
   f. Notice you have all the power of Linux, on your iOS device now. 
   To unmount: 
      $ fusermount -u $HOME/data/ipad 
============================================================================ 
7. EXAMPLE 3: Mount an iOS application's "documents" folder by its APPID: 
      <
http://img4.imagetitan.com/img.php?image=18_ios160.jpg> 
    $ mkdir $HOME/data/vlc_documents 
    $ ifuse $HOME/data/vlc_documents --documents org.videolan.vlc-ios 
    
   This puts an icon named "vlc_documents" on your desktop, which is 
   read/write access, with thumbnails, to the iOS VLC documents directory. 
      <
http://img4.imagetitan.com/img.php?image=18_ios180.jpg> 
   To unmount: 
      $ fusermount -u $HOME/data/vlc_documents 
============================================================================ 
8. Install libimobiledevice-utils: 
    $ sudo apt install libimobiledevice-utils 
============================================================================ 
9. EXAMPLE 4: 
    $ ideviceinfo -d 
      REPORTS copious information about that connected iOS device. 
   $ idevicesyslog 
     REPORTS the system log of the iOS device (extremely verbose output!). 
============================================================================ 
10. Please suggest further useful examples based on your experiences. 
============================================================================ 
Caveat: 
If you leave Windows 10 at the default setting of fast startup, 
then Ubuntu will mount the entire Windows file system as read only 
(apparently because fast startup is a form of hibernation). 
To automatically mount the entire Windows filesystem as read/write, 
simply turn off fast startup in the Windows 10 settings: 
Start > Settings > System > Power & sleep > Related settings 
 > Additional power settings > Choose what the power button does > 
 or (depending on your number of buttons) 
 > Additional power settings > Choose what the power buttons do > 
 > Change settings that are currently unavailable 
Change from: 
 [x]Turn on fast startup (recommended) 
    This helps start your PC faster after shutdown. Restart isn't affected. 
 [x]Sleep  (Show in Power menu.) 
 [_]Hibernate (Show in Power menu.) 
 [x]Hibernate (Show in Power menu.) 
 [x]Lock (Show in account picture menu.) 
Change to: 
 [_]Turn on fast startup (recommended) 
    This helps start your PC faster after shutdown. Restart isn't affected. 
 [_]Sleep  (Show in Power menu.) 
 [_]Hibernate (Show in Power menu.) 
 [_]Hibernate (Show in Power menu.) 
 [_]Lock (Show in account picture menu.) 
And then press the "Save changes" button. 
============================================================================ 
============================================================================