Установка CS 1.6 на FreeBSD 12.0


Сегодня мы научимся ставить сервер по CS 1.6 на unix-подобную ось FreeBSD 12.0. Нам понадобится установленная и настроенная система FreeBSD 12.0, клиент steamCMD, который мы скачаем с офф сайта стим, утилита wget, sudo, tmux, ну и конечно немного удачи и везения.

Идем в дерево портов командой -> cd /usr/ports/

  1. whereis wget -> cd /usr/ports/ftp/wget
  2. make install clean
  3. Со всеми всплывающими окноми соглашаемся, нажимаем Enter
  4. Устанавливаем утилиту sudo, для смены пользователся, будем устанавливать сервер CS 1.6 не из под root, а под пользователем user с паролем 111111
  5. cd /usr/ports/; whereis sudo -> cd
    /usr/ports/security/sudo; make install clean;
  6. Вылетает ошибка, обновим еще раз порты и пакеты командой ->
    portsnap auto; portmaster -a -y
  7. Если нет portmaster, ставим whereis portmaster;
    cd /usr/ports/ports-mgmt/portmaster; make install clean
  8. Устанавливаем tmux для работы с отдельными терминалами или окнами, необходим для запуска сервера в отдельном окне,
    для этого ищем необходимый порт в дереве портов, для этого в консоле вводим команду -> whereis tmux
  9. Система находит его в каталоге /usr/ports/sysutils/tmux, значит переходим в этот каталог с помощью
    команды -> cd /usr/ports/sysutils/tmux
  10. Устанавливаем -> make install clean
  11. Со всеми всплывающими окнами поступаем нажав клавишу Enter (снова можете попить чай, процесс долгий)
  12. Скачиваем утилиту SteamCMD, для этого переходим на пользователя user ->
    sudo -i -u user
  13. Создаем папку и называем ее steamcmd -> mkdir ~/steamcmd/; cd /home/user/steamsmd; mkdir /home/user/steamcmd/server
  14. wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
  15. Распаковываем архив в директорию steamcmd -> tar -xvzf steamcmd_linux.tar.gz
  16. Запуск SteamCMD -> ./steamcmd.sh
  17. Получаем ошибку -> ./steamcmd.sh: line 37:
    /usr/home/noise/steamcmd/Steam.AppBundle/Steam/Contents/MacOS/steamcmd: No such file or directory
    Это ошибка указывает на то, что под freebsd 12 нужен другой скрипт, я нашел его на:
    https://github.com/Pricetx/Scripts/blob/master/steamcmd_freebsd.sh, кому нужно скачивайте:
#!/usr/bin/env bash

STEAMROOT="$(cd "${0%/*}" && echo $PWD)"
STEAMEXE="steamcmd"

UNAME=`uname`
PLATFORM=linux32
export LD_LIBRARY_PATH="$STEAMROOT/$PLATFORM:$LD_LIBRARY_PATH"

ulimit -n 2048

MAGIC_RESTART_EXITCODE=42

if [ "$DEBUGGER" == "gdb" ] || [ "$DEBUGGER" == "cgdb" ]; then
    ARGSFILE=$(mktemp $USER.steam.gdb.XXXX)

    # Set the LD_PRELOAD varname in the debugger, and unset the global version.
    if [ "$LD_PRELOAD" ]; then
        echo set env LD_PRELOAD=$LD_PRELOAD >> "$ARGSFILE"
        echo show env LD_PRELOAD >> "$ARGSFILE"
        unset LD_PRELOAD
    fi

    $DEBUGGER -x "$ARGSFILE" "$STEAMROOT/$PLATFORM/$STEAMEXE" "$@"
    rm "$ARGSFILE"
else
    $DEBUGGER "$STEAMROOT/$PLATFORM/$STEAMEXE" "$@"
fi

STATUS=$?

if [ $STATUS -eq $MAGIC_RESTART_EXITCODE ]; then
    exec "$0" "$@"
fi
exit $STATUS
  1. Cоздаем файл командой -> touch steamcmd_freebsd.sh
  2. Открываем его и вставляем содержимаое скрипта
  3. Сохраняем F2 -> Y -> Enter
  4. Даем права на исполнение -> chmod +x ./steamcmd_freebsd.sh
  5. Запускаем -> ./steamcmd_freebsd.sh
  6. После появления Steam> пишем login anonymous

Появляется ошибка:
net.cpp (1981) : Assertion Failed: Unable to set default socket options, error 22
Это ошибка имплементации сокетов в линуксе, пока рещения на эту ошибку не найдено, поэтому ждем

force_install_dir /home/user/server
app_update 90

Должна получиться строчка: Success! App ’90’ fully installed.

Установка закончена – выходим:

  1. Steam>exit
  2. Проверяем наш скаченный сервер по CS 1.6

Мы успешно установили сервер по CS 1.6 на юникс-подобную систему FreeBSD 12.

Оставьте комментарий

Войти с помощью: