this post was submitted on 18 Mar 2025
45 points (100.0% liked)

Selfhosted

45050 readers
347 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

Hello selfhosted! Sometimes I have to transfer big files or a large amounts of small files in my homelab. I used rsync but specifying the IP address and the folders and everything is bit fiddly. I thought about writing a bash script but before I do that I wanted to ask you about your favourite way to achieve this. Maybe I am missing out on an awesome tool I wasn't even thinking about.

Edit: I settled for SFTP in my GUI filemanager for now. When I have some spare time I will try to look into the other options too. Thank you for the helpful information.

top 50 comments
sorted by: hot top controversial new old
[–] cass80@programming.dev 1 points 6 days ago (2 children)

Snapdrop if they both have a gui/webbrowser. https://github.com/SnapDrop/snapdrop

Scp otherwise

[–] theorangeninja@sopuli.xyz 1 points 2 days ago

I used that before but usually I prefer the fork of snapdrop, pairdrop or localsend. Might want to try magic wormhole one day.

[–] westingham@sh.itjust.works 1 points 3 days ago

Or https://github.com/schlagmichdoch/PairDrop if you don't want to support a project bought out by LimeWire

[–] merthyr1831@lemmy.ml 1 points 6 days ago

rsync over an SMB share was pretty seamless.

[–] Turboblack@lemmy.world 1 points 6 days ago

you can use a regular ftp server with administrator and user rights, distribute rights to those who replenish, and those who just take - guests at home I transfer in this way from computer to computer without connecting them to a common network, what could be simpler? why invent some ways with keys or bash if there is a 40-year-old technology that just works great, and to open ftp it is enough to enter the IP address in the explorer

[–] raldone01@lemmy.world 1 points 6 days ago

Ähm. So your not gonna like this but I just connect with vscode remote-ssh and drag'n drop em from the os file explorer into the vscode one.

So long story short scp I guess.

[–] UltraBlack@lemmy.world 0 points 6 days ago
rsync -are ssh from to@pc:/dir
[–] GreenKnight23@lemmy.world 0 points 1 week ago

rsync over ssh or scp.

[–] Kit@lemmy.blahaj.zone 40 points 1 week ago (14 children)

Not gonna lie, I just map a network share and copy and paste through the gui.

[–] Flamangoman@leminal.space 6 points 1 week ago

Same lol, somebody please enlighten me on a faster way!

load more comments (13 replies)
[–] e0qdk@reddthat.com 17 points 1 week ago (1 children)

People have already covered most of the tools I typically use, but one I haven't seen listed yet that is sometimes convenient is python3 -m http.server which runs a small web server that shares whatever is in the directory you launched it from. I've used that to download files onto my phone before when I didn't have the right USB cables/adapters handy as well as for getting data out of VMs when I didn't want to bother setting up something more complex.

load more comments (1 replies)
[–] sugar_in_your_tea@sh.itjust.works 15 points 1 week ago (3 children)

What's wrong with rsync? If you don't like IP addresses, use a domain name. If you use certificate authentication, you can tab complete the folders. It's a really nice UX IMO.

If you'll do this a lot, just mount the target directory with sshfs or NFS. Then use rsync or a GUI file manager.

[–] possiblylinux127@lemmy.zip 3 points 1 week ago (1 children)

Just don't run rsync as a daemon as that's a security nightmare

[–] sugar_in_your_tea@sh.itjust.works 3 points 1 week ago (2 children)

Why would you do that? That sounds awful...

[–] possiblylinux127@lemmy.zip 2 points 1 week ago

It is, rsync sends data in plain text. There is a optional password that is also sent in plain text.

[–] jollyrogue@lemmy.ml 2 points 1 week ago* (last edited 1 week ago) (1 children)

The daemon tracks file state, so the transfers start quicker because rsync doesn’t have to scan the filesystem.

[–] sugar_in_your_tea@sh.itjust.works 2 points 1 week ago (1 children)

Right, but if you're transferring things that frequently, there are better solutions.

[–] jollyrogue@lemmy.ml 2 points 1 week ago (1 children)

Not necessarily. Rsync deltas are very efficient, and not everything supports deltas.

It may very well be the correct tool for the job.

Anyway, problem fit wasn’t part of the question.

Yeah, there are probably a few perfect fits for it. I don't rsync between machines very often, so the only use case I might have is backups, which is already well covered with a number of tools. Otherwise I just want to sync a few directories.

load more comments (2 replies)
[–] linuxguy@lemmy.gregw.us 13 points 1 week ago (5 children)
[–] Sunbutt23@lemmy.world 3 points 1 week ago

Checks username… yeah that tracks

load more comments (4 replies)
[–] harsh3466@lemmy.ml 9 points 1 week ago (1 children)
[–] IsoKiero@sopuli.xyz 2 points 1 week ago
[–] lemming741@lemmy.world 8 points 1 week ago

sftp

All my machines have my keys, nothing to set up, nothing to tear down.

[–] Mosfar@sh.itjust.works 7 points 1 week ago
[–] Xanza@lemm.ee 4 points 1 week ago

rclone. I have a few helper functions;

fn mount { rclone mount http: X: --network-mode }
fn kdrama {|x| rclone --multi-thread-streams=8 --checkers=2 --transfers=2 --ignore-existing --progress copy http:$x nas:Media/KDrama/$x --filter-from
~/.config/filter.txt }
fn tv {|x| rclone --multi-thread-streams=8 --checkers=2 --transfers=2 --ignore-existing --progress copy http:$x nas:Media/TV/$x --filter-from ~/.config/filter.txt }
fn downloads {|x| rclone --multi-thread-streams=8 --checkers=2 --transfers=2 --ignore-existing --progress copy http:$x nas:Media/Downloads/$x --filter-from ~/.config/filter.txt }

So I download something to my seedbox, then use rclone lsd http: to get the exact name of the folder/files, and run tv "filename" and it runs my function. Pulls all the files (based on filter.txt) using multiple threads to the correct folder on my NAS. Works great, and maxes out my connection.

[–] magic_smoke@lemmy.blahaj.zone 4 points 1 week ago* (last edited 1 week ago)
  • sftp for quick shit like config files off a random server because its easy and is on by default with sshd in most distros
  • rsync for big one-time moves
  • smb for client-facing network shares
  • NFS for SAN usage (mostly storage for virtual machines)
[–] boreengreen@lemm.ee 4 points 1 week ago* (last edited 1 week ago) (1 children)

rsync is indeed fiddly. Consider SFTP in your GUI of choice. I mount the folder I need in my file browser and grab the files I need. No terminal needed and I can put the folders as favorites in the side bar.

[–] Lv_InSaNe_vL@lemmy.world 3 points 1 week ago (1 children)

If you want to use the terminal though, there is scp which is supported on both windows and Linux.

Its just scp [file to copy] [username]@[server IP]:[remote location]

[–] CmdrShepard42@lemm.ee 5 points 1 week ago (1 children)

That's essentially the same as rsync

Just slower if you already have some of the files there.

[–] motsu@lemmy.world 4 points 1 week ago (1 children)

smb share if its desktop to desktop. If its from phone to PC, I throw it on nextcloud on the phone, then grab it from the web ui on pc.

Smb is the way to go if you have identity set up, since your PC auth will carry over for the connection to the smb share. Nextcloud will be less typing if not since you can just have persistent auth on the app / web.

load more comments (1 replies)
[–] muhyb@programming.dev 3 points 1 week ago

As a lazy person, I just prefer sftp on thunar.

[–] possiblylinux127@lemmy.zip 3 points 1 week ago

What do you mean by specifying IP address?

[–] lemmylommy@lemmy.world 3 points 1 week ago

WinSCP for editing server config

Rsync for manual transfers over slow connections

ZFS send/receive for what it was meant for

Samba for everything else that involves mounting on clients or other servers.

[–] jaek@lemmy.world 3 points 1 week ago (1 children)

Magic wormhole is pretty dead simple https://magic-wormhole.readthedocs.io/en/latest/welcome.html#installation

I use this a lot at work for moving stuff between different test vms, as you don't need to check IPs/hostnames

load more comments (1 replies)
[–] MasterBlaster@lemmy.world 3 points 1 week ago

By "homelab", do you mean your local network? I tend to use shared folders, kdeconnect, or WebDAV.

I like WebDAV, which i can activate on Android with DavX5 and Material Files, and i use it for Joplin.

Nice thing about this setup is that i also have a certificate secured OpenVPN, so in a pinch i can access it all remotely when necessary by activating that vpn, then disconnecting.

[–] lIlIllIlIIIllIlIlII@lemmy.zip 2 points 1 week ago

Syncthing and/or ftp.

load more comments
view more: next ›