В кроне 1 раз в день, утром, делаешь обновление steamcmd (на всякий случай), убиваешь процесс сервера с помощью awk и вызываешь стандартный скрипт обновления, потом запускаешь сервер.
Например:
steamcmd.sh +quit - обновили обновлялку
kill `ps -ef | awk '! /awk/ && /csg1/ {print $2}'` - нашли процесс csg1 и убили его
./steamcmd.sh +runscript update_csg1.txt - вызвали обновление
содержимое update_csg1.txt
@ShutdownOnFailedCommand 1
@NoPromptForPassword 0
login anonymous
force_install_dir ./csg1
app_update 740 validate
quit
Пути ставишь свои. Плюс это все для дебиана, может у тебя синтаксис будет чем то отличатся.