Home/NAS and Samba

NAS and Samba

Author Azalea · Last tested 2026-03-09

Samba is for photos that leave the phone but stay in the house. Traffic is TCP 445, not HTTP, so none of the Host-header and presign machinery from object storage applies.

What to put in the profile

  • provider: samba
  • endpoint: host, 192.168.1.10 or nas.local, optional smb://
  • bucket: the share name, not a friendly folder label
  • access_key / secret_key: user / password
  • root: prefix inside the share, optional
  • extra.domain, extra.port (default 445), extra.guest=true for empty password

The engine does not connect at construction time. The first list or write opens the session. A bad password shows up when you start a backup, not when you tap save.

English-language tests used a Synology DS220+ and also a vanilla Samba 4.17 share on Debian. Guest mode worked only when the server allowed it; DSM with “local users” rejected empty passwords even with guest=true.

Unlike USB

There is no probe() capacity figure, so ETA cannot use “bytes free”. Concurrency caps at 8. Writes use a same-directory temp plus rename; SMB rename cannot overwrite, so a replace deletes the target first.

iOS must declare Local Network usage or access to *.local fails quietly on device. That is an Info.plist problem in the host app, not something the engine can fix.

Lab hook

January–March 2026, DS220+ DSM 7.2.2, share photos, iPhone 14 Pro then Xiaomi 14. 15,767 items, 69.9 GB, 1 GbE. Four failures, all idle session drops, all retried. The family NAS case page has the split per phone.