Backup files to MS OneDrive manually and validate


I’ve written up a short guide to securely backup files to MS OneDrive manually, along with a tool to retrieve SHA1 hashsums computed by OneDrive in order to check the files were uploaded correctly.

These are available here: GitHub - shreepads/linux-onedrive-backup

Note that the manual upload to OneDrive is handled via their web UI.

Naturally the question would be ‘Why on earth would you do this’ to which I’ll paste the explanation from the repo README:

  • Why not a home NAS: I don’t have the time and resources (including stable power supply) to setup a home NAS solution that can provide comparable redundancy at a comparable cost. Also it would not be portable.
  • Why not use AWS S3 or something similar: Cost; under my family plan I get OneDrive storage at less than $1 per month per TB, nothing else comes close. Of course OneDrive doesn’t provide resiliency and availability SLAs for personal accounts similar to S3 or other enterprise-grade cloud object storage. The less said about Google cloud storage the better!
  • Why not a proper encrypted automated backup solution like Tarsnap or Spideroak: First, I think Microsoft will be more viable, long term, than minor players like Tarsnap and Spideroak. Spideroak is a lot more expensive than OneDrive and its desktop client is closed source. Tarsnap is great, but again more expensive than OneDrive even after taking dedup savings into account.
  • Why use the OneDrive web UI to upload files manually: Microsoft doesn’t provide a Linux client, there are third party clients but I don’t trust they will be maintained or function correctly.
  • Why the special webapp just to verify the hashes of the uploaded data: The OneDrive web UI doesn’t provide this information at all, let alone in a way that allows for an easy compare.

Hopefully someone finds this useful, but I doubt it! :grinning:

1 Like