Minimum, které můžete očekávat na jakémkoli unixovém systému, který není starožitný nebo vestavěný, je POSIX/Singe UNIX. Konkrétně všechny současné unixy většinou odpovídají POSIX:2004, aka Single Unix issue 6. To vám dává sh, sed a awk jako programovací jazyky.
Pokud jsou nainstalovány vývojové balíčky (které často nejsou na serveru), můžete vývoj provádět pomocí cc (kompilátor C), lex, yacc, make; ale kromě toho, že nejsou užitečné na počítačích, na kterých budete aplikaci nasazovat, pouze na vývojářských počítačích.
Pokud předpokládáte Linux, většina distribucí se do určité míry řídí Linux Standard Base. LSB přesahuje POSIX. Základní specifikace obsahuje C runtime s podporou pro multithreading, NSS, PAM, ncurses, libz, SSL a několik dalších knihoven. LSB nevyžaduje bash, pouze POSIX sh, což může být ash nebo ksh, ale v praxi většina neembedded linuxových distribucí dodává bash jako součást výchozí instalace. Specifikace jazyků zahrnuje Perl a Python. V praxi ne všechny distribuce začleňují plnou podporu LSB do své výchozí instalace, ale obecně lze říci, že pokud je to specifikováno LSB (ale ne ve specifikaci LSB desktop, samozřejmě), mělo by být nainstalováno na linuxový server. .
Na jiných systémech je Perl velmi často dostupný. Python není tak běžný, ale získává na popularitě. Můžete se do značné míry spolehnout buď na bash nebo pdksh (ale ne vždy; IIRC NetBSD má ve výchozí instalaci pouze popel). U kompilovaných jazyků vždy najdete běhové prostředí C a téměř vždy běhové prostředí C++.
Nemůžete předpokládat, že je nainstalován Perl nebo Python, i když často jsou. Například distribuce typu redhat obvykle instalují Python, ale jiné distribuce obvykle ne.
Pokud je to problém, měli byste se zaměřit na konkrétní distribuce – nebo si budete muset vytvořit vlastní (např. python) a odeslat ji sami – to je jediný způsob, jak zaručit, že je k dispozici. Ve skutečnosti, pokud píšete netriviální kus softwaru, který musí být přenosný do mnoha distribucí, je pravděpodobně nutné dodat svůj vlastní Python.