Skip to content

blobsaver on Linux

airsquared edited this page Apr 2, 2022 · 19 revisions

Reading from device

You may get an error about being unable to load native libraries when trying to read from device.

  1. Make sure you have libimobiledevice and libirecovery installed.
  2. The libraries might be installed under a different directory that blobsaver hasn't detected. If the libraries are installed but you are still getting an error, try symlinking them to /usr/lib. For example, ln -s /path/to/libimobiledevice.so /usr/lib.

For ARM

blobsaver can be installed from releases for Linux 64-bit x86 machines. If you're using a Raspberry Pi or any other architecture, you will need to compile blobsaver yourself.

  1. Download the source code for the release you want. I would recommend using the source code of the latest release instead of downloading the latest commit, which may contain bugs.
  2. Download tsschecker for your architecture from here and replace the file in dist/linux/tsschecker with your tsschecker compiled for ARM.
  3. Install JDK 18 for your computer.
  4. Install the libraries libimobiledevice and libirecovery, which should be in your distribution's default repositories.
  5. Run ./gradlew build in the root of the repository and you should have the the compiled files in the directory build/distributions

What if I don't have/want systemd?

Most distributions come with systemd, but if you prefer not to use systemd for saving blobs automatically in the background you can set it up using something like cron instead. Once you have your auto-save settings set up with your devices enabled, set up cron or something else to call blobsaver with the --background-autosave argument at the interval you want. /path/to/blobsaver --background-autosave.