Sorry if this is a dumb question, but if I already have my media library living on a external ntfs drive and wish to have all my SparkBox content downloads as well live there, (as I dont own a NAS yet) is that possible using this solution? I also was looking at Tom's other older solution that runs on windows using docker desktop (https://github.com/sman97/tomsparkprivacyarrsuite) but ran into the same problem. Happy to answer any questions but would love any solutions or suggestions anyone would have. I'm wanting to use a spare gaming PC I have running windows 11 and a 27tb external USB hard drive for some basic self hosting needs. You have my thanks already, A n00b who does not know docker/ linux very well but wants to self host.
9 replies
tomspark wrote:
Yes, works fine — NTFS is supported, just mount it with the right options so SparkBox containers (PUID 1000) can write: sudo mkdir -p /mnt/usb-media sudo mount -t ntfs-3g -o uid=1000,gid=1000,umask=022 /dev/sdX1 /mnt/usb-media Make it persist across reboots in /etc/fstab: /dev/sdX1 /mnt/usb-media ntfs-3g uid=1000,gid=1000,umask=022,nofail 0 0 Then point SparkBox at it: edit /opt/sparkbox/.env, set MEDIAROOT=/mnt/usb-media/sparkbox-media, then sudo /opt/sparkbox/sparkbox up. Two heads-ups: NTFS-3G is fine for big MKVs but slow if you ever have a huge library of small files (audiobook chapters, manga); hardlinks DO work on NTFS so the arr atomic-move trick still saves disk space. Reformatting to ext4 someday gets you better perf but isn't required. Quick aside: sman97/tomsparkprivacyarrsuite is the old GitHub-only project. SparkBox is the rewrite/successor — current install is curl -fsSL https://get.tomsparkbox.com/install.sh | sudo bash.
tomspark wrote:
Ah, that one's on me — /dev/sdX1 was a placeholder, not a literal device name. Find your real one with: lsblk Look for your 27TB drive in that output (probably sdb with a partition like sdb1), then swap that into the mount command — e.g. sudo mount -t ntfs-3g -o uid=1000,gid=1000,umask=022 /dev/sdb1 /mnt/usb-media. Same goes for the /etc/fstab entry — use the real device path, or even better the partition's UUID (run sudo blkid /dev/sdb1 to get it, then use UUID=xxx instead of /dev/sdb1 in fstab — survives the drive being plugged into a different USB port).
VincentDewitt wrote:
Wow thanks so much for your quick reply. I'll take a look at this and re attempt the sparkbox set up with this in mind.
tomspark wrote:
Right on — yell back here if anything trips you up during the install.
VincentDewitt wrote:
So when I reset up my WLS2 ubuntu set up before running sparkbox and ran sudo mount -t ntfs-3g -o uid=1000,gid=1000,umask=022 /dev/sdX1 /mnt/usb-media I got message: mount: /mnt/usb-media: unknown filesystem type 'ntfs-3g'. dmesg(1) may have more information after failed mount system call. any recommendations?
tomspark wrote:
WSL2 Ubuntu doesn't ship ntfs-3g by default — install it first: sudo apt update && sudo apt install -y ntfs-3g Then re-run your mount command and it should work. One more WSL2 gotcha to check: USB drives aren't visible in WSL2 by default. Run lsblk inside WSL — if you see your drive (e.g. sdb with NTFS partitions), you're good. If you don't see it, you need usbipd-win on the Windows side to attach the device to WSL. From an admin PowerShell: usbipd list usbipd attach --wsl --busid <X-Y (using whatever bus-id matches your USB drive)
VincentDewitt wrote:
Ok so I was able to get Usbipd to work and attach my drive and the WSL instance is now seeing it when I run lsblk. I ran sudo mkdir -p /mnt/usb-media without issues but when I run sudo mount -t ntfs-3g -o uid=1000,gid=1000,umask=022 /dev/sdX1 /mnt/usb-media I get thrown the error of ntfs-3g: Failed to access volume '/dev/sdX1': No such file or directory gets thrown. Any ideas? thanks again for the help.
VincentDewitt wrote:
No problem at all thanks for the clarification and explaining some of these things. for making it persists across reboots, should I have be in directory /etc/fstab? when I try to get to that directory it says I don't have it (not sure if that's part of sparkbox). I was able to get the UUID for the drive and try UUID=7036360B3635D338 /mnt/usb-media ntfs-3g uid=1000,gid=1000,umask=022,nofa il 0 0 and it just returned a message -bash: /mnt/usb-media: Is a directory I then tried /dev/sde2 /mnt/usb-media ntfs-3g uid=1000,gid=1000,umask=022,nofail 0 0 and got -bash: /dev/sde2: Permission denied
tomspark wrote:
Those errors mean the lines are getting run as commands. /etc/fstab isn't a command — it's a file you open and edit with a text editor. Try this: sudo nano /etc/fstab Use the arrow keys to scroll down to the empty space at the bottom, then paste this on a new line: UUID=7036360B3635D338 /mnt/usb-media ntfs-3g uid=1000,gid=1000,umask=022,nofail 0 0 Save with Ctrl+O then Enter, exit with Ctrl+X. Nothing visible happens — that's normal; it kicks in on next reboot. (Or run sudo mount -a to test it right now without rebooting.)