Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

QUESTION - LINUX ONLY #56

Open
mxdpeep opened this issue Jan 8, 2023 · 7 comments
Open

QUESTION - LINUX ONLY #56

mxdpeep opened this issue Jan 8, 2023 · 7 comments
Labels
question Further information is requested

Comments

@mxdpeep
Copy link

mxdpeep commented Jan 8, 2023

Is it possible to use CDC FT for Linux 2 Linux transfers to speed things up?

@ghost
Copy link

ghost commented Jan 9, 2023

It seems like it just uses the SSH protocol, so it should work fine?

@ljusten
Copy link
Collaborator

ljusten commented Jan 9, 2023

Right now, it's not, but it wouldn't be hard to do, at least for cdc_rsync.

The code is largely cross-platform, except for a few things that are not:

  • The socket classes need to work around a few platform specific issues like WSAEADDRINUSE vs EADDRINUSE.
  • We're calling netstat, which has different flags for Windows and Linux.
  • The file systems and permissions are different.
  • We're calling binaries through ssh. On Windows, that runs in Powershell, on Linux it uses bash by default (at least on our systems). Escaping is also different.

Overall, it shouldn't be a lot of work. Note that rsync on Linux provides a large number of flags that cdc_rsync doesn't support (yet) to fine tune how things work. cdc_rsync is really geared towards the use case of deploying a game.

We're currently adding support for Windows to Windows cdc_rsync (including local syncs, i.e. not over network), see
main...sync_windows

For cdc_stream, it could be a bit more work to get the FUSE running on Windows. However, there are tools that provide a FUSE wrapper, like Dokan (https://dokan-dev.github.io/).

@AndyA
Copy link

AndyA commented Jan 9, 2023

Do you have any sense of how hard it would be to integrate CDC into rsync itself?

@ljusten
Copy link
Collaborator

ljusten commented Jan 9, 2023

I imagine it might not be very hard to do that in principle. We actually used librsync (https://github.com/librsync/librsync) in the first incarnation of this tool, and switched to CDC later. This switch only took a few days. That being said, rsync has a much longer history and more baggage to carry. Some flags might not make sense for CDC, some behavior might change, so I could imagine the main amount of work would go into making the transition smooth. Maybe ask this question again on the librsync repo.

@Vadiml1024
Copy link

Vadiml1024 commented Feb 20, 2023

I'm trying to bulld linux version fo cdc_rsync;
It chokes on file_watcher_win module...
Anybody hav adaptation of this module to Linux?

@ljusten
Copy link
Collaborator

ljusten commented Feb 20, 2023 via email

@Mikesco3
Copy link

Linux support would be lovely, specially for the cdc_rsync as a faster alternative to traditional rsync...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

5 participants