Запуск сервера под линукс

Все, что нужно для сборки игрового сервера на Linux

С самого начала игры почти всегда было веселее с несколькими игроками. Начиная с Atari 2600 и игровых автоматов, многопользовательский геймплей процветал. Как только наступил век Интернета, удаленный мультиплеер стал возможен с появлением игровых серверов.

В современных играх можно не только подключаться к серверам, но даже запускать их. Будь то сервер Minecraft, игра Counter-Strike или любое из множества игр, обычно есть способ запустить игровой сервер. Хотя игры в Linux могут показаться противоположными, в Linux доступно множество разнообразных игр.

Узнайте обо всем, что вам нужно для создания игрового сервера в Linux.

Требования к построению игрового сервера

Существует ошибочное мнение, что создание игрового сервера требует мощного оборудования. Наоборот, вам не нужно высококлассное оборудование. Однако компьютеры с низкими характеристиками, скорее всего, не дадут оптимальной производительности. Так что этот старый нетбук, который у вас лежит, вероятно, не лучший выбор.

Хотя создание игрового сервера в Linux не так уж сложно, оно требует некоторого знакомства с сетью и компьютеров. То, что вы не знаете, вы можете посмотреть вверх.

Сборка игрового сервера на Linux

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

Настройка сервера Minecraft требует серверного программного обеспечения от Mojang. К счастью, это бесплатно скачать. Сервер Minecraft под Linux должен нормально функционировать как в 32-, так и в 64-битных версиях Linux. Тем не менее, Minecraft Gamepedia действительно предполагает, что 64-битные итерации могут повысить производительность.

Нам понадобится Java для запуска сервера Minecraft. Linux более совместим

с установленной Java. Чтобы проверить версию Java, введите команду

Если выполнение этой команды возвращает сообщение, похожее на «Java not found», вам необходимо установить его. Вы можете установить Java на Linux несколькими способами. Самым простым в Ubuntu является использование apt-get.

Перед установкой Java обновите индекс пакета:

Затем установите Java с помощью следующей команды. Он устанавливает Java Development Kit по умолчанию (JDK):

Вы можете попробовать OpenJDK, но пользователи сообщают о большем успехе при официальной установке Oracle Java.

Ubuntu

Если вы используете Ubuntu, вам может потребоваться запустить следующие установщики пакетов, чтобы вы могли использовать

Затем добавьте обновление списка источников, добавьте PPA и, наконец, установите Java:

После добавления PPA выполните обновление:

После завершения обновления установите Java через командную строку:

Теперь у вас должна быть установлена ​​Java.

Debian

В дистрибутивах на основе Debian установка Java немного отличается. Вам нужно сканировать несвободные репозитории. Для этого добавьте non-free в файл /ect/apt/sources.list.

Фактический URL, к которому вы добавите это, будет отличаться. Например, он может читать

Поэтому новый URL будет:

Как только вы добавите несвободные, обновите список источников:

Чтобы установить Java, запустите:

Arch Linux

Arch Linux ARMv7

На Arch Linux ARMv7 лучшим способом является установка Java из Oracle, скачайте здесь. Извлеките этот файл в / usr / lib / jvm и переключите Java по умолчанию на:

Читайте также:  This windows are clean перевод

Gentoo

Если вы используете Gentoo, просто запустите:

Другие дистрибутивы

Всегда есть метод загрузки. Oracle предоставляет пакеты загрузки для Java, которые совместимы с большинством дистрибутивов. Доступны как 32-, так и 64-битные пакеты.

Загрузите программное обеспечение сервера Minecraft

Создайте каталог для вашего сервера Minecraft и измените каталог на него. Дайте ему имя («майнкрафт» — хороший выбор), затем перейдите в этот каталог.

Затем загрузите последнюю версию программного обеспечения сервера Minecraft:

Также можно загрузить последнюю версию программного обеспечения сервера Minecraft по этой ссылке. Переместите JAR в нужную папку Minecraft. Перейдите в каталог, если вы этого еще не сделали.

Наконец, запустите следующее:

Однако установить не удастся. Мы должны сначала согласиться с лицензией Eula. Войти:

Откроется файл eula.txt. Просто измените:

Введите команду еще раз:

Подключение к серверу Minecraft

Теперь вы можете подключиться к только что установленному серверу Minecraft, запустив Minecraft. Выбрать Мультиплеер. Затем дайте имя вашему серверу. Наконец, добавьте адрес машины или вашего локального ПК. Это будет IP и порт. По умолчанию порт Minecraft использует 25565. Таким образом, адрес сервера будет [IP-адрес]: 25565. После этого просто нажмите Готово.

Теперь, когда вы установили свой сервер Minecraft, узнайте, как оптимизировать Minecraft для Linux.

Создание игрового сервера Steam

Для Counter-Strike и других игр Steam вам понадобится игровой сервер Steam. Тем не менее, создание игрового сервера Steam немного отличается. Я использовал машину с Ubuntu 16.04 LTS. Хотя в сообщении сообщества Steam предлагается создать другую учетную запись пользователя для использования в качестве сервера Steam, я просто использовал свою учетную запись пользователя Ubuntu по умолчанию.

SteamCMD

Утилита SteamCMD позволяет запускать сервер Steam. Этот инструмент загружает и устанавливает выделенные серверы для игр Steam. Чтобы загрузить установщик SteamCMD, вставьте его в командную строку:

Убедитесь, что вы находитесь в вашем каталоге steamcmd. Как только вы перешли в этот каталог, запустите:

Установочный скрипт и обновление выполнятся. После этого попробуйте войти в систему. Вы можете просто ввести:

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

Подключение к серверам

Хотя SteamCMD установлен, нам все еще нужно добавить выделенные серверы. Однако есть несколько тонкостей. А именно, если Steam предоставляет выделенный сервер и он бесплатный, то анонимный вход в систему подойдет. Но некоторые серверы требуют, чтобы вы вошли в систему с учетной записью Steam.

Например, Team Fortress 2 можно играть таким образом. Не играл в Team Fortress или давно? Ну, может быть, вам нужно вернуться к TF2. Тем не менее, если Steam предлагает выделенный сервер и это не бесплатная услуга, вы должны войти в систему с учетной записью Steam. Это как если бы вы использовали клиент Steam. Серверы Counter-Strike должны быть настроены таким образом.

Steam назначает идентификаторы приложений для клиентов и серверов.

  • Клиентский AppID: 240
  • AppID сервера: 232330

Team Fortress 2

  • Клиентский AppID: 440
  • AppID сервера: 232250

Но что мы на самом деле делаем с этой информацией? Нужно зайти в выделенные папки. Поэтому для сервера Team Fortress 2 путь по умолчанию будет

Чтобы создать папку установки, запустите:

Есть два способа установки игры. Если вы используете анонимный вход, просто введите:

Читайте также:  Отобразить всех пользователей linux

Однако, если вам необходимо использовать идентификатор Steam, вместо этого используйте:

Поэтому, чтобы установить сервер Team Fortress 2, введите его в командной строке:

Некоторые конфигурации могут потребоваться в зависимости от вашей настройки. Вы можете прочитать больше об этом здесь. Чтобы запустить игровой сервер, перейдите в соответствующую папку и запустите ее. Мы рассмотрим пример Team Fortress 2:

Другие Методы

Хотя предыдущие примеры охватывают игры Steam и Minecraft, это не единственные игры, для которых вы можете использовать сервер. И это не единственные методы создания игрового сервера в Linux. GameServers.com предлагает солидное решение. Есть платные версии, но я попробовал бесплатный Counter-Strike: Source сервер. Проверьте бесплатные серверы, доступные здесь.

Как только вы запросите сервер, вы получите электронное письмо с информацией на вашем сервере. Нажмите на ссылку и следуйте инструкциям (см. Ниже). Это аккуратный сервис. Примечательно, что это особенно полезно, если у вас устаревшее оборудование или вы просто хотите отдельный сервер.

Наконец, Linux Game Server Managers предлагает отличное решение. Это фантастический инструмент, который совместим с множеством дистрибутивов. LGSM может похвастаться более чем 50 выделенными серверами. Кроме того, это с открытым исходным кодом. Инструмент командной строки позволяет быстро развертывать выделенные игровые серверы в Linux. Проверьте демо ниже:

Хотя это отличный выбор, существует множество вариантов настройки игрового сервера Linux. Что вы используете? Дайте нам знать в комментариях ниже!

Источник

Домашний linux сервер своими руками

Хочется поделиться с хабросооществом информацией о том как я собирал домашний сервер.

Из софта на домашнем сервере будет «крутиться» следующий набор:

  • torrent клиент с web-мордой
  • DHCP — раздаем ip адреса и сетевые настройки
  • TFTP — для сетевой загрузки
  • OpenVPN — для хождения в сеть с нетбука из недоверенных сетей
  • FTP/Samba/NFS — сетевые шары для доступа с домашних машин
  • Radius — для WPA2 авторизации
  • DigiTemp — мониторинг домашней температуры

Аппаратная часть

При выборе аппаратной части, вариантов было несколько:

  • старенький комп
  • самосбор на базе mini-ITX
  • тонкий клиент HP T5000
  • тонкий клиент на базе Neoware CA2

Первый вариант был сразу же отброшен из-за шума, пыли и энергопотребления. Второй был заказан, пока шли комплектующие, я успел передумать (захотелось шум и энергопотребление свести до минимума). В итоге, на Ebay были куплены тонкие клиенты HP t5000 и Neoware CA2. Месяц спустя пришли тонкие клиенты и из двух, после долгих размышлений, был выбран Neoware CA2. В него идеально поместился 2.5′ HDD и вторая сетевая карта.

После допиливания, в буквальном смысле, Neoware CA2 я принялся ставить на него Ubuntu 9.10 с офисного TFTP сервера. Установку производил самую минимальную. Если бы не было набора для сетевой установки, ставил бы Debian с USB CD-ROM и netinstall диска. Сам я ярый фанат RHEL/CentOS, но на домашний сервер решил ставить что-то из debian семейства, для расширения кругозора.

Torrent клиент и вебморда

Теперь перейдем к установке torrent клиента и вебморды. Была выбрана связка rtorrent + rutorrent, установка из репозитариев была отметена сразу, т.к. «родной» пакет был собран без xmlrpc-c который расширяет функционал rutorrent. Ниже фактически, скрипт для авто-установки rtorrent+rutorrent+lighttpd+php.

Устанавливаем всё что необходимо для компиляции xmlrpc-c, libtorrent, rtorrent
apt-get install checkinstall subversion build-essential make autoconf autotools-dev automake libtool libcurl4-openssl-dev libsigc++-2.0-dev pkg-config libncurses5-dev
apt-get remove rtorrent libtorrent11 libxmlrpc-c3 libxmlrpc-c3-dev libxmlrpc-core-c3 libxmlrpc-core-c3-dev

Читайте также:  Русификатор для kodi windows

Компилируем и «заворачиваем» в .deb пакет xmlrpc-c, libtorrent, rtorrent
svn co xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/advanced xmlrpc-c
cd xmlrpc-c
./configure —prefix=/usr && make && checkinstall -D

cd ..
wget libtorrent.rakshasa.no/downloads/libtorrent-0.12.6.tar.gz
tar zxfv libtorrent-0.12.6.tar.gz
cd libtorrent-0.12.6
rm -f scripts/.m4 # для Debian
./autogen.sh && ./configure —prefix=/usr && make && checkinstall -D

cd ..
wget libtorrent.rakshasa.no/downloads/rtorrent-0.8.6.tar.gz
tar zxfv rtorrent-0.8.6.tar.gz
cd rtorrent-0.8.6
rm -f scripts/.m4 # для Debian
./autogen.sh && ./configure —with-xmlrpc-c —prefix=/usr && make && checkinstall -D

К сожалению, rtorrent не умеет работать в режиме daemon, по этому будем использовать screen
apt-get install screen -y
wget libtorrent.rakshasa.no/raw-attachment/wiki/RTorrentCommonTasks/rtorrentInit.sh —output-document=/etc/init.d/rtorrent
chmod +x /etc/init.d/rtorrent
sed -i ‘s/»user»/»torrents»/’ /etc/init.d/rtorrent
update-rc.d rtorrent defaults
useradd -d /torrents -m torrents

Создаем конфиг и папки для сессий и готовых торрент закачек, после чего стартуем rtorrent.
mkdir /torrents/.rtorrent_session
cat >> /torrents/.rtorrent.rc

Теперь займемся вебмордой rutorrent. Для работы rutorrent необходим вебсервер и интерпретатор php.
apt-get install lighttpd php5-cgi php5-cli php5-curl curl -y
lighty-enable-mod fastcgi
echo ‘server.modules += ( «mod_scgi» )’ >> /etc/lighttpd/lighttpd.conf
cat >> /etc/lighttpd/lighttpd.conf
( «127.0.0.1» =>
(
«host» => «127.0.0.1»,
«port» => 5000,
«check-local» => «disable»
)
)
)
EOF
/etc/init.d/lighttpd force-reload

Вебсервер готов, теперь будем ставить rutorrent и несколько полезных плагинов к нему.
cd /var/www/
svn checkout rutorrent.googlecode.com/svn/trunk/rutorrent
cd /var/www/rutorrent/plugins/
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/tracklabels
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/cookies
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/autotools
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/erasedata
chown -R www-data:www-data /var/www/

Теперь можно заходить по server_ip/rutorrent и начинать пользоваться.

Теперь установим DHCP сервер и создадим для него конфиг таким образом чтобы клиенты получали:
router 192.168.1.1
dns сервер 8.8.8.8
сервер времени time.nist.gov
tftp сервер 192.168.1.1
и для примера фиксированная выдача 192.168.1.100 клиенту с MAC-адресом 00:1B:FC:33:F0:25
aptitude install dhcp3-server
cat >> /etc/dhcp3/dhcpd.conf
строчки с option-150 нужны для моего VoIP телефона Cisco 7940.

TFTP и сетевая установка

aptitude install xinetd atftpd atftp

cat >> /etc/xinetd.d/tftp
Теперь проверим, работает ли tftp сервер
root@dvr:

# echo bla > /tftpboot/123
root@dvr:

# atftp 127.0.0.1
tftp> get 123
tftp>
root@dvr:

# cat 123
bla

Всё нормально, теперь создадим netinstall наборы для нескольких ОС: Ubuntu karmic, Ubuntu lucid, Debian lenny, Debian sid, Debian squeeze, Fedora 13, CentOS 5.5, Mandriva 2010.0, Suse 11.2, Slackware 13.1, Hardware Detection Tool, memtest и MHDD. Для этого предлагаю использовать слегка модифицированный скрипт который я взял с HowtoForge.
apt-get install lftp -y

wget itblog.su/tftpboot_installs.sh
bash tftpboot_installs.sh

Теперь добавим SystemRescueCd в PXE меню
wget «http://downloads.sourceforge.net/project/systemrescuecd/sysresccd-x86/1.6.3/systemrescuecd-x86-1.6.3.iso?use_mirror=citylan»
mount -o loop systemrescuecd-x86-1.6.1.iso /mnt/
cp /mnt/sysrcd.* /var/www/
cp /mnt/isolinux/initram.igz /tftpboot/
cp /mnt/isolinux/rescuecd /tftpboot/

cat >> /tftpboot/pxelinux.cfg/default
Без особого труда в это меню можно добавить продукты Acronis, инсталляцию и запуск Windows XP и прочее.

Вот так будет выглядеть наше меню:

Продолжение в следующей части. А именно:

  • OpenVPN сервер для «хождения» в сеть из не доверенных сетей (например из гостиницы)
  • FTP/Samba/NFS сетевые шары
  • Radius для авторизации wi-fi клиентов
  • DigiTemp зачатки умного дома, мониторинг температуры в квартире и за окном
  • festival — говорящий будильник
  • бакапы с хостинга

и подытожит статью скрипт который всё это установит в «два клика».

С удовольствием выслушаю замечания и дополнения.

Источник

Оцените статью