aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md54
1 files changed, 30 insertions, 24 deletions
diff --git a/README.md b/README.md
index 8f928b3..555c88c 100644
--- a/README.md
+++ b/README.md
@@ -10,8 +10,8 @@ Uses `unison` to sync the paths, rclone to sync to a cloud provider.
```bash
git clone <repo> && cd usync
just install-deps
-# Edit justfile: set SOURCE and TARGET paths
rclone config
+# Edit justfile: set SOURCE, TARGET, and CLOUD_REMOTE variables
just setup
```
@@ -32,36 +32,42 @@ just status # Check
- `sync-cloud` - Cloud backup (rclone)
- `status` - Show state
-## Windows (WSL) Setup for linux FS external drives
+## Windows (WSL) with usbipd-win
```bash
-# 1. Identify drive (as Admin)
-wmic diskdrive list brief
-# Note: \\.\PHYSICALDRIVEN
-
-# 2. Mount raw drive (as Admin)
-wsl --mount \\.\PHYSICALDRIVE1 --bare
-# Block device now visible in all WSL instances
-
-# 3. In your WSL instance
-sudo lsblk # Find /dev/sdxN
-sudo mkdir /mnt/ext4drive
-sudo mount /dev/sdd1 /mnt/ext4drive
-sudo apt install rclone unison
-
-# Edit justfile: SOURCE="/mnt/ext4drive", set TARGET & CLOUD_REMOTE
-# 4. Run usync
+# 1. Install usbipd-win (Admin PowerShell)
+# Download from https://github.com/dorssel/usbipd-win/releases/latest
+
+# 2. List devices
+usbipd list
+# Note BUSID (e.g., 1-20)
+
+# 3. Attach (Admin PowerShell)
+usbipd bind --busid 1-20
+usbipd attach --wsl --busid 1-20
+wsl # Start admin WSL
+
+# 4. In admin WSL
+sudo mkdir /mnt/drive1
+sudo mount /dev/sdb1 /mnt/drive1 # Replace sdb1
+
+# 5. Configure & run
+# Edit justfile: SOURCE="/mnt/drive1"
just sync-cloud
-# 5. Cleanup
-sudo umount /mnt/ext4drive
-wsl --unmount \\.\PHYSICALDRIVE1 # (as Admin)
+# Cleanup (optional)
+sudo umount /mnt/drive1
+# sudo umount /mnt/drive2 # If using second drive
+
+# Detach & unbind (required before removing drive)
+usbipd detach --busid 1-20
+usbipd unbind --busid 1-20
```
## Configure
Edit justfile:
-- SOURCE/TARGET - paths to sync
-- CLOUD_REMOTE - rclone remote name
+- SOURCE/TARGET - paths to sync (e.g. /mnt/drive1)
+- CLOUD_REMOTE - rclone remote name (e.g. cloud_remote:)
- CLOUD_PATH - cloud folder (default: /usync)
-- CLOUD_MOUNT_PATH - local mount (default: ~/cloud-mount) \ No newline at end of file
+- CLOUD_MOUNT_PATH - local mount (e.g. /home/user/cloud-mount)