I"m doing something very similar on an ARM nettop.
I haven"t done FTP yet, son can"t help on that one. Shouldn"t be hard though.
There are ARM versions of SAMBA, check your distro's repo (with apt-get, yum…). Word of advice: copy and paste a barebones 10-line config file, don"t even try to understand it, and don"t mess with anything else. Samba is quite slow, apparently there are bugs, general suckiness, and config subtleties… I couldn"t ascertain what those are for my specific config. dlna is much lighter on the server, so try to use that as much as possible.
For dlna, UKScone nicely helped me compile minidlna (
http://sourceforge.net/project...../minidlna/), which works fine on the whole. No transcoding, and occasional deletes/rebuilds of the db required. Puts all the shared folders at the root level, so I ended up creating a dlna folder, and filling it with aliases to my media"s folders, so I"d get a nice Films in English, Films in French… tree in the dlna browser, like on my disk, instead of both French, US and all other media mixed together in a huge root one. xbmc and the latest VLC are the only 2 dlna players I could find on Windows; xbmc has trouble with dual-screen configs or even non-full screen mode, so I"m using VLC.
If you"re a linux noob like I am,
- remember to always check file/folder permissions. Weird error messages often mean you can"t modify/read/run some file somewhere.
- make the extra effort to put all you config files and scripts in the same place, like home/$user/Config. Saves some hair pulling when you want to go back and tweak stuff 2 weeks later, only to find the config file is not where the doc says it should be, but there are 3 other ones in other places.
- never assume the documentation you found is relevant for your brand and version of Linux.
And general reminder: don"t forget backups. It not about *if*, but *when*, a hardware, software, user, environment .. issue will nuke your disk. rsync kinda works for backups, though my variant of Linux chokes on heavy USB traffic, as the Pi's seems to, too, at least for now.