How to transfer files via USB cable between computer and Librem 5?

But WiFi and Mobile are on when I take it anywhere, which is not very often, I think only 3 times since opening the box. Else I would need a cable stretcher.

Back when that post was made the phone used to show up as a mass storage device of about ~1MB size, which was backed by a file. This got already removed long time ago as it wasn’t really meant to be there and was just an artifact of the old method used to handle USB back then.

1 Like

OK, yes, but that would most definitely apply to transfering files “via USB cable” too. I assumed that the requirement to transfer files is only for when you are at home. If that’s not the case then neither USB cable nor ethernet is really going to fly.

Hah, yes, and I was probably one of the few to express interest in that functionality (and that approach to transfering files), which you did warn many moons ago would be being removed.

You can still set it up manually via configfs if you want it for some reason. Recently I’ve used it to expose a bootable ISO over USB and to boot my PC from it when I managed to break my OS installation :laughing:


It does as a flatpack at Flathub. Works too - I use it on L5.

The tutorial you linked to doesn’t indicate anything about Windows clients (and by only indicating “apt install”, seems to almost preclude it) and it didn’t make it clear that a Windows client can both copy from and move to the device(s) that has(have) the ssh server installed. Again: sftp and ssh/scp are now installed by default on Windows 10 (or later), but if you want a GUI, you can’t use Windows Explorer and will need to install something (e.g. FileZilla or, for example, a browser plugin [Firefox used to support sftp, but dropped that feature]).

I was only referring to the Client/Server distinctions there. I tried to keep that particular tutorial as simple and rote as possible.

As for Windows instructions, someone who knows something about Windows is welcome to add to the tutorial, if they like. :+1:

Yes, but no. A lot depends on the host, but the Librem 5 enabled Ethernet over USB by default. Nothing stops you from routing IP packets to other computers beyond the Ethernet point-to-point link. I haven’t checked that yet, but I believe that if you enable IPv6 forwarding on one device, you get a globally routable IP address on the other.

I am considering playing around with automatic IPv6 forwarding with the L5, but not sure what to expect before I get more familiar with the setup.

1 Like

Yes, I knew someone would pick me up on that. :wink:

When I jumped into this necrod topic, I was mindful of

but for beginners it’s difficult to set up

So, yes (e.g. for IPv4), if the host does routing (or an alternative) out-of-the-box then great but if it doesn’t, I wouldn’t necessarily class that as easy for a beginner to set up.

(And I’m going to leave IPv6 well alone. Some ISPs here still don’t even offer IPv6 at all, so you most certainly won’t get a globally routable IPv6 address in that case - even if IPv6 is working correctly on the local LAN.)

OMG - another veer. Or update.

I had no problems installing WARP on L-5 nor issues with the Windows version.
Both worked fine transfer a data back and forth.

The only problem have with it, is that it appears to go from source to outside to recipient. IMO, it’s not private if it’s routed outside the LAN. Major dissapointment

The files received by Windows is inaccessible via WARP GUI (Open File). It did not recognize *.jpg, *.png, and changed a plain text file (via gedit) and appended a .bin instead of .txt.

WARP works OK w/ < > OK if privacy is not a concern, and file names is something one can get around.

WARP is slow to load on Windows. But … that was expected.

Differences between LanShare and WARP are that LanShare is local. WARP passes everything through a “rendezvous” i.e.

  • *L5 ➜ rendezvous ➜ Windows or

  • Windows ➜ rendezvous ➜ L5*

Too, LanShare does not have a Linux version for aarch64. Yet.

Juz say’n s’all,

1 Like

Yes, if your privacy / security standards are high, the architecture would be epic fail.1

If you trust (or verify) the client code then … the file is encrypted before transfer by the client (so even though it may pass through an external server the content is not readable to that server). Even so, things like the file name may be visible to the external server and of course the fact of your transfer is visible.

If you don’t trust or verify the client code then in theory you could encrypt the file yourself before transfer, and rename the encrypted copy - but that starts to detract from the convenience!

1It seems silly that there isn’t some kind of fallback mode where if the client detects that there is no internet then it assumes that connection directly via the local LAN is possible (which will then either succeed or fail). But then you would have to remember to pull your network off the internet before performing transfers - or otherwise block access to the internet for that application.

Ay, it depends on the needs, level of security wanted. It’s reasonably protected (passphrase and encryption) and the only thing the rendezvous server does, it lets the two parties find each other - data is passed from device to device (as per the protocol). Data does not pass through it but does visit outside of LAN (there seems to have been some tries to keep it in, but i couldn’t make heads or tails if that got anywhere). Interestingly, you can even set up your own server for that (not sure what that entails, just noticed it in settings), but going that way probably goes to the area that LanShare covers better. Missing aarch64 is… aargh :wink: The Windows problems are interesting to hear - I didn’t find a ticket about them.

Thanks for being on topic. Can you give instructions on what to do to be able to transfer files via USB cable only between the L5 and Ubuntu 22.04 Desktop?

Yet another solution using ZMODEM protocol:

Instead of using over-the-air methods for transferring your files which may be insecure, I have installed Jumpdrive on my phone.

If you are using a Librem laptop:

All you need to do is boot your phone into jump drive and connect via USB to your laptop and you will have access to the files on your phone after answering the password prompt for your phone.

For me this is a more secure method and easier as far as I’m concerned.

Also I have been using a USB a to USB c connector which I bought off of Amazon called JSAUX which comes in various lengths and is more flexible and easy to use than the purism supplied cable.

1 Like

Yes, quite likely - at least as far as theoretical attacks go i.e. your attack surface.

Hmm. Not really. For a start it means an outage on your phone every time you want to transfer files. And if it’s just one file then you are talking about a fair bit of overhead and hassle to transfer one file.

However at the end of the day everyone should do what he or she is comfortable and happy with.

1 Like

I’m not sure what you mean by outtage? I would think that by booting down the phone and booting into jumpdrive either to transfer one or multiple files and then booting the phone up would be good also for the phone?

I mean: no one can call you (or text you).

You are “off the air” for however long it takes to shut down, boot Jumpdrive, transfer files, boot up. If you want to use the phone as a regular mobile phone then that may not be convenient.

Ohhhh Gotchya.

[Side topic]
I haven’t heard that word “Zmodem” in 30+ years. I have a modem still with the high speed of “300 Baud”, another @ 800, and 1200. Not much has changed.
This reminded me clean out storage to toss them to recycle.

Ta for the heads up