mysql для файлообменника не особо нужен (точнее, если нормально делать, то нагрузка на него небольшая), а по файловым сервера, смотрите в сторону aio (включать обязательно), sendfile (выключать обязательно), используйте linux (он сейчас существенно лучше, чем freebsd, хотя 2-3 года назад, картина была иная), xfs, настраивайте достаточно большие блоки на чтение и поищите статьи под тюнинг сетевой системы (там несколько параметров всего).
Дальше играет роль железо. Какое железо нужно, зависит от планируемой нагрузки и того, как она будет распределяться. Старайтесь не использовать рейды и брендовое железо. За те деньги, что можно купить брендовый сервер, покупается 2-3 на soho железе, что будет и быстрее и надежнее.
А дальше, это уже по ситуации, сильно много общая документация вам не поможет, нужно знать характер нагрузки, объемы итд.