I spotted an intriguing note in the release notes for osxphotos 0.51.7:
Added ability to read Photos.sqlite from iPhone
This lead me to osxphotos issue #745 which lead me to How to access iPhone files with a disk mount which lead me to ifuse and homebrew-fuse .
Here's what worked for me.
system_profiler SPUSBDataType -detailLevel mini | grep -e iPhone -e Serial
and looking for the first number. It will look something like 00008110001631C105BA801E
.00008110-001631C105BA801E
- you will need this laterbrew install macfuse
brew install gromgit/fuse/ifuse-mac
mkdir /tmp/iPhone
ifuse /tmp/iPhone --udid 00008110-001631C105BA801E
- using the serial number you figured out earliermkdir /tmp/iPhone
again.ifuse /tmp/iPhone --udid 00008110-001631C105BA801E
again - this time it should workIf everything goes right, you can run open /tmp/iPhone
to open a Finder window showing at least some of the contents of your phone. You can also cd /tmp/iPhone
to start poking around from the terminal.
The easiest way to find SQLite databases to explore is to run:
find /tmp/iPhone | grep 'wal'
This searches for files with names like downloads.28.sqlitedb-wal
- which indicate a SQLite database that has been opened in WAL mode.
On my iPhone I get these:
/tmp/iPhone/Downloads/downloads.28.sqlitedb-wal
/tmp/iPhone/Books/MetadataStore/BookMetadataStore.sqlite-wal
/tmp/iPhone/Books/Sync/Database/OutstandingAssets_4.sqlite-wal
/tmp/iPhone/Radio/Radio.db-wal
/tmp/iPhone/iTunes_Control/iTunes/MediaLibrary.sqlitedb-wal
/tmp/iPhone/MediaAnalysis/mediaanalysis.db-wal
/tmp/iPhone/PhotoData/Caches/GraphService/CLSBusinessCategoryCache.Nature.sqlite-wal
/tmp/iPhone/PhotoData/Caches/GraphService/CLSContactCache.sqlite-wal
/tmp/iPhone/PhotoData/Caches/GraphService/musiccache.sqlite-wal
/tmp/iPhone/PhotoData/Caches/GraphService/CLSLocationCache.sqlite-wal
/tmp/iPhone/PhotoData/Caches/GraphService/CLSPublicEventCache.sqlite-wal
/tmp/iPhone/PhotoData/Caches/GraphService/PhotosGraph/construction-photosgraph.kgdb-wal
/tmp/iPhone/PhotoData/Caches/GraphService/PhotosGraph/photosgraph-tmp.kgdb-wal
/tmp/iPhone/PhotoData/Caches/GraphService/PhotosGraph/photosgraph.kgdb-wal
/tmp/iPhone/PhotoData/Caches/GraphService/CLSBusinessCategoryCache.POI.sqlite-wal
/tmp/iPhone/PhotoData/Caches/GraphService/CLSBusinessCategoryCache.ROI.sqlite-wal
/tmp/iPhone/PhotoData/Caches/GraphService/PGCurationCache.sqlite.sqlite-wal
/tmp/iPhone/PhotoData/Caches/GraphService/CLSBusinessCategoryCache.AOI.sqlite-wal
/tmp/iPhone/PhotoData/Caches/search/psi.sqlite-wal
/tmp/iPhone/PhotoData/CPL/storage/store.cloudphotodb-wal
/tmp/iPhone/PhotoData/Photos.sqlite-wal
You can then open them in Datasette by specifying the filename without the -wal
extension. For example:
datasette /tmp/iPhone/Radio/Radio.db
Created 2022-09-13T21:03:15-07:00, updated 2022-09-13T21:33:31-07:00 · History · Edit