#!/bin/sh # Зачем нужен этот скрипт? # # После каждого апдейта через steam есть необходимость в некоторой доработке файлов # engine*.so. Обычно это делают вручную, но как человек ленивый я это делаю скриптом. # # Для использования скрипта в каталоге сервера (рядом с подкаталогами cstrike, valve # и так далее) создайте подкаталог crack и в него положите скрипт nowon.py # (и не забудьте сделать ему chmod a+x). # Пользователь и пароль STEAM USER=xxxx PASS=yyyy # Каталог где живет сервер Counter-Strike DIR=/usr/local/games/cs # Раскоментируйте, если у Вас сервер запускается из-под другого аккаунта # Вообще-то это просто необходимо делать по соображениям безопасности, # но многие администраторы не заморачиваются и, таким образом, подвергают # свой сервер опасности из-за лени :) #if [ "`whoami`" != "hlds" ]; then # echo "Re-running as user hlds" # exec su hlds -c $0 #fi # Дата на файле last_update содержит дату последнего обновления, например можно # потом найти все обновившиеся файлы командой find . -newer last_update touch last_update # Восстанавливаем все файлы из бэкапа чтобы steam не качал их по новой for src in crack/engine*.so.orig; do [ -f $src ] || break dst=`basename $src .orig` echo "Restoring $dst from $src ..." rm -f $dst cp $src $dst chown hlds:hlds $dst done steam_update="./steam -command update -dir $DIR -username $USER -password $PASS" $steam_update -game cstrike $steam_update -game czero $steam_update -game dod # Дорабатываем файлы engine*.so for src in engine*.so; do [ -f $src ] || break chmod a+x $src crack/nowon.py $src if [ -f $src.orig ] ; then echo "Moving $src.orig to crack/$src.orig" mv -f $src.orig crack/ fi done