Files
copyparty/bin/README.md

84 lines
3.6 KiB
Markdown
Raw Permalink Normal View History

2023-05-07 15:35:56 +00:00
# [`u2c.py`](u2c.py)
2021-10-01 02:25:22 +02:00
* command-line up2k client [(webm)](https://ocv.me/stuff/u2cli.webm)
2021-10-01 00:33:45 +02:00
* file uploads, file-search, autoresume of aborted/broken uploads
* [sync local folder to server](https://github.com/9001/copyparty/#folder-sync)
2022-12-11 17:41:10 +00:00
* generally faster than browsers
2021-11-12 22:30:23 +01:00
* if something breaks just restart it
2021-10-01 00:33:45 +02:00
2021-10-03 19:35:20 +02:00
2022-01-03 01:16:27 +01:00
# [`partyjournal.py`](partyjournal.py)
produces a chronological list of all uploads by collecting info from up2k databases and the filesystem
* outputs a standalone html file
* optional mapping from IP-addresses to nicknames
2021-10-03 19:35:20 +02:00
2022-11-26 19:53:41 +00:00
# [`partyfuse.py`](partyfuse.py)
2020-08-04 23:46:57 +00:00
* mount a copyparty server as a local filesystem (read-only)
2020-08-16 23:04:10 +00:00
* **supports Windows!** -- expect `194 MiB/s` sequential read
* **supports Linux** -- expect `600 MiB/s` sequential read
2020-08-16 23:04:10 +00:00
* **supports macos** -- expect `85 MiB/s` sequential read
note that copyparty should run with `-ed` to enable dotfiles (hidden otherwise)
and consider using [../docs/rclone.md](../docs/rclone.md) instead; usually a bit faster, especially on windows
2020-10-25 08:05:11 +01:00
2020-08-04 23:46:57 +00:00
2020-08-06 18:22:25 +00:00
## to run this on windows:
* install [winfsp](https://github.com/billziss-gh/winfsp/releases/latest) and [python 3](https://www.python.org/downloads/)
* [x] add python 3.x to PATH (it asks during install)
* `python -m pip install --user fusepy` (or grab a copy of `fuse.py` from the `connect` page on your copyparty, and keep it in the same folder)
2022-11-26 19:53:41 +00:00
* `python ./partyfuse.py n: http://192.168.1.69:3923/`
2020-08-06 18:22:25 +00:00
10% faster in [msys2](https://www.msys2.org/), 700% faster if debug prints are enabled:
* `pacman -S mingw64/mingw-w64-x86_64-python{,-pip}`
* `/mingw64/bin/python3 -m pip install --user fusepy`
2022-11-26 19:53:41 +00:00
* `/mingw64/bin/python3 ./partyfuse.py [...]`
2020-08-06 18:22:25 +00:00
you could replace winfsp with [dokan](https://github.com/dokan-dev/dokany/releases/latest), let me know if you [figure out how](https://github.com/dokan-dev/dokany/wiki/FUSE)
(winfsp's sshfs leaks, doesn't look like winfsp itself does, should be fine)
2020-08-04 23:46:57 +00:00
2022-11-26 19:53:41 +00:00
# [`partyfuse2.py`](partyfuse2.py)
2020-08-04 23:46:57 +00:00
* mount a copyparty server as a local filesystem (read-only)
* does the same thing except more correct, `samba` approves
* **supports Linux** -- expect `18 MiB/s` (wait what)
* **supports Macos** -- probably
2021-01-06 17:13:24 +01:00
2022-11-26 19:53:41 +00:00
# [`partyfuse-streaming.py`](partyfuse-streaming.py)
2021-01-06 17:13:24 +01:00
* pretend this doesn't exist
2021-03-17 01:37:59 +01:00
2021-03-17 01:42:59 +01:00
# [`mtag/`](mtag/)
2021-03-17 01:37:59 +01:00
* standalone programs which perform misc. file analysis
2021-03-19 00:08:31 +01:00
* copyparty can Popen programs like these during file indexing to collect additional metadata
2021-05-30 16:49:08 +00:00
2021-10-03 19:35:20 +02:00
2021-05-30 16:49:08 +00:00
# [`dbtool.py`](dbtool.py)
2021-06-20 20:05:43 +02:00
upgrade utility which can show db info and help transfer data between databases, for example when a new version of copyparty is incompatible with the old DB and automatically rebuilds the DB from scratch, but you have some really expensive `-mtp` parsers and want to copy over the tags from the old db
2021-05-30 16:49:08 +00:00
2021-06-20 20:05:43 +02:00
for that example (upgrading to v0.11.20), first launch the new version of copyparty like usual, let it make a backup of the old db and rebuild the new db until the point where it starts running mtp (colored messages as it adds the mtp tags), that's when you hit CTRL-C and patch in the old mtp tags from the old db instead
2021-05-30 16:49:08 +00:00
so assuming you have `-mtp` parsers to provide the tags `key` and `.bpm`:
```
2021-06-20 20:05:43 +02:00
cd /mnt/nas/music/.hist
~/src/copyparty/bin/dbtool.py -ls up2k.db
~/src/copyparty/bin/dbtool.py -src up2k.*.v3 up2k.db -cmp
~/src/copyparty/bin/dbtool.py -src up2k.*.v3 up2k.db -rm-mtp-flag -copy key
~/src/copyparty/bin/dbtool.py -src up2k.*.v3 up2k.db -rm-mtp-flag -copy .bpm -vac
2021-05-30 16:49:08 +00:00
```
2021-10-03 19:35:20 +02:00
# [`prisonparty.sh`](prisonparty.sh)
* run copyparty in a chroot, preventing any accidental file access
* creates bindmounts for /bin, /lib, and so on, see `sysdirs=`
2025-02-07 20:58:49 +01:00
# [`bubbleparty.sh`](bubbleparty.sh)
2025-02-07 20:58:49 +01:00
* run copyparty in an isolated process, preventing any accidental file access and more