Just a tiny bit of back story…

I have my OneDrive folder pointed at D:\OneDrive and all of my life’s photos are in D:\OneDrive\Pictures. When I snap a picture with my iPhone, the OneDrive app uploads it to the cloud, and my desktop machine’s OneDrive app subsequently downloads it.

Now, being the paranoid person I am about losing data due to ransomware (.5% chance), losing a hard drive (4.5% chance), or my own stupity (95% chance) I also pay for a Backblaze subscription. It backs up the entire C and D drives (save for a few exempted folders/file types like .vhdx, .iso, C:\Temp, etc.)

My 2-year Backblaze subscription just renewed the other day so I popped open the desktop app just to “check things out” as one does. I immediately noticed that the amount of files it’s backing up is suspiciously low.

Backblaze-reported backup size compared to actual OneDrive disk usage
Backblaze’s backup size is significantly smaller than my OneDrive folder

Okay, something’s up…So I logged into the Backblaze website and folder-by-folder I started comparing what had been backed up with what I have on disk. Low and behold, I saw that my OneDrive Pictures folder is not being backed up.

Pictures/Videos are the #1 reason why I pay for backup software in the first place.

Pictures folder is suspiciously missing
Pictures folder is suspiciously missing

A tiny bit of panic sets in, but then I realized “hey, it’s probably been like this for a long time” at which point I properly freaked out.

WHAT. THE. FUCK. Okay, calm down. Let’s fix this.

A little bit of research (which is a fancy way of saying “Googling”) on Backblaze/OneDrive issues will turn up a Backblaze support document.

OneDrive has a setting where it will only store some files locally on disk, and it will download files from the cloud as-needed. Obviously for backup software to work, you need to have all the files locally on disk. Fortunately there’s a checkbox for this:

Uncheck OneDrive's Files-on-demand checkbox

In my case, I’d already done this long go.

Meet “Reparsepoints”

The support document gives us a command to see if we’re suffering from Reparsepoints

PS C:\Users\CW> Get-ChildItem -Path D:\OneDrive -Directory -Name -Recurse -Attributes Reparsepoint

I’d never heard of a Reparsepoint, so after more “research” and running the Backblaze script I found I did have some…but only on the D-drive. The C-drive was fine.

C drive has no reparsepoints
D drive has reparsepoints

Backblaze mentions that you may need to “Remove Reparsepoints” and to “Reach out to Microsoft for assistance” with a generic contact-us hyperlink to Microsoft. We all know that’s a dead end for all practical purposes. They lead the horse to water, but that’s it. I understand why; customers are going to “research” and run the first command they find. And then they’ll bitch to Backblaze about how all their files are corrupt after running <some random PowerShell command>.

I’ll admit, I was scared to run some of the things I came across. After all, these are MY files. You know what’s way safer than running a rando PowerShell command you found on the internet? Literally anything else.

I took a safe approach to this; I started with the “Misc” folder. If I lost everything in there I wouldn’t bat an eye. So here’s what I did. I made a copy of that folder (for real, just Ctrl-C/Ctrl-V). I re-ran the PowerShell script provided in Backlaze’s documentation and found that my new folder did NOT have the Reparsepoints. Progress? I think so…

So then I deleted the old “Misc” folder, and renamed “Misc - Copy” back to the original “Misc” and watched to see what happened.

I re-ran the PowerShell script yet again and saw that the “Misc” folder was no longer in the offender’s list. Cool. Then I saw Backblaze upload the Misc folder.

Success?

Success indeed!

My final test was to make a copy of the entire D:\OneDrive\Pictures folder. If you do this, make sure you copy the folder to somewhere outside your OneDrive folder. This took many hours (reading/writing 500+GB to/from a traditional hard drive is not fast). Once completed, I moved D:\OneDrive\Pictures folder to D:\Temp, and then moved the new “Copy” back to D:\OneDrive\Pictures. These moves were fast since Windows only has to update file location pointers.

One final re-run of the PowerShell script showed that I no longer had reparsepoints in D:\OneDrive\Pictures. For my own sanity I left the original Pictures folder in the D:\Temp folder.

(Backblaze doesn’t back up the Temp folder by default and it’s also outside the OneDrive folder so I didn’t have to worry about a 2nd copy of files getting uploaded anywhere)

I fired up Backblaze again and it began uploading my missing Pictures folder. Several days of pegged 11Mbps upload speed (my ISP limit, not Backblaze) and I was finally caught up.

So, I guess I wrote all that to say, “Even if you’re backing up your files, make sure you’re actually backing up your files.”

Trust a file restoration, not a file backup. –Chris