EtherDFS and RetroNAS: The problem and the fix

Pierre32
5 min readMar 8, 2022

For network transfers between my DOS computer and my RetroNAS, I mostly use EtherDFS. It’s a fantastic, lightweight tool that maps a network volume to a local drive letter. But it has zero tolerance for long filenames; if it encounters one that doesn’t fit the old school 8.3 format, the copy operation will fail. Below I run through a scenario where I hit this issue, and was able to solve it from DOS without leaving my chair.

The plan was to play some Police Quest. I have the GOG version downloaded to my NAS, so I just needed to copy the folder over. First I fire up EtherDFS. Here you can see that it picks up my packet driver, hits the MAC address of the server, and maps the network volume to local drive letter I:

To make things a bit easier I fire up DOS Navigator (a Norton Commander clone which I find a little more robust for network transfers). I ask it to copy \PQ1 from my I: drive to the local E:drive.

All goes well for a bit…

Until it hits an error. The full filename it’s trying to read here is dosboxpq.conf. And the copy operation ends here, incomplete.

I could attack this a few ways. Perhaps just clean up those GOG files on the server, which I don’t need on a real DOS machine anyway — but I’d prefer to leave those folders original and intact. Or I could get into the fiddly business of selecting the individual files I want to copy. But let’s find a better way. With the help of the mTCP toolset that I have installed locally, I’ll telnet into the RetroNAS (I already have that service installed on the NAS, of course) and install the FTP server: ProFTPd.

The command is simply telnet [IP address]. On connection there’s a login prompt, where I enter the credentials for my piuser.

Once in, I type retronas to bring up the menu and go down to Install Things.

(Note that RetroNAS is evolving quickly, and the menu item numbers may be different for you.)

I then highlight ProFTPd and hit Enter:

A minute of scrolly text later, a nice green “ok” and ProFTPd is installed.

I back out of the RetroNAS menu to the command prompt, then type exit to end the telnet session.

Now we can connect to the NAS via FTP instead of EtherDFS, and get that game.

First I make sure I have my \PQ1 folder created on my local target drive. Then I navigate to that folder. ← This step is important, as the FTP client will download files to the location we launch it from. Again we’re using one of the mTCP tools (ftp), and it’s launched in the same way telnet was — but this time I need to call the exe using its full path. The server login is again the pi user.

Now on the server, I navigate to the PQ1 directory. (Remember you’re in the Linux realm now, with a few different commands to get around. cd will work as expected, but you’ll need to replace dir with ls). Before copying any files, I enter prompt to ensure that prompting is off. This means I won’t have to confirm each individual file. Then I grab everything with mget *.*

And the transfer is complete. Note the warning at the end (below). The invalid DOS filenames that tripped up EtherDFS were simply omitted from this operation. Which is fine, as I don’t need them here - and my archive on the server stays intact.

Now I can just exit the FTP client, and get after the Death Angel.

A note on the tools used here:

RetroNAS only provides tools on the server side. In this case it provides the EtherDFS server daemon (ethersrv) and the FTP server (ProFTPd). You need to install things on the DOS side yourself, such as the EtherDFS client, and the mTCP suite which gives you the FTP and telnet clients. I recommend making them a permanent part of your kit for DOS installations.

Bonus trivia:

I have my entire GOG library backed up to my NAS. This is automated thanks to gogrepo, which is included with RetroNAS.

--

--