Как сделать сервер из домашнего компьютера на windows

Уровень сложностиСредний

Время на прочтение10 мин

Количество просмотров16K

Привет, Хабр! Хочу поделиться личным опытом превращения старенького ноутбука ASUS X552CL (i5-5200U, 12 ГБ RAM, SSD + HDD), выпущенный 12 лет назад, в полноценный домашний сервер под Linux Ubuntu Server 24.04.5 LTS.

Поднять файлопомойку с рабочим стеком на Linux — это тоже прогресс 🧠📁⚙️

Поднять файлопомойку с рабочим стеком на Linux — это тоже прогресс 🧠📁⚙️

Получилось что-то вроде мини-датацентра у меня дома — он хранит файлы на жёстком диске с бэкапом в облаке, Docker-контейнеры крутит для дата-аналитики и даже имеет легковесный интерфейс XFCE, при этом есть потенциал к росту до терминала для управления умным домом. Расскажу, почему было решено отказаться от WSL на рабочем ноутбуке Huawei, как настроить удалённый доступ через xRDP (чтобы не было чёрного экрана), запустить там Docker, сборку Superset и JupyterLab с Anaconda (с разными версиями Python), прикрутить Samba-шару для домашнего использования и организовать бэкап в облачное хранилище. В этой статье будет немного технических деталей, чуть-чуть шуток и парочка мемов с советскими плакатами.

Зачем отдельный сервер вместо WSL на основном ноутбуке?

Началось всё с раздражения от багов на основном рабочем ноутбуке после запуска WSL (Windows Subsystem for Linux) — Windows стал ощутимо подтормаживать после запуска ресурсоёмких задач в Docker-контейнерах. Стало проблематично активно пользоваться Python, JupyterLab, Superset в сборке — для pet-проектов и быстрых аналитических MVP. В какой-то момент параллельная работа Windows-приложений и WSL с нагрузкой стала слишком тяжелой для нового бойца — вентиляторы воют, батарея тает на глазах, да и вообще неприятно, когда основная система проседает из-за бекграунд-задач. И вот в бой вступил старичок — лежавший в пыли несколько лет, но проверенный временем ASUS X552CL — рабочая лошадка для типовых прикладных задач.

Мне пришла в голову простая мысль «а если взять отдельную машину под все эти linux-сервисы?» И тут вспомнился мой старый добрый ASUS X552CL 2013 года выпуска.

 По команде neofetch терминал Ubuntu  выдает всю информацию о железке

По команде neofetch терминал Ubuntu выдает всю информацию о железке

Он пылился на полке, но всё ещё был в рабочем состоянии. Пусть слабенький i5 и всего 12 ГБ оперативки — зато свой собственный, выделенный Linux, который не жалко нагружать по полной. Решено — поднимаю домашний сервер.

Задумал связать все рабочие устройства на Linux😎🛠️

Задумал связать все рабочие устройства на Linux😎🛠️

Помимо разгрузки основного ПК, отдельный сервер даёт ещё плюсы, например, можно не беспокоиться, что внеплановая перезагрузка Windows (привет, обновления) убьёт длительный расчёт в Jupyter с выгрузкой в Superset через SQL Lab. Плюс, весь нужный софт можно настроить один раз под себя в Linux-среде и запускать как угодно долго. Короче говоря, WSL — это хорошо, но выделенный Linux-сервер — лучше (по крайней мере, для моих задач).

Установка Ubuntu Server 24.04 с XFCE — почему минимализм рулит?

На старый ноут поставьте свежайший Ubuntu Server 24.04.5 LTS (без графической оболочки, только терминал). Почему серверная версия? Потому что она изначально более легковесная, там ничего лишнего, только базовая система без окружения рабочего стола. Как раз то, что надо для слабого железа. Установка проходит штатно (с USB флешки, используя текстовый установщик Ubuntu Server). Достаточно загрузить дистрибутив (3 ГБ) на флешку через Rufus (Windows) или balenaEtcher (Windows/Linux/macOS). Во время установки ОС загрузить дополнительные драйверы для видеокарты и установить всю ОС на SSD, установщик разобьёт диск на подразделы автоматически.

По командеdf -h терминал покажет разделение SSD/HDD после установки

Во время установки ОС и после советую оставить проводное интернет-соединение Ethernet, так установщику будет легче обновить компоненты и найти новые драйверы, а стабильное соединение не уронит все развёрнутые инструменты в будущем. После установки добавьте XFCE — легковесную графическую оболочку, чтобы при желании можно было подключаться по Remote Desktop и иметь привычный графический интерфейс. Обновите систему и поставьте сам XFCE.

sudo apt update && sudo apt upgrade -y
sudo apt install -y xfce4 xfce4-goodies

Почему XFCE, а не что-то другое? XFCE славится скромным аппетитом к ресурсам и неприхотливостью. Запускать на старом ноуте полный GNOME или KDE будет слишком жирно, а XFCE — в самый раз. К тому же, работать с сервером по SSH и через веб-интерфейсы (типа JupyterLab) лучше на постоянно поднятых localhost без необходимости поднимать их снова после перезапуска системы. Но иногда удобнее покликать мышкой в удалённом рабочем столе — например, настроить ту же Samba через файловый менеджер или показать что-то приятелю на экране.

Пакет xfce4-goodies ставит дополнительные полезные штуки для XFCE (плагины, утилиты — пусть будут). После этого установите xRDP для RDP-доступа.

sudo apt install -y xrdp
sudo systemctl enable --now xrdp

Теперь самое интересное — настройка xRDP с XFCE и борьба с чёрным экраном. Если попробовать подключиться по умолчанию, то велик шанс увидеть просто чёрный экран вместо рабочего стола — беда всего Windows — чёрный и синий экраны. Пришлось немного погуглить форумы (спасибо dmosk.ru и официальным мануалам на manpages.ubuntu.com — за вдохновением — туда 😜).

 Открытые данные — топливо для пингвинотопливных ракет GNU/Linux 🚀🐧

Открытые данные — топливо для пингвинотопливных ракет GNU/Linux 🚀🐧

В итоге найдено такое решение.

  1. Создайте файл с командой запуска XFCE при RDP-сессии. Проще всего положить команду в ~/.xsession для конкретного пользователя. Она укажет xRDP запускать сессию XFCE (xfce4-session) при логине.

    echo "xfce4-session" > ~/.xsession

  2. Отключите переменные окружения, которые мешают запуску. Откройте файл /etc/xrdp/startwm.sh командой sudo nano /etc/xrdp/startwm.sh от имени администратора и добавьте две строки перед запуском Xsession. Вставьте в начало файла (или перед строкой test -x /etc/X11/Xsession && exec /etc/X11/Xsession) команды.

    unset DBUS_SESSION_BUS_ADDRESS
    unset XDG_RUNTIME_DIR

    Сохраните файл Ctrl+O → Enter → Ctrl+X.

  3. Перезагрузите xRDP.

    sudo systemctl restart xrdp

После этих настроек удалённый рабочий стол будет работать штатно. Подключайтесь с Windows через стандартный клиент RDP (запускается через PowerShell по команде mstsc). Важно! В окне входа xRDP выбирайте сессию Xorg, а не Xvnc или что-то другое. Зачастую вариант Xorg прекрасно запускает XFCE-сессию. Если выбрать не тот тип сессии, опять можете получить пустой (чёрный, синий) экран. Также убедитесь, что в данный момент тот же пользователь не залогинен локально на ноутбуке — xRDP не любит одновременный локальный и удалённый вход под одним пользователем.

Чтобы подключиться с винды, нужно ввести IP-адрес своего домашнего сервера в локальной сети. Узнать его легко по выводу команды ip a в терминале Linux Ubuntu.

Пример вывода по команде ip a.$ ip a
2: wlp4sds0: ...
inet 192.168.1.100/28 brd 192.168.1.255 scope global dynamic noprefixroute wlp3sds0
...

В выводе ищем свой интерфейс (Ethernet или Wi-Fi, у меня wlp3sds0 для Wi-Fi) и смотрим после inet. Вот, в примере вывода, 192.168.1.100 — это и есть локальный IP сервера. Вбиваем этот IP в Windows в «Подключение к удалённому рабочему столу», вводим учётные данные Ubuntu-пользователя – и вуаля, получаем рабочий стол XFCE. Теперь старенький ноутбук радостно показывает свой экран в окошке RDP.

Кстати, производительность XFCE через RDP оказалась вполне сносной. Основная же работа всё равно идёт через терминал и Docker, о чём далее.

Samba — это и танец, и общая папка для себя и близких с бэкапом на облаке

После настройки базовой системы сразу возникает запрос от Домашнего Заказчика 😊

— А можно ли сделать общую папку, куда можно скидывать файлы со своего компа?                                                              —  Да без проблем!

— А можно ли сделать общую папку, куда можно скидывать файлы со своего компа? — Да без проблем!

Решено поднять Samba-сервер на Ubuntu, чтобы Windows-устройства в сети видели ноутбук как файловое хранилище. Благо на Ubuntu Samba настраивается элементарно.

  1. Установите Samba и создайте папку на втором диске (HDD) для шаринга.

    sudo apt install -y samba sudo mkdir -p /mnt/storage/share sudo chown -R nobody:nogroup /mnt/storage/share sudo chmod -R 0777 /mnt/storage/PublicShare

    Проще выбрать простейший вариант — общий ресурс без авторизации (guest access). В локальной домашней сети безопасность не критична, зато все домашние устройства подключаются без лишних логинов. Откройте конфиг Samba (sudo nano /etc/samba/smb.conf) и добавьте в самый конец файла запись.

    [PublicShare]
    path = /mnt/storage/PublicShare
    browseable = yes
    guest ok = yes
    read only = no
    force user = nobody

    Сохраните файл Ctrl+O → Enter → Ctrl+X.

  2. Перезапустите сервер Samba

    sudo systemctl restart smbd

    Теперь мой виден в локальной сети. На Windows достаточно открыть проводник и ввести \\192.168.1.100\PublicShare — общая папка открывается, можно читать/писать. Никаких флешек и Telegram-файлов, всё по Wi-Fi напрямую на сервер. Роднулькины довольны, да и админу сервера удобно файлы перекидывать между устройствами.

  3. Дополнительно, чтобы важные данные не хранились только на этом стареньком HDD, настройте резервное копирование в облачное хранилище, например, Я.Диск. Для этого используйте утилиту Yandex.Disk для Linux (она есть в репозиториях) под учёткой своего аккаунта. Смонтируйте Я.Диск в систему и настройте cron задачу, которая раз в ночь синхронизирует содержимое общей папки с облаком. Теперь даже если диск ноутбука накроется, копия файлов будет в облаке. Вы спите спокойно и домашний бухгалтер (в лице кого угодно близкого) — тоже.

    Крутятся Docker-контейнеры — JupyterLab с Anaconda, несколько Python и PostgreSQL

    Конечно, главный смысл всего этого затеянного сервера – запускать рабочие окружения – например, Docker-контейнеры с JupyterLab, где крутятся Python-проекты.

    1. Установите Docker CE из стандартного репозитория Ubuntu (на самом деле, можно было и snap-версию, но эта статья скорее для консерваторов).

      sudo apt install -y docker.io docker-compose sudo usermod -aG docker $USER # чтобы не требовался sudo для docker

      После команды стоит перелогиниться или выполнить newgrp docker, чтобы права применились.

    2. Docker на Ubuntu стартует как служба. Убедитесь что он запущен.

      sudo systemctl status docker (вывод должнен включать active (running)).

    3. Далее — дело техники. Стягивайте образы с JupyterLab. Можно иметь окружения сразу с двумя версиями Python (скажем, для разных проектов требуется 3.10 и 3.11). Чтобы не мучаться с установкой нескольких версий на сам сервер, берите готовые образы Jupyter с нужными Python внутри. Нашёл официальные образы jupyter/base-notebook с тегами под Python 3.10 и 3.11 – самое то, плюс там уже предустановлен JupyterLab и conda (Anaconda). Запустите оба контейнера.

      docker run -d -p 8888:8888 --name jupyter-py310 jupyter/base-notebook:python-3.10.10

      docker run -d -p 8889:8888 --name jupyter-py311 jupyter/base-notebook:python-3.11.5

      Оба контейнера запускаются в фоне (-d), первый мапит порт 8888, второй – 8889 на хосте (чтобы одновременно могли работать). Через пару минут образы скачались и сервисы JupyterLab внутри поднялись. Проверяю командой docker ps – оба контейнера Up. Отлично! Теперь можно заходить в браузере на адрес сервера с указанными портами: http://192.168.1.4:8888 для Python 3.10 (и :8889 для 3.11). JupyterLab спросит токен – его можно увидеть через docker logs jupyter-py310 (в выводе логов Jupyter есть URL с токеном). Ввожу токен – и попадаю в знакомый интерфейс JupyterLab, только теперь он крутится на моём домашнем сервере.

      Замечу, что эти образы содержат Anaconda (то есть пакетный менеджер conda и куча библиотек уже внутри). Это удобно, потому что сразу есть и NumPy, Pandas, SciPy и т.д. Если чего-то не хватает, можно добить через pip или conda внутри контейнера. С точки зрения Windows-ноутбука – никакой нагрузки, всё считается и обрабатывается на своём сервере с ОС Linux Ubuntu, а вы получаете картинку через браузер без утечки данных с локали.

А как же данные и базы? Для проектов в аналитике может быть нужен PostgreSQL. Его на сервере также лучше не вручную разворачивать, а запустить в Docker-контейнере для удобства связки с остальными инструментами. Заодно есть возможность взаимодействия контейнеров.

Поднимем PostgreSQL.

  1. Первая команда запустит Postgres 15, создаст пользователя test с паролем secret и откроет порт 5432 для доступа.

    docker run -d --name pg-db -e POSTGRES_USER=test -e POSTGRES_PASSWORD=secret -p 5432:5432 postgres:15

  2. Чтобы Jupyter (который в контейнере) смог достучаться до Postgres, их нужно либо в одну сеть поместить, либо коннектиться по IP хоста. Для удобства создайте общую докер-сеть и подключите сервисы к ней.

    docker network create dev-net
    docker network connect dev-net jupyter-py310
    docker network connect dev-net jupyter-py311
    docker network connect dev-net pg-db

Теперь внутри контейнера Jupyter можно обращаться к хосту pg-db (Docker имена резолвятся в этой сети) на порт 5432. Например, в ноутбуке psycopg2.connect(host=»pg-db», port=5432, user=»test», password=»secret») — и всё работает. Конечно, можно было и просто на хостовой машине установить Postgres, но где наша не пропадала — контейнеризация рулит, все сервисы изолированы и управляются централизованно.

Отдельно отмечу испытание для ноутбука на i5 с 12 ГБ RAM в части запуска одновременно нескольких таких контейнеров (2 Jupyter + Postgres). К удивлению, даже старичок справляется. Когда не пользуетесь каким-то из сервисов, их можно останавливать командой docker stop ... и освобождать ресурсы. В этом прелесть Docker — окружения поднимаются и глушатся по требованию, а не висят всё время в памяти и не тормозят остальные процессы. В итоге старенький ASUS превращается… превращается в маленький личный сервер для разработки — можно с любого компьютера подключиться к JupyterLab и Postgers через браузер и заниматься своими аналитическими проектами в связке с Superset.

Терминал умного дома в будущем

Сейчас ресурc используется как сервер-файлопомойка и удалённый терминал для аналитикии. Но на этом не стоит останавливаться. В планах – прокачать его до центра управления умным домом. Благо он всегда включён и в сети, грех не воспользоваться.

  • Установить Home Assistant – следить за датчиками, управлять лампочками, розетками, да хоть умный чайник с компьютерного кресла поставить перед кофе-брейком и дождаться, пока закипит;

  • Поднять MQTT-брокер (например, Mosquitto) для обмена сообщениями между IoT-устройствами;

  • Подключить USB-донглы для Zigbee/Z-Wave, чтобы сервер мог общаться с датчиками и девайсами напрямую;

  • Реализовать систему видеонаблюдения. Те же IP-камеры могут записывать на HDD, а смотреть можно через веб-интерфейс — Home Assistant или ZoneMinder/Frigate;

  • Да и вообще, идей масса — от собственного медиа-сервера (Plex или Jellyfin) до сервера под разработку. Старичок-ноутбук, надеюсь, всё вытянет потихоньку.

 Макет веб-интерфейса   Home Assistant

Макет веб-интерфейса Home Assistant

Конечно, важно помнить об ограничениях — i5-5200U не станет мощнее просто и вдруг😅. Скорее всего, придётся докупить планку памяти – лишней не будет. А в крайнем случае более современную видеокарту можно будет подключить через Thunderbolt.

Выводы

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

 Схема архитектуры домашнего сервера, от Docker-контейнеров до будущего терминала умного дома, — на старом ASUS

Схема архитектуры домашнего сервера, от Docker-контейнеров до будущего терминала умного дома, — на старом ASUS

Самое приятное — это ощущение, что сделал маленький личный “облачный” сервер. Хочешь – разворачивай новую БД, хочешь – подними очередной контейнер с редисом или даже веб-приложение — на железке десятилетней давности.

Так что не спешите выбрасывать или продавать раритет — ему можно дать вторую жизнь в новом амплуа. Возможно, старый ноутбук тоже скучает по работе – превратите его в полезный домашний сервер, это увлекательно и практично. Ну а если по ходу дела встретите трудности – заглядывайте на форумы, читайте мануалы и never give up 👌

Зачем нужен домашний сервер и как его собрать

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

Статью можно послушать. Если вам так удобнее, включайте подкаст.

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

Зачем нужен домашний сервер

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

Централизованное хранение данных

Для чего нужен домашний сервер: централизованное хранение данных

Изображение: Alex Cheung / Unsplash

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

В принципе, для этих же целей можно приобрести готовое решение — NAS (Network Attached Storage). Но новые устройства от Synology или QNAP стоят дорого, а собственный сервер можно собрать из комплектующих, которые есть под рукой.

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

Резервное копирование

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

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

Облачное хранилище

Для чего нужен домашний сервер: облачное хранилище

Изображение: Rohan / Unsplash

У облачных хранилищ вроде Dropbox есть две проблемы. Во‑первых, за мало‑мальски приличный объём памяти они просят денег, причём регулярно. Во‑вторых, если провайдер облачного хранилища решит закрыть его или ввести какие‑либо ограничения, вам придётся с этим безропотно смириться.

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

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

Почтовый сервер

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

Сервис продуктивности

Для чего нужен домашний сервер: сервис продуктивности

Изображение: Karminski-牙医 / Unsplash

Помимо прочего, домашний сервер способен заменить самые разные сервисы продуктивности. Вы можете хранить на нём свои заметки, чтобы стать независимым от Evernote, разместить там свой список дел (прощай, Todoist), установить календарь, ежедневник, напоминания — да что угодно! В конце концов, домашний сервер может принимать ленты новостей и синхронизировать их между вашими устройствами, заменяя тот же Feedly.

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

Электронная библиотека

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

Медиахранилище

Для чего нужен домашний сервер: медиахранилище

Изображение: Nicolas J Leclercq / Unsplash

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

Как вам идея запускать фильмы в 4K без лагов на старом телевизоре, который стоит где‑нибудь на кухне? Медиасервер даст возможность создать нечто вроде Spotify и Netflix в одном флаконе, только для себя.

Личный веб‑сервер

При желании на домашнем сервере вы сможете размещать собственные веб‑сайты, блоги или форумы. Это даст возможность полностью контролировать свои данные — не придётся переживать, что хостинг внезапно поднимет цены. Конечно, портал с миллионной ежедневной посещаемостью на маломощном железе завести не получится, но вот сайт‑визитку или портфолио — пожалуйста.

Управление умным домом

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

Управление системами безопасности

Домашний сервер может объединять системы безопасности вашего дома, позволяя вам контролировать и мониторить видеонаблюдение, сигнализацию, умные замки и датчики движения. Особенно полезна возможность постоянно писать на подключённые к серверу жёсткие диски видео с камер.

Загрузчик файлов

Для чего нужен домашний сервер: загрузчик файлов

Изображение: Jainath Ponnala / Unsplash

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

Игровой сервер

Заядлые геймеры смогут использовать собранный ими компьютер в качестве сервера для многопользовательских игр. Туда можно будет пригласить своих друзей для совместного весёлого времяпрепровождения. Чаще всего собственные серверы собирают для игры в Minecraft, но, вообще, вы можете устанавливать на своё устройство что захотите — возможности безграничны.

Из чего можно собрать домашний сервер

Есть множество вариантов железа для сервера на любой вкус и кошелёк. Некоторые покупают готовые сетевые хранилища от Synology или QNAP — но их возможности по апгрейду и установке ПО ограничены. Другие энтузиасты выбирают мощные готовые серверы для небольших предприятий, вроде HP ProLiant или Dell PowerEdge. Но они слишком дорогие и мощные для домашнего использования. Собрать собственный сервер куда лучше — вот как это сделать.

Домашний сервер из одноплатного компьютера

Домашний сервер из одноплатного компьютера

Микрокомпьютеры на базе ARM‑процессоров, например Raspberry Pi, Orange Pi или Cubieboard3, являются популярными вариантами для создания домашних серверов. У них есть немало преимуществ.

Плюсы:

  • Невысокая цена. Raspberry Pi 3 стоит около 35 долларов, Orange Pi — всего 15.
  • Компактные размеры. Одноплатные компьютеры маленькие, их можно легко спрятать в столе или на полке, чтобы сервер на маячил перед глазами.
  • Тишина. Одноплатники не имеют активного охлаждения, так что самыми громкими устройствами в вашей системе будут жёсткие диски.
  • Низкое энергопотребление. Одноплатники потребляют мало энергии, поэтому их работа не сильно скажется на ваших ежемесячных расходах.

Минусы:

  • Ограничения конструкции. Одноплатники обычно не имеют корпуса. А если имеют, то маленький, и ваши диски придётся просто складывать в стопку. У мини‑компьютера может не быть SATA‑адаптера — придётся подключать диски через переходники USB‑SATA, что ограничивает скорость работы с ними, и обеспечивать внешнее питание.
  • Низкая производительность. ARM‑модели значительно медленнее даже бюджетных процессоров x86‑архитектуры. Сервер может тормозить и виснуть, если вы возложите на него слишком много функций.
  • Архитектура ARM. Для этих процессоров доступно меньше программ, чем для стандартных x86, так что перед покупкой вам придётся тщательно выбирать, какие задачи должен выполнять домашний сервер.

В целом одноплатник — неплохой вариант, если вам нужно простенькое сетевое хранилище и вы не желаете тратить много денег.

Что купить

  • Мини‑компьютер Raspberry Pi 4, 16 866 рублей →
  • Мини‑компьютер Raspberry Pi 4B, от 7 046 рублей →
  • Мини‑компьютер Banana Pi BPI‑R3, от 9 866 рублей →

Домашний сервер на базе неттопа

Домашний сервер на базе неттопа

Мини‑ПК, также известные как неттопы, — это компактные компьютеры на базе архитектуры x86. Это могут быть как готовые устройства, которые можно подключить к питанию и использовать, так и комплекты для сборки, где процессор встроен в материнскую плату, а память и хранилище нужно устанавливать самостоятельно.

Плюсы:

  • Большой выбор. Самые известные модели в таком формфакторе — это Intel NUC и Mac Mini, которые влетают в копеечку. Но на AliExpress продаётся изрядное количество более дешёвых неттопов. И их возможностей для домашнего сервера хватит с головой.
  • Тишина. Неттопы либо не имеют активного охлаждения — тепло рассеивает корпус, либо обладают только одним тихим вентилятором. Такой сервер можно хоть на прикроватный столик ставить — он не помешает.
  • Компактность. Хотя неттопы и больше одноплатников, они всё равно не займут много места.
  • Приличная производительность. Даже маломощный неттоп на Intel будет быстрее Raspberry Pi 3, и процесс установки программ на него не в пример проще.
  • Наличие антенн Wi‑Fi в некоторых моделях. Это значит, что неттоп можно будет использовать и для раздачи беспроводной сети. Некоторые умельцы умудряются превратить его в роутер, который ещё и торренты качает, и рекламу фильтрует.

Минусы:

  • Мало места внутри корпуса. Как правило, мини‑ПК позволяет установить только один жёсткий диск, и тот формата 2,5 дюйма. Если же вы будете подключать внешние диски через USB‑SATA‑переходники, конструкция будет выглядеть неряшливо и скорость записи на диск пострадает.
  • Сильное нагревание. Если неттоп имеет достаточно мощный процессор, он будет греться под нагрузкой. Проблему можно купировать, поменяв термопасту и установив вентилятор — если его нет в конструкции.
  • Нет возможности апгрейда. Многие неттопы позволяют заменить плашку памяти (чаще всего ноутбучного формфактора) и SSD, но с процессором это сделать не получится. Если вам не будет хватать производительности, то придётся покупать неттоп подороже.

В общем, неттопы — это одноплатники на стероидах. Более дорогие, но при этом тихие и довольно производительные для сервера. Отличный вариант для нетребовательных пользователей.

Что купить

  • Неттоп Intel NUC 12 Pro, 64 449 рублей →
  • Неттоп XCY X30‑N4000, от 8 748 рублей →
  • Неттоп XCY X30‑4LAN, от 7 947 рублей →

Домашний сервер из старого ПК

Домашний сервер из старого ПК

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

Плюсы:

  • Дешевизна. У людей, которые любят компьютеры, часто скапливается изрядное количество ненужных комплектующих, из которых можно собрать сервер. Как правило, приходится докупать только диски побольше.
  • Возможность апгрейда. Добавить памяти? Заменить процессор? Установить вентиляторы потише, SSD побыстрее, блок питания помощнее? Легко. Домашний сервер можно будет легко прокачать, когда у вас появятся новые потребности.
  • Много места для жёстких дисков. Обычная материнская плата имеет от 4 до 6 SATA‑разъёмов, а ещё через SATA‑адаптеры можно подключить больше дисков к PCI‑E. Вы сможете установить в корпус хоть 10, хоть 20 жёстких дисков, если докупите дополнительные корзины для них.

Минусы:

  • Большие размеры. Стандартный корпус формата Midi‑Tower и материнские платы mATX или ATX занимают много места. На полочку рядом с роутером такой ящик вряд ли получится поставить.
  • Шум. Охладить старые комплектующие не так‑то просто — придётся устанавливать в корпус дополнительные вентиляторы, которые будут шуметь.
  • Необходимость чистки. Это не неттоп, который можно поставить в шкаф и забыть, — периодически придётся чистить пылевые фильтры.

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

Домашний сервер в корпусе mini‑ITX

Домашний сервер в корпусе mini-ITX

Сохранить преимущества предыдущего варианта и избавиться от его недостатков позволит корпус формата mini‑ITX. Он меньше, чем стандартные башни. И в нём можно размещать как игровые ПК, так и серверы.

Плюсы:

  • Широкий выбор комплектующих. Существует много корпусов mini‑ITX на любой вкус и кошелёк. Совместимые с ними материнские платы тоже бывают как очень дорогие и навороченные, так и простые и дешёвые.
  • Компактные размеры. Корпус mini‑ITX больше, чем неттоп, но в два-три раза меньше стандартной башни, так что его можно легко спрятать. Кроме того, такие коробки стильно выглядят.
  • Наличие места для дисков. Если докупить кронштейны для жёстких дисков, то в mini‑ITX‑корпус можно спокойно воткнуть 8–10 HDD большой ёмкости. Учитывая, что многие модели рассчитаны на сборку игровых ПК, можно ещё и в слот для видеокарты один-два диска поместить.
  • Возможность апгрейда. Это, в конце концов, настоящий ПК, и диски, процессоры, память можно подбирать любые.

Минусы:

  • Потенциальные проблемы с охлаждением. Маленькие корпусы охладить сложнее, чем большие. Впрочем, это решаемая проблема: в современных mini‑ITX и горячие игровые системы собирают. Так что, если вы грамотно расположите вентиляторы, ваши комплектующие будут в порядке.
  • Необходимость докупать материнскую плату и блок питания. В некоторые mini‑ITX-корпусы с помощью подручных средств можно установить полноразмерную материнскую плату. Но всё же может случиться, что вам придётся купить вариант поменьше. Кроме того, некоторые корпусы вмещают только маленькие блоки питания формата SFX.
  • Необходимость чистки. Иногда ваш сервер mini‑ITX придётся прочищать от пыли. Например, раз в полгода‑год.

В общем, сервер в формате mini‑ITX — это прекрасный компромисс. Он может быть настолько мощным и прокачанным, насколько вы захотите. И при этом — занимать мало места, не издавать много шума и хорошо вентилироваться. Вдобавок большинство комплектующих для стандартных корпусов подходят и для компактного кейса.

Что купить

  • Компьютерный корпус Cooler Master Elite 130, 4 741 рубль →
  • Компьютерный корпус Jonsbo C2, 3 940 рублей →
  • Компьютерный корпус Chieftec CI‑01B, 5 488 рублей →

Домашний сервер в готовом корпусе для NAS

Домашний сервер в готовом корпусе для NAS

Отдельно стоит упомянуть возможность сборки домашнего сервера в корпусе NAS — такие продаются на AliExpress и в других интернет‑магазинах. В него вставляется материнская плата формата mini‑ITX и компактный блок питания. В корпусе есть несколько салазок для жёстких дисков — обычно два, четыре или шесть, но бывают и монструозные коробки на 12 HDD.

Плюсы:

  • Компактные размеры. Даже меньше, чем большинство корпусов mini‑ITX. Вдобавок такой кейс хорошо выглядит.
  • Возможность горячей замены дисков. Для некоторых пользователей, например постоянно копирующих большие объёмы данных с одного компьютера на другой, это может быть очень важным преимуществом. Вставляете в корзину диск, заполняете его данными, нажимаете на кнопку, и он выскакивает обратно. Не придётся разбирать весь сервер, чтобы поменять HDD.
  • Возможность апгрейда. Можно установить более дорогую материнскую плату, мощный процессор и большее количество памяти — главное, чтобы всё это поместилось в корпусе.
  • Тихая работа. Устройство работает примерно так же тихо, как дорогие решения от Synology. Иногда производители устанавливают в свои корпусы дешёвые шумные вентиляторы, но их можно легко заменить.

Минусы:

  • Цена. Готовый корпус для NAS заметно дороже, чем кейсы mini‑ITX, да и доставка влетает в копеечку.
  • Ограниченное количество дисков. Если в корпусе четыре разъёма под HDD, то вы именно столько дисков и установите — не больше. В кейсах mini‑ITX можно добавить дополнительные корзины для HDD, а тут придётся пользоваться тем, что есть.
  • Однозначно понадобится докупать материнскую плату и блок питания. Размеры NAS‑корпусов таковы, что большая материнка и блок питания туда просто не влезут. В некоторые mini‑ITX‑корпусы всё-таки можно установить комплектующие, не подходящие им по размеру, но не в этом случае.

Сервер в готовом корпусе для NAS можно выбрать, если вы собираетесь часто менять жёсткие диски. Например, вы видеомонтажёр или 3D‑генералист и вам приходится постоянно переносить HDD с большими объёмами данных. Ну или вам просто понравилось, как выглядит эта штука, и вы готовы немного переплатить.

Что купить

  • Корпус для NAS от Toploong, 4 580 рублей →
  • Корпус для NAS от Jonsbo, 9 068 рублей →
  • Компактный корпус для NAS от Jonsbo, 9 099 рублей →

Что установить на домашний сервер

После того как вы выбрали и собрали комплектующие для своего сервера, подсоединили их к питанию и убедились, что всё работает, настало время установить операционную систему. Вот какие есть варианты.

Ubuntu Server

Что установить на домашний сервер: Ubuntu Server

Изображение: DistroWatch.com

Ubuntu Server является одним из самых популярных дистрибутивов Linux для серверов. У него огромное сообщество пользователей и разработчиков, что облегчает получение поддержки и решение проблем.

Ubuntu Server предлагает множество возможностей и легко настраивается. Нетребователен к железу и хорошо работает даже на таких маломощных устройствах, как Raspberry Pi.

Загрузить Ubuntu Server →

Debian

Что установить на домашний сервер: Debian

Изображение: DistroWatch.com

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

Загрузить Debian →

CentOS

Что установить на домашний сервер: CentOS

Изображение: DistroWatch.com

CentOS (Community Enterprise Operating System) основан на исходных кодах коммерческого дистрибутива Red Hat Enterprise Linux, но, в отличие от последнего, полностью бесплатен. Он стабильный, безопасный, с большим сообществом пользователей. Если вы когда‑нибудь работали с Fedora, то без проблем разберётесь и тут.

Загрузить CentOS →

TrueNAS

Что установить на домашний сервер: TrueNAS

Изображение: Wikimedia Commons

Если ваш сервер в первую очередь предназначен для хранения файлов и обмена ими, то TrueNAS может быть хорошим выбором. Это ПО основано на операционной системе FreeBSD и предлагает продвинутые функции для NAS (сетевого хранилища). Например, тут можно в несколько кликов создать RAID‑массив, который будет дублировать ваши данные на несколько дисков, чтобы сохранить их даже при аппаратных сбоях.

Загрузить TrueNAS →

OpenMediaVault

Что установить на домашний сервер: OpenMediaVault

Изображение: Wikimedia Commons

Ещё одна ОС, специализирующаяся прежде всего на хранении файлов и обмене ими. Она аналогична по возможностям FreeNAS, но основана на Debian. Предоставляет простой в использовании интерфейс для удалённого управления NAS‑сервером.

Загрузить OpenMediaVault →

Windows

Что установить на домашний сервер: Windows

Изображение: TrustedReviews.com

Тут поклонники Linux начнут смеяться, но Windows — отличная система для неискушённого владельца домашнего сервера. Конечно, она более требовательна к ресурсам, чем Linux или FreeBSD, но при этом намного проще в настройке.

Кроме того, если вы не гик, управлять сервером через Windows Remote Desktop намного приятнее, чем набирать команды в сетевом терминале по протоколу SSH. В общем, если сомневаетесь, что справитесь с настройкой Linux, — можете остаться на старых добрых «Окнах».

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

Загрузить Windows →

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

Если нужен собственный веб-сервер — например, чтобы хранить фотографии и видео и делиться ими, — можно арендовать виртуальный (VDS) или физический сервер в стойке провайдера. Но такой сервер не будет нашим на все сто. Сегодня мы настроим веб-сервер, которым больше никто не сможет управлять. 

Это практическая инструкция о том, как запустить свой веб-сервер. Минимальные требования к железу такие:

  • видеокарта, которая умеет выводить в 1024×768 пк;
  • процессор с тактовой частотой от 2 ГГц;
  • жёсткий диск с хотя бы 20 Гбайт свободного пространства;
  • оперативная память от 4 ГБайт.

Операционная система может быть любой начиная с Windows 95 и Linux Mint. Мы используем Fedora Server.

Ещё веб-сервер можно поднять на сетевом хранилище или на Wi-Fi-роутере. Об этих способах расскажем в другой раз.

Устанавливаем софт

Для наших целей хватит Apache2 — кросс-платформенного веб-сервера с открытым исходным кодом. Это довольно старое ПО, но его по-прежнему можно использовать. Apache2 не подойдёт только в том случае, если сайт должен обрабатывать десятки тысяч запросов в секунду.

Чтобы установить Apache2, вводим в командной строке по очереди две команды — первая обновляет менеджер пакетов, вторая ставит всё, что нужно:

$ sudo apt update
$ sudo apt install lamp-server^ -y

Таким образом мы подключим сразу 5 пакетов: сам Apache2, язык сценариев PHP5, клиент PHP5-MySQL и реляционную базу данных MySQL-Server. Сценарии мы будем писать на Python, но PHP5 этому не помешает.

Чтобы проверить, что наш сервер работает, введём адрес 127.0.0.1 или localhost в адресную строку браузера:

Превращаем домашний компьютер в полноценный веб-сервер: пошаговое руководство

Это стандартная заглушка Apache2, которая используется для проверки работы сервера. На ней буквально написано: «если вы видите страницу, значит, всё в порядке».

Ещё статус сервера можно проверить такой командой:

$ sudo systemctl status apache2

Настраиваем сеть

Теперь покажем наш веб-сервер другим пользователям. Пока сервер домашний, подключиться к нему могут только пользователи локальной сети — с тех устройств, которые подключены к нашему роутеру. Чтобы это исправить, нужно приобрести «белый», или публичный, IP у провайдера. Тогда наш веб-сервер станет доступен из любой точки, где есть интернет. В среднем белый IP стоит 200 рублей в месяц.

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

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

Чтобы решить проблему с нехваткой белых адресов, существуют серые IP-адреса в диапазоне 192.168.0.1–192.168.255.254. Например, если у нас несколько компьютеров, не обязательно присваивать белые адреса им всем. Роутер распределит между ними серые IP, а для доступа в интернет хватит одного белого. Так устроен NAT — механизм, который конвертирует внутренние адреса во внешние и наоборот.

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

Настроим статический DHCP — сетевой протокол, который позволяет устройствам автоматически получать IP-адреса. Динамический IP присваивается на определённый срок, например на 24 часа. Если не настроить DHCP, то через сутки придётся снова заходить в административную панель роутера, чтобы узнать актуальный адрес. Статическая настройка решает эту проблему навсегда. 

Покажем, как это работает, на примере роутера ZTE H298A. У вас может быть любой другой роутер, но принцип настройки будет одинаковым, различие только в названиях пунктов меню. 

Зайдём в панель администратора роутера по адресу 192.168.0.1 и найдём раздел «Локальная сеть»:

Превращаем домашний компьютер в полноценный веб-сервер: пошаговое руководство

Листаем страницу вниз и находим пункт «Привязка DHCP»:

Превращаем домашний компьютер в полноценный веб-сервер: пошаговое руководство

Чтобы настроить DHCP, нам нужно выяснить MAC-адрес нашего роутера. Сделать это можно при помощи команды ifconfig в командной строке:

Превращаем домашний компьютер в полноценный веб-сервер: пошаговое руководство

Теперь смотрим настройки роутера. Действительно, у нашего сервера IP-адрес 192.168.0.10, а MAC-адрес — a8:a1:59:1a:9a:33. IP выдан нам на 23 часа и 46 минут. Это значит, что через сутки адрес поменяется и мы уже не сможем по нему зайти на сервер с другого устройства:

Превращаем домашний компьютер в полноценный веб-сервер: пошаговое руководство

Присвоим нашему серверу постоянный DHCP, чтобы адрес всегда был одним и тем же. Для этого скопируем значение MAC-адреса и вставим его в поле «MAC Адрес». В поле «IP Адрес» первые 3 ячейки заполняем числами 192, 168, 0. В последней ячейке можно указать любое число от 2 до 255. У нас получилось так:

Превращаем домашний компьютер в полноценный веб-сервер: пошаговое руководство

Подтверждаем создание элемента и перезагружаем роутер. Ждём пару минут, пока он загрузится снова, и опять заходим в настройки локальной сети:

Превращаем домашний компьютер в полноценный веб-сервер: пошаговое руководство

Замечаем статус Infinity. Это значит, что адрес 192.168.0.200 бессрочно закреплён за нашим сервером. Теперь мы точно знаем, что он не поменяется. Давайте протестируем наши настройки. 

Попробуем зайти с телефона:

Превращаем домашний компьютер в полноценный веб-сервер: пошаговое руководство

Проверим доступность сервера с другого компьютера командой ping и зайдём с браузера:

Превращаем домашний компьютер в полноценный веб-сервер: пошаговое руководство

Превращаем домашний компьютер в полноценный веб-сервер: пошаговое руководство

Всё работает. Другие устройства, подключённые к Wi-Fi, видят наш сервер. Это значит, что план-минимум мы выполнили: настроили софт и подняли локальный сервер. 

Вам может быть интересно:

Что дальше

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

Текст:

Абдурахман Гаджиев

Когда разработчик создает сайт — перед отправкой на внешние сервера он тестирует его локально. Для этого ему нужен собственный веб-сервер: ПО, которое работает на его личном ПК и позволяет обмениваться HTTP-запросами. Такой сервер называется локальным: к нему нет доступа ни у кого, кроме самого программиста и людей, которым он предоставит доступ.

Мы уже писали, как установить сервер — но для операционной системы Linux. Теперь разберем процесс с более привычной для многих ОС Windows.

Какая версия Windows понадобится

Существует серверная версия ОС Windows. Она называется Windows Server и предназначена для администрирования сетей из нескольких компьютеров. Ее используют в корпоративной инфраструктуре — чтобы управлять рабочими устройствами. Для нее существуют и веб-сервера, которые позволяют запускать сайты — но обычно речь идет о больших проектах.

Для установки локального веб-сервера Windows Server не нужна. Достаточно обычной пользовательской операционной системы. Желательно — одной из новых версий, например Windows 10. Старые системы вроде Windows XP больше не поддерживаются, и обновлений ПО для них не выпускают.

Какие есть веб-сервера для Windows

В качестве локального сервера обычно используют одну из трех программ:

  • XAMPP — ее мы разбирали в статье про установку сервера на Ubuntu;
  • Denwer — популярное, но довольно сложное для начинающих ПО с консольным интерфейсом;
  • Open Server — на ее примере мы и будем показывать процесс. 

Open Server — бесплатное ПО, которое не требует установки. В отличие от Denwer, оно довольно легко настраивается и поэтому подходит для новичков. Но весит немало: убедитесь, что на диске свободно как минимум несколько гигабайт.

Еще одно преимущество Open Server — его создали русскоязычные разработчики из стран СНГ. Поэтому официальный сайт и техническая документация по проекту — полностью на русском.

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

Как установить локальный сервер на Windows

Мы не будем подробно останавливаться на установке ОС Windows. Если человек — пользователь этой системы, скорее всего она уже установлена у него на компьютере. Кроме того, процесс обычно проще, чем в случае с Linux. Поэтому сразу перейдем к тому, как поставить сервер.

  1. Перейдите на официальный сайт Open Server и скачайте последнюю стабильную версию ПО. Обратите внимание: для его работы нужно, чтобы у вас стояла Windows 10. Старые ОС поддерживаются ограниченно: некоторые функции будут недоступны.
  2. Начнется загрузка файла с расширением .exe — подождите, пока она завершится, и после этого запустите его.
  3. Выберите путь для установки сервера. Разработчики рекомендуют устанавливать его в корень диска: C:\OSPanel. Если у вас есть SSD — лучше использовать его, так как он быстрее.
  4. Если вы хотите, чтобы сервер был портативным — можете установить его на съемный диск. Тогда понадобится выбрать вариант «Портативная установка». В других случаях лучше выбирать стандартную.
  5. Подождите, пока программное обеспечение установится. Затем запустите утилиту System Preparation Tool — она идет в комплекте с Open Server и помогает подготовить компьютер к запуску сервера. Запускать ее нужно с правами администратора.
  6. Добавьте Open Server в список исключений своего антивируса, чтобы тот не мешал работе сервера. Это важно, потому что антивирус будет замедлять работу ПО — а иногда и вовсе останавливать ее.

После завершения установки перезагрузите компьютер. Теперь локальный сервер можно запускать. 

Как запустить сервер в первый раз

В отличие от System Preparation Tool, сам сервер не обязательно запускать от имени администратора. Более того: сами разработчики не рекомендуют так делать.

Запустить локальный сервер можно двумя способами:

  • через меню «Пуск»;
  • с помощью команды .\bin\ospanel.exe в консоли — этот способ рекомендуют, если ПО установили портативно.

В трее — области уведомлений в меню операционной системы — должен появиться значок Open Server. Это будет значить, что ПО успешно запустилось. Можете кликнуть по значку и перейти в интерфейс программы.

При первом запуске разработчики рекомендуют открыть CLI — интерфейс командной строки — и проверить, все ли в порядке. Вот что понадобится сделать:

  1. выбрать в программе пункт Меню → Интерфейс командной строки;
  2. посмотреть логи с помощью команды osp log general — проверить, не описаны ли там какие-то ошибки;
  3. создать корневой сертификат, если не сделали этого при установке, с помощью команды osp cacert init.

Корневой сертификат нужен, чтобы пользоваться безопасным соединением с помощью протокола SSL. Без него протокол работать не будет.

Если при запуске CLI выдает ошибку The system cannot write to the specified device — значит, в командной строке вашей системы используется неподходящий шрифт. Нужно заменить его на шрифт в кодировке, совместимой с UTF-8 — сами разработчики Open Server рекомендуют Consolas.

Как установить модули в Open Server

Open Server поддерживает множество модулей для веб-разработки — но по умолчанию после установки все они отключены. Чтобы работать с серьезными проектами, понадобится подключать их по мере необходимости.

  • Если модуль уже установлен, достаточно активировать его для нужного проекта через меню Open Server.
  • Если модуль не установлен — понадобится поставить его с помощью инсталлятора, который вы использовали при установке самого сервера.
  • Модули можно создавать и самостоятельно — но это уже более продвинутая задача, которая вряд ли понадобится на первых этапах работы.

Обычно, если Open Server устанавливали полностью, модули уже есть в инструменте. Но если при установке вы сняли галочки с некоторых модулей, а затем они вам понадобились, — нужно будет запустить файл установщика еще раз и поставить галочки только рядом с необходимыми компонентами.

Как создавать проекты и работать с ними

Open Server предлагает начинающим несколько тестовых проектов — чтобы потренироваться и набить руку. Для каждого проекта, как тестового, так и своего собственного, нужно сделать две вещи:

  • выбрать версию PHP, которая будет использоваться в проекте;
  • активировать нужные модули, например веб-сервер Nginx — его часто используют в связке с Apache как прокси-сервер.

Сам веб-сервер Apache используется по умолчанию. Активировать для него какие-либо модули не нужно.

Чтобы создать проект, нужно сформировать для него каталог внутри папки home. Назовем его firstproject. Внутри этого каталога необходимо создать папки:

  • osp — там будут находиться файлы с настройками и конфигурацией веб-сервера;
  • public — создается по необходимости и содержит файлы самого сайта.

В папке osp нужно создать файл под названием project.ini. Там будет находиться конфигурация. Содержимое файла должно быть таким:

[имя_домена]

public_dir = {base_dir}\public

php_engine = PHP-X.Y

Вместо [имя_домена] нужно подставить желаемое доменное имя для сайта, а вместо PHP-X.Y — нужную версию языка PHP.

Управлять сервером можно с помощью меню в интерфейсе Open Server. Там есть команды, позволяющие подключить новые модули, изменить версию PHP и сделать многое другое. А чтобы посмотреть, как выглядит сайт, достаточно перейти по его доменному имени — оно написано в файле project.ini вместо [имя_домена].

Например, для тестового проекта, который создан и настроен в Open Server по умолчанию, доменное имя — example.local.

Теперь вы можете создавать веб-страницы и тестировать их — открывать на собственном веб-сервере. А если нужны более сложные функции Open Server, можете ознакомиться с официальной документацией последней версии ПО.

Краткие выводы

  • Локальный веб-сервер на Windows может понадобиться разработчику, чтобы тестировать сайты перед отправкой на основной сервер.
  • Обычно локальный сервер запускают на собственном компьютере, а доступ к нему имеет только сам владелец.
  • Устанавливать серверную версию Windows не нужно — достаточно обычной системы, желательно новой версии.
  • Существует много вариантов ПО для веб-серверов: Denwer, XAMPP, Open Server и другие. Они уже содержат все необходимое для запуска сайта на домашнем ПК.
  • Процесс установки и настройки для каждого сервера отличается. В случае с Open Server нужно скачать установщик, выбрать параметры установки и дождаться ее окончания. После этого — настроить окружение и сам сервер.
  • Проекты лежат в отдельной папке — там находятся файлы сайта и конфигурации. В файле конфигурации описано, какая версия PHP используется в проекте и как называется домен.

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

David Murphy. How to Convert an Old PC into a Modern Server. www.pcworld.com

Можно, конечно, отправить его на свалку. Однако позволим себе предложить другое решение – соорудите из старой развалины локальный сервер. Его можно использовать в качестве хранилища для автоматического создания резервных копий информации, находящейся на ПК, или в качестве файл-сервера, чтобы к нему обращались вы и другие сотрудники компании, находясь в дороге. И это лишь две роли, которые способен взять на себя старый ПК. На практике же он принесет бизнесу гораздо больше пользы.

Программное обеспечение FreeNAS, устанавливаемое на компьютере, точно соответствует своему названию: это бесплатная операционная система для создания сетевых устройств хранения данных (network-attached storage, NAS). Помимо того, что система FreeNAS бесплатная, она еще отличается простотой установки, настройки и эксплуатации.

Установка FreeNAS

Для реализации этого проекта вам понадобится  флеш-диск  емкостью не менее 2  Гбайт  

Прежде чем приступать к инсталляции FreeNAS, возьмите флеш-диск емкостью не менее 2 Гбайт. Установите FreeNAS на этот диск и загрузите с него компьютер. Дело в том, что операционную систему нельзя ставить на накопитель, где будут размещаться совместно используемые данные.

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

После того как загрузочное устройство найдено, скачайте на свой компьютер последнюю версию FreeNAS с официального сайта операционной системы.

Полученный образ диска (файл. iso) должен соответствовать конфигурации вашего компьютера: x86, если машина оборудована 32-разрядным процессором; и x64, если у вас установлен 64-разрядный. Затем запишите образ на чистый CD и вставьте оптический диск в соответствующий дисковод будущего сервера.

В момент начальной загрузки компьютера укажите в меню BIOS, что машину следует загрузить с оптического диска.

Когда будут выполнены все команды процедуры загрузки системы FreeNAS, созданной на основе FreeBSD, на экране отобразится меню, состоящее из четырех пунктов. Выберите первый из них, указывающий, что установка (или обновление) FreeNAS 8 будет осуществляться на жесткий диск или флеш-диск, и нажмите клавишу . На следующем экране отобразятся все устройства хранения, подключенные к вашему компьютеру. Здесь нужно выделить соответствующий флеш-диск (операционная система создаст на диске два раздела: один — непосредственно для ОС, другой — для будущих обновлений FreeNAS). Больше ничего нажимать не нужно.

Как превратить старый ПК в современный сервер

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

Затем переведите курсор на флеш-диск, выберите Yes и нажмите клавишу . По завершении процедуры установки FreeNAS выдаст соответствующее сообщение. Нажмите и выберите в главном меню пункт, инициирующий перезагрузку системы. После начала загрузки компьютера повторите процедуру, определяющую, с какого устройства система будет устанавливаться по умолчанию. На этот раз укажите, что загрузка будет производиться с флеш-диска, подключаемого к USB-порту.

Как превратить старый ПК в современный сервер

Убедитесь в том, что данные, находящиеся на флеш-диске, вам больше не нужны

Настройка параметров устройства хранения

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

Предположим, что ваша система нормально функционирует с установками по умолчанию (а если она подключена к сети с помощью кабеля Ethernet, то так и должно быть). В этом случае серверу будет присвоен IP-адрес, который открывает доступ к основным настройкам FreeNAS. Введите этот IP-адрес в адресную строку веб-браузера на любом компьютере, подсоединенном к сети, и нажмите клавишу .

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

Чтобы настроить тома хранения, щелкните на кнопке Storage, находящейся в левом верхнем углу экрана настройки конфигурации FreeNAS. Нажмите кнопку Create Volume, отобразившуюся в главном окне. Присвойте создаваемому тому имя и укажите число устройств, на которых он будет размещаться. В качестве файловой системы выберите ZFS, обладающую рядом преимуществ, отсутствующих у Unix File System. При объединении нескольких устройств у вас появится возможность выбирать тип RAID-массива, который при этом будет применяться.

Как превратить старый ПК в современный сервер

Установите себе полномочия администратора, чтобы иметь возможность управлять сервером

ZFS — отличная файловая система, обладающая преимуществами, отсутствующими у UFS

После завершения работы по созданию разделов, нажмите кнопку Add Volume. Если вы хотите, чтобы к устройству хранения могли обращаться все сотрудники офиса, и желаете избавиться от необходимости индивидуально определять права доступа для каждого пользователя, щелкните на значке Change Permissions и установите право доступа на запись для Group и Other users (убедитесь также, что выбран параметр Set Permissions Recursively).

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

Определение совместно используемых ресурсов

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

Если в офисе одновременно применяются системы Mac, Linux и Windows, имеет смысл воспользоваться протоколом CIFS. Если же там имеются только компьютеры Macintosh, лучше обратиться к протоколу AFP (хотя обязательным условием это не является).

Как превратить старый ПК в современный сервер

Протокол CIFS целесообразно выбирать тогда, когда в сети развернуты только ПК или ПК и компьютеры Macintosh

Нажмите кнопку Sharing, находящуюся в левой части экрана настройки конфигурации, и выберите пункт Add CIFS Share. Присвойте общему ресурсу имя и выберите том, нажав кнопку Browse в строке Path. Имя, определенное ранее для тома, должно отобразиться внутри папки /mnt/. Щелкните на этом имени и нажмите кнопку Close. Убедитесь в том, что флажок Allow Guest Access установлен, и нажмите OK.

Щелкните на кнопке Services, расположенной на левой панели, и выберите Control Services. На основной панели установите переключатель CIFS в положение «включено». В окне Проводника Windows наберите IP-адрес FreeNAS (например, \192.168.0.1) и нажмите клавишу . На экране отобразятся ресурсы, к которым пользователи имеют доступ. Подключите сетевой диск средствами Windows, и вам больше не придется вводить IP-адрес в Проводнике.

Как превратить старый ПК в современный сервер

Подключите в среде Windows сетевой диск, и тогда не понадобится запоминать IP-адрес

Проделав все эти операции, мы не упомянули о нескольких параметрах конфигурации, играющих важную роль при отображении совместно применяемого сетевого диска. В частности, нужно убедиться, что в установках CIFS (Services, CIFS) задана нужная рабочая группа. Если вдруг вы обнаружите, что последовательность описанных шагов не работает, скорее всего, причина кроется в настройках сетевой конфигурации. Проверьте, соответствуют ли сетевые параметры FreeNAS параметрам других компьютеров сети.

Созданный таким образом простой, совместно употребляемый диск – лишь вершина айсберга возможностей FreeNAS. Настройки позволяют заблокировать доступ к диску определенным пользователям и группам, создать последовательность моментальных снимков для восстановления старых версий документов или полностью удаленных файлов, применять мощное сочетание Dynamic DNS и FTP, для того чтобы упростить удаленным пользователям доступ к нужным им данным.

Резервное копирование

Как превратить старый ПК в современный сервер

Операционные системы Windows 7 Профессиональная и Максимальная позволяют создавать резервные копии ПК на сетевых ресурсах и восстанавливать сохраненную там информацию

Если сервер FreeNAS будет служить хранилищем автоматически создаваемых резервных копий клиентских ПК, нужно выбрать одно из нескольких коммерческих или бесплатных приложений, к которым будут обращаться эти клиенты. На компьютерах, где установлена версия Windows 7.

Профессиональная и старше, стоит обратиться к встроенному инструменту «Архивация и восстановление» (младшие версии ОС не позволяют осуществлять резервное копирование по сети).

Запустите приложение в среде Windows 7 и щелкните мышью по ссылке «Настройка резервного копирования». Нажмите кнопку «Сохранить в сети», затем кнопку «Обзор» и выберите созданную вами папку FreeNAS. Если на сервере FreeNAS для вас уже создана учетная запись, введите имя пользователя и пароль. Если нет, применяйте имя пользователя по умолчанию (admin) и пароль, заданный вами ранее.

Как превратить старый ПК в современный сервер

Выберите файлы, для которых нужно создать резервные копии, или предоставьте право Windows принять решение за вас

Можно разрешить Windows выбирать файлы, которые ОС считает наиболее важными, или же указать конкретные файлы и папки самостоятельно.

Затем следует запустить процедуру резервного копирования с выбранными вами параметрами. Процедура архивации будет выполнена в первый раз.

По ее завершении щелкните на ссылке «Изменить параметры и создайте расписание для автоматического выполнения процедуры резервного копирования.

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Программа для обрезания видео для windows
  • Как обновить windows 10 ltsc 1809 до 1909
  • Как включить smb2 на windows server 2003
  • Epson l850 driver windows 10
  • Лунный календарь приложение для windows