SFTP for bulk uploads: a practical field guide
When the media library moves, use SFTP. It resumes, it verifies, and it does not care about tab focus.
One-time setup
- Generate a key pair: ssh-keygen -t ed25519 -f zero-storage
- Paste the public key into Settings → SFTP.
- Point your client at the host and port shown there.
What transfers like
- Folder structure mirrors into your ZeroStorage folders.
- Interrupted uploads resume rather than restart.
- Files appear in the web UI once the transfer closes and hashing finishes.
What breaks first
Passive-mode firewalls, home-directory permissions, and clients that insist on macOS resource forks. If a transfer stalls at zero bytes, check the server log before blaming the network.
Fitting it into a routine
The clients that work well treat the remote side like a folder on your machine, because that is what it is. Point a sync job at the drop folder, keep the key in an agent rather than inside a script, and let transfers run overnight when the connection is nobody’s bottleneck. Teams usually split the difference: single files keep going through the browser, pipelines use SFTP for everything that repeats. Both paths land in the same library, with the same hashes, the same deduplication, and the same share controls.
- Exclude editor temp files so they do not churn the hash log.
- Watch folder sizes — a media drop can outpace a home connection quietly.
- Keep the key on one machine per person, and revoke it when the laptop leaves.
The routine worth copying is the one you never think about: a scheduled job at 2am, a key that only unlocks one folder, and a transfer log nobody has to read unless something failed. When a run does fail, resuming costs nothing — the client picks up where the connection dropped, and the hash check confirms every byte that arrived before the drop. That combination, resume plus verify, is the entire reason this path survives decade-old firewalls and hotel Wi-Fi alike.
sftp -i ~/.ssh/zero-storage [email protected]
sftp> put -r ./library/
sftp> byeFull walkthrough, including timeouts, lives in the SFTP docs.
Continue reading
Why HLS still wins for video that has to just play
Adaptive bitrate is not a buzzword — it is the reason a viewer on hotel Wi-Fi and a viewer on fiber both reach the end of your video. Here is how HLS does it on ZeroStorage.
Upload without an account: how anonymous sessions work
No sign-up, no quota anxiety, no lost files. Anonymous sessions tie uploads to a browser instead of a user — this is what that means for you and for us.
Subtitles for free: automatic extraction on every upload
Embedded subtitle tracks are pulled out during transcoding and served as WebVTT. Upload once, get selectable captions in every player.