3.2 KiB
using rclone to mount a remote copyparty server as a local filesystem
speed estimates with server and client on the same win10 machine:
1070 MiB/swith rclone as both server and client570 MiB/swith rclone-client andcopyparty -ed -j16as server220 MiB/swith rclone-client andcopyparty -edas server100 MiB/swith ../bin/partyfuse.py as client
when server is on another machine (1gbit LAN),
75 MiB/swith ../bin/partyfuse.py as client92 MiB/swith rclone-client andcopyparty -edas server103 MiB/s(connection max) withcopyparty -ed -j16and all the others
creating the config file
the copyparty "connect" page at /?hc (so for example http://127.0.0.1:3923/?hc) will generate commands to autoconfigure rclone for your server
if you prefer to configure rclone manually, continue reading:
replace hunter2 with your password, or remove the hunter2 lines if you allow anonymous access
on windows clients:
(
echo [cpp-rw]
echo type = webdav
echo vendor = owncloud
echo url = http://127.0.0.1:3923/
echo headers = Cookie,cppwd=hunter2
echo pacer_min_sleep = 0.01ms
echo(
echo [cpp-ro]
echo type = http
echo url = http://127.0.0.1:3923/
echo headers = Cookie,cppwd=hunter2
echo pacer_min_sleep = 0.01ms
) > %userprofile%\.config\rclone\rclone.conf
also install the windows dependencies: winfsp
on unix clients:
cat > ~/.config/rclone/rclone.conf <<'EOF'
[cpp-rw]
type = webdav
vendor = owncloud
url = http://127.0.0.1:3923/
headers = Cookie,cppwd=hunter2
pacer_min_sleep = 0.01ms
[cpp-ro]
type = http
url = http://127.0.0.1:3923/
headers = Cookie,cppwd=hunter2
pacer_min_sleep = 0.01ms
EOF
mounting the copyparty server locally
connect to cpp-rw: for read-write, or cpp-ro: for read-only (twice as fast):
rclone.exe mount --vfs-cache-mode writes --vfs-cache-max-age 5s --attr-timeout 5s --dir-cache-time 5s cpp-rw: W:
sync folders to/from copyparty
note that the up2k client u2c.py (available on the "connect" page of your copyparty server) does uploads much faster and safer, but rclone is bidirectional and more ubiquitous
rclone sync /usr/share/icons/ cpp-rw:fds/
use rclone as server too, replacing copyparty
feels out of place but is too good not to mention
rclone.exe serve http --read-only .
rclone.exe serve webdav .
devnotes
copyparty supports and expects the following from rclone,
case "owncloud":
f.canStream = true
f.precision = time.Second
f.useOCMtime = true
f.hasOCMD5 = true
f.hasOCSHA1 = true
notably,
useOCMtimeenables thex-oc-mtimeheader to retain mtime of uploads from rclonecanStreamis supported but not required by ushasOCMD5/hasOCSHA1is conveniently dontcare on both ends
there's a scary comment mentioning PROPSET of lastmodified which is not something we wish to support
and if vendor=owncloud ever stops working, try vendor=fastmail instead