Где хранить большие файлы? Собираем домашний сервер. Домашний сервер - это дорого. Торрент-качалка на базе transmission и файловый сервер

09.05.2019
34 нравится голосование
закрыто
спасибо
за ваш голос

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

На этапе проектирования сервера стоит задуматься о задачах, которые он будет выполнять. Какие же типы серверов существуют? К основным типам можно отнести файловые серверы, серверы баз данных, почтовые серверы, серверы печати, FTP или WEB серверы. В большинстве случаев, для маленькой корпоративной сети или ее сегмента сервер будет выступать в качестве контроллера домена или рабочей группы. По сути, эти типы серверов являются собирательными и несут в себе возможности как по хранению файлов и/или баз данных, так и функции по работе с почтовыми отправлениями, а также по управлению очередью печати сетевого принтера. Нужно отметить, что сборка сервера ничем не отличается от сборки персонального компьютера. Пользователям, знакомым с железом, не составит труда собрать и основу сервера. Отличия же серверов одного от другого, в основном, состоят в наборе программного обеспечения.

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

Платформа должна быть максимально производительной. Из процессоров следует выбирать специализированные серверные версии, обладающие высокой скоростью обработки данных. Стоит обратить свой взгляд и на многопроцессорные системы. Оперативной памяти тоже должно быть достаточное количество, чтобы не затруднять работу всей системы. Объем ОЗУ должен быть не менее 8-16 Гб.

Также нужно уделить особое внимание дисковой подсистеме. Необходима установка максимально производительных жестких дисков, а также объединение их в RAID массивы с чередованием, а в случае с файловыми серверами и серверами баз данных еще и с зеркалированием для обеспечения сохранности файлов в случае сбоя. Жесткие диски следует выбирать с интерфейсами SATA или SAS, обеспечивающие высокую пропускную способность до 6 Гбит/сек.

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

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

Выбор же программного обеспечения сервера определяется возложенными на него задачами, а также квалификацией обслуживающего персонала. Для домашней сети или сети небольшой организации вполне будет достаточно сетевой версии операционной системы Windows. Для более сложных задач и более квалифицированного обслуживающего персонала, следует присмотреться к POSIX системам, таким как Linux, xBSD и прочим. Данные системы имеют более высокие показатели безопасности и позволяют более тонко настроить сервер, адаптировав его именно под свои задачи.

Свой первый домашний сервер я собрал в 2008 году: Celeron E1400 на mATX платформе ASUS и всё это в прекрасном корпусе Antec NSK 1380. Корпус действительно хорош за исключением двух моментов: 1. Нестандартный формат блока питания (и как следствие возможность поставить только низкопрофильное охлаждение на процессор) 2. Малое число посадочных мест под накопители и плохое их охлаждение (поэтому я никогда не ставил туда больше одного диска - и так было тесно и жарко).

С ролью маршрутизатора эта машина справлялась прекрасно. Но организация на ней файлопомойки уже создавала неудобства: место вечно кончается -> приходится менять диск на новый большего размера (ну не чистить же его в самом деле!) -> для этого надо перенести на новый диск систему -> уж если переносишь, то не обновить ли ее заодно, а то пакеты с новыми часовыми поясами под текущую приходится искать чуть ли не собаками (пламенный привет Федоре) -> … И так каждый раз.

Захотелось собрать новый сервер, который позволил бы организовать RAID или хотя бы просто установить несколько дисков, чтобы решить проблему с местом радикально и надолго. А еще поднять несколько виртуальных машин для производственных нужд. А еще…

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

Требования:

  • бесшумность
  • компактность
  • возможность удобной установки/замены дисков и достаточное количество посадочных мест (от 4)
  • универсальность (больше разъемов/интерфейсов, всяких и разных, мало ли что захочется прикрутить)

Форм-фактор Mini-ITX не был обязательным критерием, но логично вытекал из второго пункта. Поэтому я решил для себя, что попытаюсь выжать из него максимум и только в крайнем случае начну смотреть в сторону mATX.

Disclaimer

Выбор железа

1. Корпус

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

Подходящие для домашнего сервера/NAS варианты можно пересчитать по пальцам:

Fractal Design Array R2 CFI-A7879
Chenbro ES34069 Chenbro SR30169

и пара других.

Причем большинство из них непросто или невозможно купить в России. В итоге я выбрал Chenbro SR30169. Его главные плюсы: удобная установка четырех 3.5″ дисков (с поддержкой HotSwap), продуманное охлаждение с использованием 120мм вентиляторов, стандартный блок питания (в абсолютном большинстве прочих корпусов используются Flex ATX либо нестандартные форм-факторы), удобство монтажа.

Видео о внутреннем устройстве:

2. Материнская плата

Критерии:
современная платформа с поддержкой процессоров Ivy Bridge, 2 встроенных сетевых карты, PCI-E разъем (для установки WiFi), не меньше четырех разъемов SATA (но в идеале не меньше пяти - 4 в рейд + 1 под систему), miniPCI-E на всякий случай, достаточное количество портов USB (желательно 3.0), несколько видео-интерфейсов (я не знал, к какому именно интерфейсу придется подключаться, поэтому минимум хотелось HDMI и D-Sub)

Intel® Server Board S1200KP Intel® Server Board S1200KPR
ZOTAC Z77ITX-A-E Jetway NF9E-Q77

Первые две довольно специфичны. С одной стороны, они поддерживают процессоры Xeon и память ECC, с другой стороны возможности расширения весьма ограничены: всего четыре USB (и только 2.0), всего четыре SATA, нет встроенного звука, один видеовыход, только один слот расширения. Разумеется для сервера организации эти моменты неактуальны, но для домашнего применения хочется большей гибкости. К тому же, плата с индексом KP не поддерживает 22нм процессоры, а KPR на момент сбора машины (июль-август 2012) не было в продаже.
Также не было в продаже и ZOTAC Z77ITX-A-E, хотя плата конечно очень интересная. Модуль WiFi в комплекте, две гигабитные сетевые карты - красота!
Еще несколько плат готовились на тот момент к выходу, вышли или нет не знаю, поэтому здесь про них подробно не пишу.

На днях очень вовремя вышла юзера track об отказах серверной памяти. Настоятельно рекомендую ознакомиться с ней прежде, чем использовать предложенную мной конфигурацию для критических задач.

В конечном итоге я остановился на плате Jetway NF9E-Q77. Удивительно, сколько всего компании Jetway удалось уместить в плате формата Mini-ITX! Поддержка 3го поколения процессоров Intel (LGA1155), 6 портов SATA (2xSATA3 + 4xSATA2), 2хUSB3.0 + 4xUSB2.0 (+ по паре портов каждого типа разъемами на плате), PCI-E + miniPCI-E, 2 гигабитных сетевых адаптера Intel, 3 видео-выхода (HDMI, DVI-D, D-Sub) не считая LVDS. Также есть два порта RS232, RS422/485 с разъема на плате, GPIO, Watchdog, поддержка iAMT, vPro и т.п.
Тип используемой памяти DDR3 SODIMM.

Найти эту плату в продаже в России мне не удалось, но к счастью она обнаружилась в немецком магазине minipc.de . Доставили курьерской службой. За вычетом VAT и со стоимостью доставки вышло ровно 200$. Цена за такую плату на мой взгляд более чем разумная. Кстати, плата производится по стандартам, подразумевающим в том числе промышленное применение, а значит повышенную живучесть (по информации с сайта jetway, автор статьи гарантий не дает =)).

3. Жесткие диски

Все последние лет 10-15 я пользуюсь только продукцией IBM/Hitachi. Поэтому я выбрал модель с максимальным объемом при адекватной цене (на момент сборки это была HITACHI Deskstar 7K3000 HDS723020BLA642, 2Тб) и приобрел две штуки с мыслью докупить еще две, когда определюсь с софтом (у меня были сомнения в том, что это случится быстро - так оно и вышло). Так как в выбранном корпусе в дополнение к четырем HotSwap дискам штатно могут быть установлены только 2,5” диски, я решил туда поставить диск из ноутбука, который все равно планировал заменить на SSD.
Этой зимой были докуплены два диска HITACHI Deskstar 5K3000 HDS5C3020ALA632.

4. Блок питания

БП я просто выбрал как самый маломощный (а значит дешевый) из приличных и тихих, которые были в наличии ближайшем гипермаркете.
Таковым стал AeroCool VP-450 .
Конечно, в таком компактном корпусе лучше было бы взять БП со съемными кабелями, но стоят они значительно дороже, и встречались отзывы, что в данном корпусе разъемы кабелей могу начать конфликтовать с процессорным охлаждением.

5. Процессор

От процессора мне нужно было больше ядер, меньше тепла и разумная цена. Хотя нет, еще нужен был встроенный видео-чип. Выбрал Intel Core i5 3550 .

6. Охлаждение на процессор
Здесь хотелось получить тишину, хорошее охлаждение и при этом не прогадать с габаритами. Из подходящего в ближайших магазинах оказался Arctic Cooling Alpine 11 Plus .

Ну что ж, железо закуплено, приступим к сборке!

Сборка

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

Корпус выполнен из стали SGCC толщиной 0.8мм и производит впечатление монолитности, никаких зазоров и люфтов не наблюдается, все кромки аккуратно развальцованы. Боковые стенки зафиксированы винтами с накаткой. Большую часть задней стенки занимает основание для крепления блока питания. Оставшееся место отдано под вентиляционную решетку и панель разъемов материнской платы. Имеется выдвижное ушко, позволяющее закрыть корпус на амбарный замок (правда только с одной стороны, что в данном случае имеет мало пользы) или посадить его на привязь. Есть разъем для замка Kensington.

Внутри пространство корпуса разделено на две части: задняя половина предназначена для материнской платы и блока питания, переднюю же практически целиком занимает корзина жестких дисков и ее охлаждение.

Корзина поддерживает железные RAID-контроллеры и рассчитана на 4 3,5”/2,5” SATA/SAS диска с возможностью горячей замены. Для удобства таковой установка дисков производится с фронтальной стороны корпуса.

Каждый диск закрепляется винтами в лотке, который затем вставляется в корзину. Во включенном состоянии каждый лоток светится синим светом. Может показаться, что на них имеются светодиоды, однако решение гораздо изящней - индикация расположена на задней стенке корзины, а на переднюю панель выведена с помощью оптических волноводов!

Для ограничения доступа к фронтальной панели корпуса имеется хлипкая пластиковая дверца с замком. На мой взгляд она могла бы быть и металлической, но этот нюанс я готов производителю простить =)

Материнская плата вызвала у меня подлинное восхищение! К сожалению, фотографии не позволяют передать ощущение качественно сделанного продукта, которое чувствуешь, когда держишь эту плату в руках. Как производитель смог столько всего уместить в этой крохе, при этом не забыв соблюсти все стандарты на расположение компонентов? Дабы не повторяться я не буду перечислять заново все ее возможности, желающие могут обратиться к первой части статьи или к спецификации на сайте Jetway.

Несмотря на то, что в охлаждении процессора мне пришлось отказаться от любимого формата 120мм и согласиться на компромиссные 92, у меня оставались сомнения, что достаточно габаритный кулер встанет без приключений.

AC Alpine 11 Plus устанавливается на пластиковые планки, предварительно закрепленные на плате. И хотя эти планки встали впритык к окружающим компонентам, единственное, что мне пришлось дополнительно сделать - это снять пластиковый фиксатор с разъема PCI-E x16 и слегка отогнуть хвост разъема.

Для установки блока питания необходимо снять специальную корзину в верхней части корпуса. Затем она крепится к БП, маленький удлинитель подключается в разъем питания, после чего конструкция в сборе устанавливается обратно в корпус. Таким образом производитель избавляет нас от провода питания, торчащего из верхней крышки корпуса.

У БП в наличии целый ворох разъемов, половина которых нам не понадобится.

Все, что мы можем сделать - это по доброй русской традиции убрать их на антресоли. Для разводки кабелей из закромов был извлечен фиксатор на двустороннем скотче.

Теперь можно установить материнскую плату. Охлаждение процессора вошло под БП с солидным запасом в несколько миллиметров. На время установки платы пришлось снять воздуховод дисковой корзины, но делается это элементарно.

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

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

Эффективность охлаждения и шум

На данный момент у меня в корзине стоят четыре 2TB диска Hitachi, их температура не превышает 37 градусов (в простое 34). Температура 2,5” системного диска обычно 31-33 градуса. Процессор в простое - 40 градусов.

Шум от системы главным образом состоит из шуршания воздуха. Но для этого пришлось поставить регулятор оборотов на вентилятор корзины. На штатных оборотах тихим его никак не назовешь (хотя производитель в рекламном буклете утверждает обратное). В перспективе планирую его заменить на что-то более бесшумное.

Заключение

Когда я собирал сервер, я еще не знал, какой софт на него поставить и планировал в том числе поднять статьей обсуждение этого вопроса. Несмотря на то, что в итоге (да простят меня почитатели *nix) я остановился на Windows Server 2012, для многих этот вопрос остается открытым, комментарии на эту тему приветствуются.

P.S. Цена системы без жестких дисков получилась в районе 22 килорублей.

UPD: хочу обратить внимание на то, что мне нужно нечто большее чем просто NAS. Эта же машина должна быть и тестовой средой, и средой разработки. Естественно лучше было бы развести эти роли на разные машины, но моя квартира не настолько большая. Именно поэтому выбрано железо, избыточное для обычного NAS и именно поэтому устройства типа Synology не подходят.

Задача: собрать малогабаритный домашний сервер с четырьмя 3,5-дюймовыми HDD, по возможности тихий. Служить будет в качестве NAS, backup-сервера и торрентокачалки.

Решение :
Во-первых необходимо было выбрать материнскую плату. Стандарные варианты - это mATX и Mini-ITX, оба из которых я пробовал ранее.

Форм-фактор mATX был отвергнут сразу, малыми усилиями сделать компактно с ним не получится. Существующие корпуса для mATX плат не рассчитаны на 4 диска, в них обычно ставят плохие и шумные блоки питания. Сделать компактный и тихий блок питания для такой системы трудно и дорого, т. к. потребляемая мощность будет больше 150 Ватт.

Форм-фактор Mini-ITX дает большую свободу выбора, тут и тихоходные процессоры Atom, Celeron, бодрые «середнячки» Athlon и мощные Core 2 Duo/Quad. Цена разнится сильно, но для моих задач хватит и Atom. Такие платы потребляют мало мощности, занимают мало места и обычно не сильно уступают mATX платам по кол-ву функций. Есть здесь и свои минусы: высокие цены, чуть меньшее кол-во разъемов, небольшой выбор.

К сожалению, на российском рынке выбор Mini-ITX плат меньше, чем за рубежом, но этому не стоит удивляться, учитывая их невысокую популярность. Хороший ассортимент представлен на Яндекс-Маркете и в некоторых специализирущихся на малых форм-факторах компаниях. Здесть стоит отметить Антекс и Оникс (он же dont.ru). На зарубежных сайтах (linitx.com , mini-itx.com , idotpc.com) выбор куда шире.

Подходящей маломощной платы с 4-мя SATA-разъемами я не нашел, а покупать с двумя и отдельно sata-контроллер не хотелось, единственный PCI-слот может еще пригодиться для чего-нибудь более полезного, например Wi-Fi адаптера.

Я хотел еще сделать из компьютера домашний роутер, поэтому искал плату с двумя ethernet-разъемами.

Выбор был, хоть и не большой, но, погуглив, я нашел отличную плату с двухъядерным процессором Atom, PCI-слотом, двумя ethernet-раземами и, о чудо, четырьмя SATA-разъемами. Отличный вариант: маломощный, но не совсем слабый процессор, полный набор необходимых разъемов и всего одним вентилятор.

Теперь предстояло выбрать корпус. Для 4-х жестких дисков нашелся один-единственный корпус, Chenbro ES34069 , на вид такой же отличный, как и найденная плата, но достаточно дорогой. После чтения форумов выяснилось, что тишиной он не отличается.

Хорошо, поехали дальше, можно купить другой корпус и в нем сделать место под 4 диска. Как разместить диски на тот момент я представлял лишь примерно, но это меня не пугало. После тщательных поисков было найдено два небольших подходящих по вместительности корпуса: AOpen S180 и CFI GROUP CBI-A8989TG . Оба напоминали корпуса первых bareborn-систем. По расчетам подходили оба, но я решил взять корпус от Aopen, который был немного выше, чтобы было место про запас. Впоследствии это решение оказалось единственно верным, так как во второй корпус все бы так хорошо не упаковалось. Но обо всем по порядку.

Блок питания в купленном корпусе оказался на редкость шумным и я решил искать альтернативу. Блоки питания для Mini-ITX систем обычно состоят из двух компонент - адаптера питания от сети, как у ноутбуков и платы-конвертера. Плата конвертирует напряжение, выдаваемое блоком, обычно 12 Вольт в необходимые 3,3, 5, 12, -12 Вольт. По расчетам, система должна была потреблять до 100 Ватт в пике. Ассортимент таких безвентиляторных блоков питания оказался очень маленьким. В Москве найти плату и адаптер с выходной мощностью больше 80 Ватт оказалось невозможно. Адаптеры 220 - 12 Вольт мощностью от 100 Ватт в Москве являются штучным товаром, поездки по рынкам и поиски в сети почти ничего не дали. Лишь одна фирма предлагала привезти блок питания на 120 Ватт, но в непонятные сроки. Нашлась также и одна-единственная плата на 120 Ватт, тоже на заказ и в непонятные сроки. Пришлось искать в зарубежных интернетах. Немецкие и американские магазины предлагали такие комплекты, даже был хороший выбор, но по цене около 200$ с доставкой. Тогда я обратил внимание на автомобильные конвертеры, по сути такие же платы, только рассчитанные на плавающие автомобильные 12-24 Вольт, а не на стабильные 12. Для таких плат гораздо проще найти блок питания, ведь подойтет любой от ноутбука мощностью 100-120 Ватт. Блок питания у меня был, и я нашел сходный по цене вариант на eBay. Отлично, оставалось дождаться его по почте.

Жесткие диски были выбраны серии Barracuda LP, они подешевле и меньше греются, чем взрослые 7002.11 и подобные. Однако, при тестах выяснилось, что при нагрузках они все-таки сильно греются и им не мешало бы принудительное охлаждение. Между дисками надо было сделать зазоры для свободного прохождения воздуха.

В купленном корпусе была железная каретка для крепления одного 5-дюймового и двух 3,5-дюймовых устройств. Хорошо закрепить 4 диска на ней не представлялось возможным. Зато с такой задачей отлично справлялась металлическая каретка, предназначенная для установки четырех дисков в три 5-дюймовых отсека, которая была мне подарена другом. На ней было место для крепления вентилятора, при установке дисков между ними оставались щели, достаточные для продувания.

В Леруа Мерлене нашлись подходящие для закрепления каретки в корпусе железные уголки и винты. Плата адаптера была закреплена на специально припаянных металлических стойках. Блок питания, идущий в комплекте с корпусом был снят, на задней стенке корпуса, в месте где выл вентилятор блока питания и разъем 220 В. образовалось внушительное пустое место, которое надо было как-то закрыть. Ножницами по металлу я аккуратно вырезал заплатку из листа алюминия и прикрепил к корпусу. Теперь предстояло сделать хитрый шлейф питания MOLEX-4 SATA, так как у блока питания был только один разъем molex. 20-контактный шлейф питания, соединяющий мат. плату и конвертер питания я спаял из шлейфа от старого блока питания.

Материнская плата поддерживала PWM-контроль скорости вентилятора, и для продувки жестких дисков нужно было купить тихий вентилятор, пришлось поездить по магазинам и купить один PWM-вентилятор и один тихий со специальным резистором, еще более замедляющим его небыстрое вращение. Штатный вентилятор на радиаторе материнской платы я убрал, решив, что вентилятора на корпусе хватит. Получалось, один кулер дует на диски, второй этот воздух гонит из корпуса, попутно остужая процессор и чипсет. В процессе тестов процессор перегревался и я придумал соорудить подобие воздуховода из листа пластика. Чертеж несколько дней доводился, макетировался из бумаги и в итоге с помощью ножниц и клея был превращен в пластиковый кожух для радиатора на мат. плате.

Самой простой задачей оказалась покупка памяти. :) Для системного раздела я купил флешку на 8 Гб и спаял к ней адаптер для подключения к внутреннему разъему на мат. плате. ОС была поставлена на флешку, компьютер собран. В итоге я собрал тихий компьютер, где все получилось достаточно компактно, свободного места внутри было действительно мало.

Сейчас он работает под управлением Ubuntu 9.10, бекапы производятся с помощью snapback2+rsync.

Итоговая смета

Небольшой тест

Привожу результаты unixbench и, для сравнения, результаты тестов настольного компьютера (Athlon X2, 2 ядра, 2,5 Ггц, 2 Гб RAM) и сервера на базе Xeon 5500 (8 ядер, 2,5 Ггц, 48 Гб RAM).

Итоги

Самый дешевый NAS на 4 диска я нашел на Яндекс-Маркете за 14000 рублей (без дисков). Мой компьютер вышел на тысячу рублей дешевле и уж точно мощнее и функциональнее. Из минусов - потрачено много времени, найти детали в моем случае было не просто, и, добавим сюда риски покупки товаров из-за рубежа по почте.

Спасибо за внимание!


Собираем сервер с нуля

1. Вступление

Давно уже была мысль написать свою статью про создание выделенного сервера CS 1.6 с AMX Mod X. Если даже очень хорошо поискать мануалы про установку AMX, то вряд ли вы найдёте больше двух разных статей (их копируют очень часто).
Обе уже сильно устарели, ссылки побились, вышли новые версии программ, много чего поменялось, есть много непонятных моментов, особенно для новичков.

Сразу скажу, что для сервера требуется достаточно мощная машина, тем более, если вы рассчитываете играть на своем сервере с этого же компьютера (Intel Pentium 4, 3 GHz, 1 GB Ram минимум). Если сервер не только для локальной сети, но и для инета, то вам понадобиться широкий канал (от 2 мб/с) и самое главное - выделенный ip адрес, он чаще всего покупается у провайдера за отдельную аб. плату (50-100 р/мес).

2. Установка чистого сервера

Сначала определимся, что такое HLDS, и где его взять. HLDS - Half Life Dedicated Server - выделенный сервер для Half-Life и CS 1.6. Выделенный - значит отдельный, для его запуска лучше использовать отдельный компьютер, сервер создается без запуска самой игры, что очень удобно. Чаще всего ставятся именно выделенные сервера. В no-steam версиях CS он обычно устанавливается вместе с самой игрой, т.к. сервер использует многие файлы самой игры (т.е. HLDS - это серверная часть игры). Использовать этот сервер не рекомендуется, но вполне реально. Нам нужна последняя, официальная, "чистая" версия HLDS. Он бесплатный, его можно спокойно скачать из интернета.
Сервер скачивается с официального сайта, 315 мб.
Для этого нам понадобиться программка hldsupdatetool.
Скачиваем её:
Устанавливаем, путь установки лучше оставить по умолчанию (C:/Program Files/Valve/HLServer). Запускаем HldsUpdateTool.exe, пойдет процесс проверки обновлений (программы, а не самого сервера). Если есть обновления, она сама их скачает и установит. Создаем папку serv на диске C:. В эту папку (C:serv) будет скачиваться сервер. Далее нам нужно запустить HldsUpdateTool.exe с ключами -command update -game cstrike -dir c:serv.
Как запустить программу с ключами? Проще всего это сделать через ярлык: нажимаем правой кнопкой по hldsupdatetool.exe и выбираем создать ярлык. Заходим в его свойства (правой кнопкой мыши по ярлыку -> свойства). Смотрим на поле объект, там у нас должно быть "C:/Program Files/Valve/HLServer/HldsUpdateTool.exe" (если вы делали всё в точности по этой статье). Нам нужно всего лишь к этой строчке добавить ключи, написанные выше. В результате это будет выглядеть так: "C:/Program Files/Valve/HLServer/HldsUpdateTool.exe" -command update -game cstrike -dir c:serv. Не напутайте с пробелами, всё должно выглядеть точно так, как написано; нажимаем "Применить". Запускаем ярлык, пойдет процесс загрузки HLDS.
Внимание! Бывает, что сервер не отвечает и скача не идет, придется попробовать еще раз, но позже. По окончанию загрузки в папке C:serv появится куча файлов, это и есть наш HLDS. Сразу сделайте копию этой папки на всякий случай, чтоб было откуда восстанавливаться. Папку с сервером можно его перенести в любое другое удобное место. Пусть это будет D:Server.
Сам сервер уже можно запустить, заходим в папку сервера, запускаем hlds.exe. Выбираем параметры и Start Server.
Не забудьте, что сейчас у вас в руках официальный сервер, а значит с No-Steam (пиратская кс) на сервер вы не зайдёте. Будет ошибка "STEAM validation rejected". Как это лечится читайте в разделе про Dproto.
Как узнать версию сервера? Наберите в консоли сервера version:

3. Настройка сервера

Все основные параметры сервера хранятся в файле cstrikeserver.cfg.
Открываем его блокнотом. Смело оттуда всё удаляем и вставляем следующее:

// Set the Host Name hostname "testing…" // Имя сервера. // Set the rcon password rcon_password "password" // Пароль для управления сервером через консоль клиента. Чтобы данная функция не работала, оставьте пустым. // Server Logging log on // включаем режим записи логов mp_logdetail 3 // определяем детальность записи логов mp_logmessages 1 // записывать сообщения // Server Variables mp_timelimit 30 // Время на карту (в мин) mp_autokick 0 mp_autoteambalance 1 // Автоматический баланс команд. mp_c4timer 35 // Время таймера на бомбе (в сек) mp_flashlight 1 // Разрешить фонарик mp_footsteps 1 mp_freezetime 2 // Время для закупки в начале раунда, когда нельзя двигаться (в сек) mp_friendlyfire 0 // Режим попадания по своим тим-мэйтам mp_hostagepenalty 0 mp_limitteams 0 mp_tkpunish 0 mp_roundtime 2.5 // Длительность раунда (в мин) mp_buytime 0.50 // Время, от начала раунда, когда ещё можно купить оружие (в мин) mp_fadetoblack 0 mp_forcechasecam 1 mp_forcecamera 0 mp_kickpercent 100 mp_playerid 1 mp_startmoney 800 mp_chattime 3 mp_falldamage 1 // Есть урон от падений sv_airaccelerate 10 sv_airmove 1 sv_restartround 0 sv_maxspeed 320 sv_proxies 1 sv_allowupload 1 sv_voiceenable 1 sv_alltalk 0 sv_voicequality 4 sv_voicecodec voice_speex allow_spectators 1 pausable 0 cl_weather 0 // cheat and fun modes sv_aim 0 sv_cheats 0 // Set Rates sv_maxrate 20000 sv_spectatormaxspeed 500 sv_maxspeed 320 sv_maxupdaterate 101 sv_minrate 2500 sv_minupdaterate 20 decalfrequency 10 sys_ticrate 200 // Enable/Disable LAN mode sv_lan 1 // Для локальной сети - 1, для Интернета - 0.

Теперь открываем блокнот и пишем следующую строчку:
start "Server" /min /high "hlds.exe" -game cstrike +port 27015 +map de_dust2 +maxplayers 17 -insecure -console

Рассмотрим подробнее, что здесь написано:
start "Server" - запуск консоли с заголовком Server
/min - свернуть после запуска
/high - ставим высокий приоритет
-console - сервер стартует в консольном режиме
-game cstrike - запускать сервер под CS
-insecure - отключить VAC
+maxplayers 17 - количество слотов (до 32)
+map de_dust2 - сервер запуститься с карты de_dust2
+port 27015 - порт, на котором будет работать сервер

4. Установка metamod

Metamod служит для подключения дополнительных модов на сервер, таких как AMX Mod X, StatsMe, античитов и др.
: (320 Кб, версия 1.20).
В папке cstrike создаем папку addons, а внутри неё папку metamod. И распаковываем файл metamod.dll в неё. Открываем cstrikeliblist.gam (блокнот) и исправляем строчку gamedll "dllsmp.dll" на gamedll "addons/metamod/metamod.dll" и сохраняем.
Всё, метамод установлен, можно приступать к установке модов.

5. Установка и настройка AMX Mod X

Скачиваем последнюю версию. Создайте папку dproto в каталоге D:/Server/cstrike/addons. Файл dproto.dll из архива, в папке binwindows скопируте в папку D:/Server/cstrike/addons/dproto. В файле metamod/plugins.ini допишите такую строчку: win32 addons/dproto/dproto.dll.
Файл dproto.cfg из архива поместите в корень сервера (D:Server). В нём содержаться настройки dproto, откройте его. В принципе, можно ничего не менять, но вот это стоит рассмотреть отдельно:

# ServerInfoAnswerType (0/1) # Sets server answer type for query requests # 0 = New style (Source Engine) # 1 = Old Style (Fix favorites list for p.47 clients) # 2 = Hybrid mode - best solution for now, server is visible anywhere ServerInfoAnswerType = 2

Параметр ServerInfoAnswerType отвечает за то, как будет наш сервер отображаться в списках серверов. Дело в том, что после 24 патча поменялся механизм "обнаружения" сервера. Все, у кого клиент (игра) ниже 24 патча (касается только нон-стим) не увидят более новые серверы в избранных серверах / поиске. Поэтому до сих пор нужно было выбирать, либо ставить старый сервер, чтоб был виден игрокам со старым клиентом (обычно нонстим) или ставить новый сервер, чтобы нормально отображался в новом клиенте (обычно стим). Но был придуман "гибридный метод", позволяющий серверу нормально отображатся и в старых клиентах и в новых. Так что рекомендую ставить ServerInfoAnswerType = 2.


Новость отредактировал: - 15-05-2017, 14:26
Причина: Обновил ссылки

Информация
Посетители, находящиеся в группе Гости , не могут оставлять комментарии к данной публикации.

Простите, простите меня, пожалуйста. Но пришлось вывести часть прошлого обзора в отдельную статью. Я расскажу про свой пример создания домашнего сервера в этой статье. Этот краткий обзор является частью статьи . И посвящается примеру быстрого создания веб сервера для сайта из старого игрового ноутбука.

Содержание статьи:

Что было в начале — был старый игровой ноутбук

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

Где создавать я долго думал и даже умудрился поставить сервер на 7 винду. Но вопрос с правами доступа решил все за меня. Это не значит, что сервер не работал. Все отлично работало, только права доступа меня не устраивали. А информации в интернете по такой теме 0.0001%. Буквально месяца три назад мы приобрели новый компьютер. Его характеристики писать не буду, но обошелся он ну очень даже. После этой покупки у меня остался ноутбук Dell Inspirion. Соответственно я и решил, зачем я буду платить другим дядькам свои деньги.

Ведь я могу и сам создать свой сервер для сайта

Для начала я удалил, домены которыми не пользуюсь. Оставив при этом один домен. За которым числится этот проект. Затем создал резервы своих сайтов и сохранил на отдельном HDD архивы. Потом просто удалил сайты с хостов и отказался от дальнейшего сотрудничества. Архивы оставил, так как там много интересных статей. Пригодятся!) Конечно предварительно пришлось искать нужную информацию в Google поиске.

Теперь основная сборка сервера своими руками

  • Я заменил батарею на ноутбуке, так как старая уже умерла.
  • Полностью разобрал и провел чистку всего содержимого. На своем будущем сервере.
  • Заменил термо пасту на процессоре.
  • Заменил HDD 600 гб, на твердо — накопитель SSD объемом 500. Скорость чтения этого дорогого парня 560 Мбайт/с, записи 540 Мбайт/с. Основные преимущества: не нагревается, не издает шума, потребляет меньше электричества. Скорость загрузки системы и отклик улучшились в 10-15 раз. Раньше система загружалась секунд 30-40. Теперь это время составляет дай бог 10 секунд.
  • После собрал все обратно. Вуаля ноутбук под сервер готов.
  • Дополнительно приобрел хорошую подставку для охлаждения дна ноутбука. Она с режимами вращения и регулирования температуры.
  • Статистический IP у меня давно, так что с этим проблем вообще не было. Вам же нужно будет звонить провайдеру и просить статический IP, услуга стоит 150 рублей. Предоставить данную услугу провайдер обязан.
  • Поднимать скорость интернета мне некуда. Так как максимальная скорость сети в центре Санкт-Петербурга всего 60 мб. На большее провайдер Ростелеком не способен. Хотя говорят, что в некоторых районах заменили волокно и скорость там уже 200 мб, конечно все тестируют.
  • Дальше проблема была в модеме который подключен к кабелю. Эту проблему мы решили купив дополнительно роутер на пять свитчей.
  • Теперь у меня на одном IP висят: через кабель — сервер и пк. Через WiFi — три телефона и еще один ноутбук.
  • Дальше на роутере я настроил локальные адреса IP для пк, сервера и Wi-Fi. Пробросил необходимые порты на сервер.
  • После установил на ноутбук операционную систему Debian 8.
  • В системе мне оставалось только настроить параметры: соединение с интернетом, host, репозитории, электропитание, рабочий стол, SSH.
  • Через консоль обновил систему.
  • Время не менял, так как я вам объясняю ту установку при которой все будет окей. При смене времени к примеру Веста вообще не ставиться.(может быть это только у меня такая проблема)
  • После через консоль с правами root закачал дистрибутив Vestacp.
  • Заполнил необходимые поля и установил. Вот и все полноценный сервер готов.

Этот вариант полностью подойдет для начинающих. Но если Вы хотите большего, то конечно нужно попотеть.

Дополнительно я удалил Mysql и поставил MariaDB — это базы данных. После удалил PHPMyadmin и PHP 5.6 и установил новый PHP7.1 с подходящей для него PHPMyadmin. Далее последовали новые дополнительные пакеты для PHP7.1, такие, как к примеру Mysql. Так как последние версии PHP ее не поддерживают.

После этого я выставил PHP7.1 приоритетом в системе. Поставил скрипт на панель Vestacp для https, так как у меня стоит NGINX и Apache, а с такой связкой этот формат не работает. Последующими действиями последовали настройки Apache в Vestacp на использования шаблона PHP7.1, и настройка резервного копирования. Завершающими этапами были настройки конфигурационных файлов как на самой Vestacp так и на сервере. Причина двойных настроек в том, что эта панель может не сохранить себя на физический диск. Поэтому приходиться на всякий случай продублировать все настройки.

Могу сказать одно, легче было сейчас все это написать. Чем сделать. Так как у меня ушло много попыток для установки таких дополнений. Но это стоило того. Так как сайт у меня работает отменно. Сервер не глючит. Проблема есть, только с PHP и WordPress. Немного ругаются друг на друга, эта проблема мне понятна дело в теме сайта. Но не критично. В целом я своей работой горжусь) Думаю Вы тоже себя вознесете до небес, после таких трудов.

Выводы всей проделанной работы

Характеристики ноутбука:

Думаю из характеристики понятно, что это не старое корыто.
Преимущества:

  • Нулевой шум.
  • Работу над сайтом и сервером я веду, непосредственно на ноутбуке. Мощности хватает за глаза.
  • За счет охлаждения дна, температура не поднимается выше 30.
  • При отключении света, сервер работает еще около 5 часов. При условии закрытой крышки с отключением экрана.
  • На момент написания статьи, мой сервер работает от батареи.Я меняю блок питания на новый старенький уже умер.
  • Скорости интернета хватает за глаза. Во время игр онлайн на пк, отклик сервера не меняется.
  • Как видите преимуществ огромное количество.

Завершение

По вопросам цены. Как я уже писал выше, только вам решать на какое железо ставить свой сервер. Мне к примеру для своего любимого занятия денег не жалко. Каждый из вас спокойно может ставить домашний сервер и на менее мощные машины.
После всего выше сказанного, осталось только добавить.

Создание своего сервера это неоценимый опыт. Тем более после проделанной работы, вы спокойно сможете администрировать свой сервер сами. Как говориться «Учение свет». На этой ноте я закругляюсь) Спасибо большое за Ваше внимание. Желаю Вам успехов в этом деле и дальнейшем самообразовании. Вы на правильном пути. Ну а в следующих статьях мы перейдем, непосредственно к самому процессу создания домашнего сервера.

Похожие статьи