How to fix ‘Invalid shared folder. Check your network path and try again’ when configuring HP’s half-ass ‘Scan to Network Folder’ feature
Hint: just admit it’s shockingly, exceedingly dumb and then work around its too-dumb-to-believe limitations!
NB: This is a guide for net/sysadmins, so it will leave out some basics, but hopefully it’ll leave you feeling jaded like an IT pro even if you aren’t one.
If you’re here, you’ve probably already tried to configure the “Scan to Network Folder” feature, plugged in all the right information (network path, username, etc.) or some close approximation, but no matter what you do, you get this infuriatingly vague error message, as I did with my egregiously overpriced MFP479fdw:
Well, that would be very much for me to tell you, that you are not going crazy! This error message does unfortunately appear even when the network path and associated credentials are valid, and even if you’ve paid upwards of $500 for a printer (Thanks, HP!).
Fear not, admin amigo! Today, I’m going to give you a checklist that, when followed, should help you get the damned thing to actually DO.
First, here’s an example of how a configuration should look if you want it to actually work on pretty much any HP printer that supports this Scan to Network Folder feature. If this screenshot already makes sense, you might be able to skip the rest of the article — in which case, go forth and prosper:
Otherwise, I’ll explain each peculiarity in a moment.
You need to figure out how to get to your printer’s config page that looks like this, or at least has these options. Consult the printer’s manual or contact HP support if you must. My printer (MFP479fdw) hides these options under Quick Sets — and here’s how the blank config looks:
Once you’re here, we can begin, and on behalf of HP, I apologize in advance that taking these steps is necessary:
The Network Path should be a top-level share folder of an existing SMB share.
In other words, instead of this thing that you wanted to do:
\\server.domain\sharedfolder\subfolder
Do this:
\\server.domain\sharedfolder
If it sounds ridiculous, it’s because it is.
Yes, this has to be a bug. Alas, (surprise?) some HP printers just CANNOT figure out network share subfolders. If it sounds ridiculous, it’s because it is. I couldn’t believe this was true, especially since I’ve seen it work with other HP printers, and NONE of the existing forum threads talk about this limitation, but here we are. Don’t waste hours of your life fighting this like I did with mine, because it’s just an HP problem that affects some (not all) of their printers, and there may not be any true fix for this limitation short of a firmware update.
Don’t waste hours of your life fighting this like I did with mine.
Yes, it really, really sucks, and using a top-level share folder poses other challenges, but I’ll share how I worked around this a bit later. 🧨
Instead of using the FQDN of the server in the network path, use the server’s IP address, at least until the printer starts resolving DNS correctly.
I hear you screaming already. I know how much this sucks. Granted, if the FQDN is already working for you, then by all means, use it. For the rest of us, our HP printers struggle to resolve remote AND local DNS records for AWHILE, in my case 2+ hours, even when they have received valid, working and reachable DNS servers via DHCP.
And if the HP is having a DNS meltdown, then it’ll repeatedly fail to resolve a valid network path with an FQDN and (rudely) blame YOU for providing an “invalid” path. It sucks, but yep, that’s the state of HP printers in this, the year of Corona 2020. So, for example, instead of doing this:
\\server.domain\Share
Replace the FQDN with the server’s IP address. If that were 192.168.1.20, then it’d look like this:
\\192.168.1.20\Share
In my experience, you can come back a few hours later, and the HP might be able to resolve the FQDN. If so, then feel free to change it at that point. Woof.
If the file server isn’t joined to a domain, then prefix the fileshare username with .\
Putting .\ in front of the username tells the printer to use the file server’s local accounts, rather than try to use a domain account. So, for example, instead of
username
put:
.\username
This is important when the printer isn’t part of a domain, or when the file server isn’t part of a domain, or when you want the printer to use local server credentials rather than a domain account. Now, if it’s working without the .\, then great. That’s fine.
Otherwise, add it in.
Make sure your file server supports SMB v2 or v3
By default, HP disables SMB v1/CIFS, and supports v2 and v3. This is A Good Thing™, because v1 is obsolete and a security liability with no place in a production environment. The ideal solution (and most common one today) is to ensure that SMB v2 and/or v3 are enabled on your file server — in my case, the printer automatically used the highest level supported by the server. Silver lining?
But if your file server is end of life, and you know that you need SMB v1 (so sorry bud), then you’ll need to enable it on your printer. I can’t bring myself to screenshot this because the idea is too upsetting and you really shouldn’t do it in 10 out of 11 cases, but if you really need to do it, consult the printer’s manual to find that setting. You’ve been warned.
Now, if you’ve done it right, then your config will look something like this:
At this point, apply and test, and you should see this less-than-satisfying success message:
So now you’re done, right? Maybe.
Or maybe not.
Symlinks: the top-level folder workaround
If, like me, you are a NORMAL HUMAN, and need those scans to appear in a SUBFOLDER of a network share, rather than the top-level folder, then get ready to log into that server and open that command line.
My file server is a Synology NAS. I have a primary share that my devices use, and I do not want the HP to vomit PDFs into the root of the folder. To work around the HP limitation, I created a new, single-purpose share (in this case, called Scans), and I told the Syno to hide that share in “My Network Places”:
I configured the HP to use that new share for its scans. Then, I enabled symbolic links (aka symlinks) across shared folders, which in DSM 6 is under Control Panel > File Services > SMB/AFP/NFS > Advanced Settings:
With that enabled, I SSHd into the Synology and created a symlink to the new share’s root folder in the desired location on the primary share. The command looks like this:
ln -s /path/to/new/share /path/to/desired/subfolder
This creates a symlink to the new share’s root folder and yes — users who access the original share will have full access to the new share’s root folder by visiting the subfolder you specified above.
Now, I’m fully aware that this type of workaround sucks a lot more in a production Windows Server environment, but it’s what I got so far. If you have better ideas, sound off in the comments!
In conclusion, HP (still, and really) needs to get their act together.
It’s fair to be upset when a device’s UI gaslights you with inaccurate error messages. That’s bad design, but it’s also personally insulting. Cut that shit out. Admit your shit is broken, tell me what I need to do to work around it, and stop wasting my time.
Further, it is hugely baffling to me why (and how) HP printer behavior can vary so wildly from model to model, or firmware to firmware. Who has time to keep track of this nonsense? To recap:
A network printer should be able to scan to a subfolder of a network share without creating a brand-new single-purpose share and then creating a symlink to “nest” the new share inside the old one.
A network printer should be able to resolve the FQDN of a server right away without waiting for some kind of random DNS lag to resolve itself.
It’s less than reassuring that HP hasn’t documented these limitations, and it’s obscene that HP’s still having basic issues like this, when (as I’ve mentioned before) we’re about to colonize Mars. But, what are you going to do? Buy something that Wirecutter didn’t recommend?