Меню Рубрики

Установка steamcmd на centos

SteamCMD

Консольный клиент Steam или SteamCMD — новая утилита для установки и обновления выделенных серверов через интерфейс командной строки. Он работает только с играми, которые переведены на контентную систему SteamPipe. Постепенно все серверы, использующие HLDSUpdateTool, перейдут на нее.

Contents

Загрузка SteamCMD

Windows

1. Создайте папку для SteamCMD.

3. Извлеките содержимое zip-архива в созданную папку.

Linux

1. Сначала установите зависимости необходимые для запуска SteamCMD.

2. Рекомендуется создать отдельного пользователя для SteamCMD. В любом случае не запускайте из под root пользователя, это может быть не безопасно. Выполните следующую команды с root-правами чтобы создать пользователя steam и войти под ним:

(Если вы предпочитаете использовать sudo , просто запустите предыдущую команду с префиксом sudo .)

3. Создайте директорию для SteamCMD и перейдите в неё.

3. Загрузите SteamCMD для Linux.

4. Извлеките содержимое в директорию.

1. Откройте Terminal.app и создайте директорию для SteamCMD.

2. Загрузите SteamCMD для OS X.

3. Извлеките содержимое в директорию.

Запуск SteamCMD

При первом запуске SteamCMD автоматически обновится и отобразит приглашение Steam> . Наберите help для более подробной информации.

Windows

Откройте Командную строку и запустите SteamCMD.

Linux/OS X

Откройте терминал и запустите SteamCMD.

Вход в SteamCMD

Анонимно

Некоторые сервера можно загрузить анонимно.

С аккаунтом Steam

Однако большинство сервером требуют входа в аккаунт Steam.

Если Steam Guard активирован, то проверьте вашу электронную почту чтобы узнать код доступа Steam Guard и ввести его. Это требуется сделать только при первом входе (а также при удалении файлов где SteamCMD хранит регистрационную информацию).

Вы должны увидеть сообщение о том, что вы успешно вошли в свой аккаунт.

Загрузка приложения

1. Запустите SteamCMD и войдите.

2. Установите директорию установки приложения.

Например директорию с именем cs_go внутри текущей директории: e.g. a directory named cs_go inside the current directory:

3. Установить или обновить приложение можно с помощью команды app_update . Для проверки целостности приложения добавьте команду validate . Для загрузки beta версий, используйте опцию -beta . Для примера HLDS beta версия называется beta , а beta версия SrcDS называется prerelease . Некоторые beta версии защищены паролем, чтобы иметь возможность скачивать их необходимо добавить опцию -betapassword

HLDS это особый случай: App ID всегда 90 и мод должен быть выбран первым. Это делается путем установки параметра конфигурации приложения mod к запрашиваемому значению.

Пример: Установить и проверить выделенный сервер Counter Strike: Gloval Offensive: Пример: Установить и проверить HLDS с Team Fortress Classic:

3. После завершение, введите quit чтобы правильно завершить сессию с серверами Steam.

Проверка целостности

Команда для проверки целостности всех файлов. Это полезно если они повреждены или отсутствуют.

Рекомендуется использовать эту команду только при начальной установки или если файлы сервера были изменены.

Поддерживаемые сервера

Список известных серверов, которые использует SteamCMD установить доступен на странице Dedicated Servers List странице.

Автоматизация SteamCMD

Есть два способа для автоматизации SteamCMD.

Командная строка

Вводить команды в командной строке необходимо с символом плюс в качестве префикса, например:

Чтобы установить определенный мод для HL1, таких как Counter-Strike: Condition Zero:

Для игры которая требует авторизацию, такой как Killing Floor:

Создание сценариев

1. Введите ваши команды SteamCMD в текстовом файле. (Вы можете добавить комментарии, которые начинаются с // .)

2. Запустите SteamCMD с опцией +runscript , ссылаясь на файл который вы только что создали.

Кросс-платформенная установка

Можно выбрать платформу для которой необходимо скачать файлы, даже если это не та платформа на которой вы сейчас работаете. Это делается с помощью переменной @sSteamCmdForcePlatformType . (Да, это два «s» в начале имени переменной.) Например, чтобы загрузить выделенный сервер для Windows CSGO на Linux, вы можете запустить следующую команду:

или использовать следующий сценарий:

Поддерживаемые значения windows , macos и linux .

Windows ПО/Сценарии

SteamCMD AutoUpdater

Установка и автоматическое обновление любого игрового сервера Install and automaticly update any game server

condenser

condenser это загрузчик для установки, настройки, и запуска выделенных игровых серверов Steam.

SteamCMD GUI

Этот инструмент позволяет использовать SteamCMD на Windows, без командной строки и/или пакетных файлов.

SteamCMD Guardian 1.2

Посмотреть и загрузить можно здесь: http://pastebin.com/BRUbsGQh

Linux Сценарии

Linux Game Server Managers

Linux Game Server Managers приложение командной строки для быстрого, простого развертывания и управления различных специализированных игровых серверов использующих SteamCMD.

  • Установка сервера (SteamCMD)
  • Запуск/Остановка/Перезапуск сервера
  • Обновление сервера (SteamCMD)
  • Мониторинг сервера (включая e-mail уведомления)
  • Резервное копирование сервера
  • Командная строка сервера
  • ARMA 3
  • Blade Symphony
  • Counter Strike
  • Counter Strike: Condition Zero
  • Counter Strike: Global Offensive
  • Counter Strike: Source
  • Day of Defeat
  • Day of Defeat: Source
  • Fistful of Frags
  • Garry’s Mod
  • Half-Life: Deathmatch Classic
  • Half-Life 2: Deathmatch
  • Insurgency
  • Just Cause 2
  • Killing Floor
  • Left 4 Dead
  • Left 4 Dead 2
  • No More Room in Hell
  • Natural Selection 2
  • Red Orchestra: Ostfront 41-45
  • Team Fortress Classic
  • Team Fortress 2
  • Team Fortress Classic

Полный список серверов и инструкции: http://danielgibbs.co.uk/lgsm

SteamCMD Guardian 1.2

Следующий сценарий был протестирован на Debian Wheezy.

Для работы сценария необходимо достаточно свободного места. Предпочтительно использовать отдельно созданного пользователя (например steam) с его собственной домашней директорией (/home/steam). Необходимо войти под этим пользователем через SSH, tty или используя su.

  1. Создайте файл. nano updateserver.sh
  2. Вставьте код
  3. Измените код, добавив по крайней мере 1 игру в строку DL_SV*= .
  4. Закройте файл Ctrl + O , затем ↵ Enter и в конце Ctrl + X .
  5. Дайте права на исполнение для пользователя chmod u+x ./updateserver.sh
  6. Запустите файл ./updateserver.sh
Читайте также:  Установка различных типов кондиционеров

Файл автоматически загрузить SteamCMD, обновить его и установить все выбранные игры (до 4). Запустите файл повторно для обновления игры.

Известные проблемы

Failed to install app ‘xxxxxx’ (No subscription)

Если вы получаете ошибку ‘No subscription’, то необходимо войти под Steam аккаунтом в котором эта игра приобретена. См. Dedicated Servers List.

32-битные библиотеки на 64-битных дистрибутивах Linux

Так как SteamCMD это 32-битная программа, для запуска требуются некоторые 32-битные библиотеки, даже если у вас уже установлены 64-битные версии.

Может произойти следующая ошибка:

Решение зависит от вашего дистрибутива:

Дистрибутивы основанные на Debian (Ubuntu, Mint, и т.д.)

На Debian 7 «Wheezy» вы можете столкнуться с такой ошибкой:

Чтобы исправить это, выполните следующие действия:

Дистрибутивы основанные на Red Hat (RHEL, Fedora, CentOS, и т.д.)

Arch Linux

Не забудьте сначала включить репозиторий Multilib.

Login Failure: No Connection

На Linux вы можете получить ошибку «Login Failure: No Connection». Она связана с отсутствующими правилами iptables. Необходимо их прописать например вот так:

На серверах Windows вы можете столкнуться с ошибкой «SteamUpdater: Error: Download failed: http error 0» и «SteamUpdater: Error: Steam needs to be online to update. Please confirm your network connection and try again.». Это как правило решается установкой опции «Автоматическое определение параметров» в IE (Internet Explorer) через настройки локальной сети в меню Свойства браузера. On Windows servers, you may experience «SteamUpdater: Error: Download failed: http error 0» and «SteamUpdater: Error: Steam needs to be online to update. Please confirm your network connection and try again.». This is usually fixed by checking «Automatically detect settings» in IE (Internet Explorer) through the lan settings in the Internet option menu.

  1. Откройте Internet Explorer (IE).
  2. Нажмите на ИнструментыСвойства браузера
  3. Нажмите на вкладку Подключения
  4. В нижней части вы должны увидеть Настройки параметров локальной сети
  5. Проверьте первый флажок (Автоматическое определение параметров)
  6. Нажмите на OK, и Применить.

Попробуйте запустить SteamCMD снова. Если по-прежнему не работает, то попробуйте уменьшить свой Уровень безопасности для этой зоны на средний или ниже на вкладке Безопасность в Свойства браузера.

Ошибки запуска SteamCMD

Unable to locate a running instance of Steam

Вы можете получить следующее сообщение об ошибке при запуске сервера на Linux:

Решить проблему можно сделав символическую ссылку steamclient.so

Ошибка запуска ulimit Linux

Некоторые пользователи могут получить ошибку ULIMIT (no permission/cannot open file) во время запуска сценария. Эта ошибка вызвана маленьким значением параметра -n (число файловых дескрипторов) ULIMIT . SteamCMD использует стандартные команды внутри сценария оболочки инициализации, чтобы изменить ULIMIT автоматически, но некоторые серверы могут запретить повышение значения ULIMIT после запуска (или за пределы лимита, установленного root ).

Это может быть исправлено путем изменения ограничения на максимальное число открытых файлов ulimit:

Если появляется ошибка (no permission), вам придется войти под root чтобы изменить параметр. Чтобы проверить текущую настройку введите ulimit -a. Система выдаст много строк, но вам нужно будет найти только одну:

В этом случае 1024 является текущим значением.

Вы можете также изменить ограничения в файле /etc/security/limits.conf .

В большинстве случаев вы просто получите предупреждающее сообщение, однако это не остановит запуск SteamCMD.

Загрузка HLDS

При попытке скачать мод HL1, таких как TFC, сначала загружаются файлы HLDS, но не мода. Это происходит как с обычной версией так и с бета-версией. Вы, возможно, придется попробовать несколько раз, пока все необходимые файлы будут загружены, но как только это будет сделано, файлы должны правильно обновить следующий раз.

Просто удалив файлы appmanifest, без загрузки замены из сторонних источников, может сработать. Вы получите в начале сообщение об ошибке из-за удаленных файлов, но загрузка должна продолжится.

источник

SteamCMD

The Steam Console Client or SteamCMD is a command-line version of the Steam client. Its primary use is to install and update various dedicated servers available on Steam using a command-line interface. It works with games that use the SteamPipe content system. All games have been migrated from the deprecated HLDSUpdateTool to SteamCMD.

Contents

Downloading SteamCMD

Windows

1. Create a folder for SteamCMD.

3. Extract the contents of the zip to the folder.

Linux

Create a user account named steam to run SteamCMD safely, isolating it from the rest of the operating system. Do not run steamcmd while operating as the root user — to do so is a security risk.

1. As the root user, create the steam user:

2. Go into its home folder:

Package from repositories

1. It’s recommended to install the SteamCMD package from your distribution repositories, if available:

Читайте также:  Установка защиты бмв е60

2. Link the steamcmd executable:

Docker

If your server is running Docker, you can simply use:

steamcmd.sh location: /home/steam/steamcmd

This image can be used as a base image for Steam-based dedicated servers. Example: https://hub.docker.com/r/cm2network/csgo/

You can find the associated Docker Hub page here: https://hub.docker.com/r/cm2network/steamcmd/

Manually

1. Before you begin, you must first install the dependencies required to run SteamCMD:

2. As the root user, escalate to the steam user:

If you’re not logging in as root and you instead use sudo to perform administration, escalate to the steam user as follows:

3. Create a directory for SteamCMD and switch to it.

4. Download and extract SteamCMD for Linux.

5. Install tmux and/or screen for easy server management

macOS

1. Open Terminal.app and create a directory for SteamCMD.

2. Download and extract SteamCMD for macOS.

Running SteamCMD

On first run, SteamCMD will automatically update and enter you into a Steam> prompt. Type help for more information.

Windows

Open a Command Prompt and start SteamCMD.

Linux/macOS

Open a terminal and start SteamCMD.

If you installed it using the package from repositories:

If you installed it manually:

SteamCMD Login

Anonymous

To download most game servers, you can login anonymously.

With a Steam account

Some servers require you to login with a Steam Account.

If Steam Guard is activated on the user account, check your e-mail for a Steam Guard access code and enter it. This is only required the first time you log in (as well as when you delete the files where SteamCMD stores the login information).

You should see a message stating that you have successfully logged in with your account.

Downloading an app

1. Start SteamCMD and log in.

2. Set your app install directory. (Note: use forward slashes for Linux/macOS and backslashes for Windows.)

e.g. a directory named cs_go inside the current directory:

For Windows: force_install_dir c:\cs_go\

3. Install or update the app using the app_update command (supplying a Steam Application ID). Please check here for the dedicated server list: Dedicated server list. To also validate the app, add validate to the command. To download a beta branch, use the -beta option – for example, the HLDS beta branch is named beta and the SrcDS beta branch is named prerelease . Some beta branches are protected by a password; to be able to download from them, also add the -betapassword

HLDS is a special case: the App ID is always 90 and a mod must be chosen first. This is done by setting the app config option mod to the requested value.

Example: Install and validate the Counter Strike: Global Offensive dedicated server: Example: Install and validate HLDS with Team Fortress Classic:

3. Once finished, type quit to properly log off of the Steam servers.

Validate

Validate is a command that will check all the server files to make sure they match the SteamCMD files. This command is useful if you think that files may be missing or corrupted.

It is recommended you use this command only on initial installation and if there are server issues.

Supported Servers

A list of known servers that use SteamCMD to install is available on the Dedicated Servers List page. Note that any extra commands listed need to be executed before the app_update line.

Automating SteamCMD

There are two ways to automate SteamCMD. (Replace steamcmd with ./steamcmd.sh on Linux/macOS.)

Command line

Append the commands to the command line prefixed with plus characters, e.g.:

To install a specific game mod for HL1, such as Counter-Strike: Condition Zero:

For a game that requires logins, like Killing Floor:

Creating a script

1. Put your SteamCMD commands in a text file. (You may add comments which start with // .) Example:

2. Run SteamCMD with the +runscript option, referring to the file you created previously. Example:

Cross-Platform Installation

It is possible to choose the platform for which SteamCMD should download files, even if it isn’t the platform it is currently running on. This is done using the @sSteamCmdForcePlatformType variable. (Yes, those are two «s»es at the beginning of the variable name.) For example, to download the Windows CSGO dedicated server on Linux, you can run the following command:

or use the following script:

The supported values are windows , macos and linux .

Windows Software/Scripts

condenser

condenser is a bootstrapper for installing, configuring, & launching Steam dedicated server apps.

SteamCMD AutoUpdater

Install and automatically update any game server

SteamCMD GUI

This tool allows the user to use SteamCMD on Windows without command lines and/or batch files.

SteamCMD Guardian 1.2

Linux Scripts

LinuxGSM

LinuxGSM is the command-line tool for quick, simple deployment and management of Linux dedicated game servers.

Читайте также:  Установка гарант киа сид

Features

Supported Servers

There are now 100+ different game servers supported and rising. For a full list visit the website.

Links

SteamCMD Guardian 1.2

The following script was tested on Debian Wheezy.

To make this script work, we need a location. Preferably you created a user (e.g. steam) with it’s own home directory (/home/steam) and are logged in as it via SSH, tty or using su.

  1. Make the file. nano updateserver.sh
  2. Paste in the code
  3. Modify the code, add at least 1 game to the DL_SV*= rows.
  4. Close the file with Ctrl + O , followed by ↵ Enter and concluding with Ctrl + X .
  5. Give the file execute rights for the user chmod u+x ./updateserver.sh
  6. Run the file ./updateserver.sh

The file will auto-download SteamCMD, update it and install all chosen games (up to 4). Run the file again to update the games.

Known issues

ERROR! Failed to install app ‘xxxxxx’ (No subscription)

If you get the ‘No subscription’ error, the game/server you are trying to download either requires a login or that you have purchased the game. You will therefore have to log in with a Steam username and password – if that doesn’t help, you may need to purchase a copy of the game on Steam first. See Dedicated Servers List.

32-bit libraries on 64-bit Linux systems

Since SteamCMD is a 32-bit binary, 32-bit libraries are required.

The following error may occur:

The resolution depends on your distro:

Debian based distributions (Ubuntu, Mint, etc.)

With Debian 7 «Wheezy» you may encounter this error:

To fix this, do the following:

Red Hat based distributions (RHEL, Fedora, CentOS, etc.)

Arch Linux

Don’t forget to first enable the multilib repository.

Login Failure: No Connection

On linux servers, you may experience a «Login Failure: No Connection» error. This is related to missing iptables rules. You will want something along these lines:

On Windows servers, you may experience «SteamUpdater: Error: Download failed: http error 0» and «SteamUpdater: Error: Steam needs to be online to update. Please confirm your network connection and try again.». This is usually fixed by checking «Automatically detect settings» in IE (Internet Explorer) through the lan settings in the Internet option menu.

  1. Open Internet Explorer (IE).
  2. Click on ToolsInternet Options
  3. Click on the Connections tab
  4. At the bottom, you should see Local Area Network (LAN) Settings.
  5. Check the first box (Automatically detect settings)
  6. Hit OK, and Apply. Try running the SteamCMD again; if it still doesn’t work. try lowering your Internet Security level zone to medium or lower. You can find that in the Security tab in Internet Options.

SteamCMD startup errors

Unable to locate a running instance of Steam

You may get the following error when starting a server with Linux:

Resolve the issue by linking steamclient.so to the

ulimit Linux startup error

Some users may get a ulimit error (no permission/cannot open file) while script is starting up. This error caused by a low setting of the -n parameter (number of file descriptors) of ulimit . SteamCMD uses standard commands inside of the initialization shell script to change the ulimit automatically, but some servers may forbid increasing ulimit values after startup (or beyond a limit set by root ).

This can be fixed by changing the file descriptor number ulimit:

If an error appears (no permission), you will have to log in as root to change the parameter. To check the current setting, type ulimit -a; the system will reply with many rows, you need to find one:

In this case, 1024 is the current value.

root can also modify the limits in the /etc/security/limits.conf file.

In most instances you will simply get a warning message however it will not stop SteamCMD from running.

Getting a Linux 64-bit steamclient.so on a Windows Machine

WLS does not play nicely with 32-bit files. If you need the steamclient.so 64-bit file you can simply run the following command:

You will then find the file here:

Only the HLDS engine is downloaded

When trying to download a HL1 mod like TFC, initially it only downloads the engine files of the HLDS, but not the mod. This happens with both the regular version and the beta. You may have to try multiple times until all the required files are downloaded, but once this is done, the files should update correctly next time.

Just deleting the appmanifest files, without downloading replacements from a third party, may work as well! You will get an error at first though, complaining that something went wrong, which is due to the deleted files.

On a side note, for some reason CS is always installed as well.

источник

Добавить комментарий