На чем поднять файловый сервер

Обновлено: 06.07.2024

Настройка файлового сервера Samba на платформе Debian / Ubuntu

Файловый сервер можно без преувеличения назвать средством первой необходимости, даже в сетях без выделенного сервера вы всегда обнаружите папки с общим доступом, но по мере роста объемов данных появляется потребность в отдельном решении. Вариантов его организации множество, одним из которых является служба Samba на Linux-сервере, это простое, недорогое, но в то же время мощное решение по организации общего доступа к файлам и папкам в Windows сетях. В данной статье мы рассмотрим настройку простого сервера на основе Samba 4 работающего в ОС Debian / Ubuntu.

Несмотря на то, что в данной статье в качестве ОС мы использовали Debain 9, все сказанное будет справедливо для любой ОС на базе Debian или Ubuntu, а с поправкой на работу пакетного менеджера - для любого Linux-дистрибутива. Также мы предполагаем, что читатель имеет базовые навыки работы с Linux-системами на базе Debian.

Подготовка системы

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

Противоположность им "горячие данные" - это данные которые интенсивно используются и изменяются, для файлового сервера примером таких данных может служить файловая информационная база 1С:Предприятия. Между ними находятся обычные данные, характер доступа к которым не имеет каких-либо особенностей.

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

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

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

samba-debian-001.jpg

Также обратите внимание на имя компьютера, Samba 4 будет использовать его в качестве NetBIOS имени.

После установки ОС следует изменить настройку лимита на количество одновременно открытых файлов, в Linux это 1024, а в Windows 16384. Для этого откройте файл /etc/security/limits.conf и добавьте в конце две строки:

После чего сервер следует перезагрузить.

Установка и базовая настройка Samba 4

Установка Samba предельно проста:

После чего откроем файл /etc/samba/smb.conf и выполним общие настройки. Большинство указанных опций в файле уже есть, многие из них даже не потребуется менять, но их назначение будет полезно знать, поэтому мы прокомментируем наиболее важные из них.

Начнем, опции перечисляются в порядке их следования в файле:

Обозначает рабочую группу Windows, по умолчанию WORKGROUP.

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

Или только подсети:

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

Следующая опция указывает расположение логов:

По умолчанию лог выключен, для того чтобы его включить добавьте в файл опцию:

Если вам нужен более подробный лог - установите более высокий уровень, минимальное значение - 1, максимальное - 5.

Также закомментируйте опцию:

В настоящий момент она является не рекомендованной (deprecated).

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

Определяет способ определения гостевого доступа, при указанном значении гостем будет считаться любой пользователь, который отсутствует в базе Samba. Также могут использоваться значения never - не использовать гостевой доступ и bad password - в этом случае гостем будет считаться, в том числе, и существующий пользователь если он неправильно введет пароль. Данное значение использовать не рекомендуется, так как при ошибке в пароле пользователь все равно получит доступ, но с гостевыми правами.

На этом общая настройка сервера закончена. Проверим конфигурацию на ошибки:

И перезапустим сервер

Настройка общего ресурса с гостевым доступом

Начнем с самого простого варианта - создадим общий ресурс, доступ к которому может иметь любой пользователь. Для этого добавим в конец файла /etc/samba/smb.conf следующие строки.

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

  • comment - описание ресурса, необязательный параметр;
  • path - путь к директории;
  • read only - режим только чтения, указываем no;
  • guest ok - разрешен ли гостевой доступ, указываем yes;

Теперь создадим саму директорию:

и установим на нее необходимые права, для гостевого ресурса это 777:

samba-debian-006.jpg

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

Это полностью снимет права на выполнение для всех, но оставит полный доступ к исполняемым файлам. Если же требуется разрешить возможность запуска, то вместо create mode следует использовать опцию force create mode, которая будет устанавливать разрешения без учета прав доступа DOS:

Теперь перезапускаем Samba и пробуем получить доступ с любого Windows-клиента.

samba-debian-002.jpg

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

Настройка общего ресурса с парольным доступом

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

Снова откроем конфигурационный файл и добавим в него две секции:

Они предельно просты и отличаются запретом гостевого доступа - guest ok = no. Для того, чтобы разделить доступ к ресурсам будем использовать группы пользователей, создадим две новые группы для наших подразделений:

Теперь создадим каталоги:

и изменим группу владельца:

Затем установим права:

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

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

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

Обратите внимание, что мы устанавливаем SGID только для каталогов, для файлов в данной схеме выставлять его не имеет смысла. А вот если вы установили sticky bit, то его нужно указать в обоих случаях:

Не забываем, что данные опции следует добавить в каждую секцию.

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

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

Затем добавим его в базу Samba:

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

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

samba-debian-003.jpg

С настройками по умолчанию Samba предоставляет каждому существующему пользователю доступ только на чтение к его домашнему каталогу. На наш взгляд это довольно удобно и безопасно. Если вас не устраивает такое поведение - удалите из конфигурационного файла секцию [homes].

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

Ключ -M заводит пользователя без создания домашнего каталога, а -s /sbin/nologin исключает возможность входа такого пользователя в систему.

Поместим каждого в свою группу:

Затем добавим их в базу Samba, при этом потребуется установить им пароли:

И включим эти учетные записи

Если все сделано правильно, то пользователь будет иметь доступ к своим ресурсам и не иметь к чужим.

samba-debian-004.jpg

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

Настройка общего ресурса со смешанным доступом

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

Добавим в конфигурационный файл следующую секцию:

Здесь все понятно, стандартное описание ресурса. Теперь создадим директорию и изменим группового владельца:

Теперь подумаем о правах, владелец и группа adm должны иметь полный доступ - rwx (7) плюс установленный SGID для директорий, а остальные должны иметь право чтения и выполнения, т.е. r-x (5), для файлов следует использовать force create mode, иначе вместо желаемых 0775 вы получите 0764, все тоже самое, только без права выполнения для группы и остальных.

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

Настройка скрытого общего ресурса

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

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

samba-debian-007.jpg

Во всем остальном такие ресурсы ничем не отличаются от обычных и к ним применимо все вышесказанное.

Настройка корзины для общего ресурса

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

Для активации корзины добавьте в секцию к общему ресурсу следующие строки:

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

Выше мы везде говорили о правах, корзина не исключение, если у вас включено сохранение структуры папок, то по умолчанию она будет создана с правами 0700, т.е. восстановить файл сможет только тот, кто его удалил. Рекомендуется изменить это поведение и установить права аналогичные указанным в directory mode, для этого добавим еще одну опцию (права указаны для директории buch):

Перезапустим Samba и попробуем что-нибудь удалить.

samba-debian-005.jpg

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

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

Также рекомендуем ознакомиться со статьей Linux - начинающим. Часть 4. Работаем с файловой системой. Теория для более подробного ознакомления с системой прав файловой системы Linux.

Теперь перейдем к описанию. Это консольный ftp server, у него нет GUI [графическая оболочка], поэтому вся настройка происходит в одном единственном конфиге, по адресу /etc/vsftpd.conf.
Вот пример рабочего конфига:

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

image

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

Рисунок 1. Выставление прав
На этом собственно всё.

Samba.
Хотите всегда иметь под рукой файловое хранилище всех коллекций и всего прочего с ноутбука, с домашнего компьютера, с телефона, с планшета? Поехали.

Изначально, при стандартной установке системы OpenSUSE всё что нужно для установки и настройки samba на сервере уже предустановлено. Поэтому перейдем непосредственно к настройке. Поскольку доступ из под ОС Windows в качестве «Подключения сетевого диска» будет доступен только внутри Вашей локальной сети [для интернета есть ftp сервер, да и к тому же, вывешивать самбу в интернет крайне не безопасно, а мы же, — «ЗА СЕКЬЮРНОСТЬ. УРА!»] поэтому настройки будут крайне банальны и просты в понимании. Есть два [известных мне и адекватных на мой взгляд] настройки самбы, это через, всё тот самый, конфигурационный файл и при помощи утилиты — WebMin. Это дико-крутая штука, особенно для тех, кто не любит ковырять конфиги [но и здесь есть свои ньюансы]. В данной статье не будем останавливаться на средствах "для ленивых", поэтому продолжаем. Мы будем рассматривать рабочий конфиг файл. Находится он по адресу: /etc/samba/smb.conf. Вот он:

Также, дополнительную настройку можно выполнить через встроенный в YaST GUI samba.

Того пользователя, что мы указали в самом начале конфига, в данном примере это пользователь nobody, необходимо создать непосредственно в системе. Задать ему необходимые права (дома, имеет смысл поставить полные права, на создание, удаление, редактирование всех файлов и папок (т.е. права 777). Также, если Вы столкнетесь с ситуацией, когда по какой-то причине станет невозможным удаление/создание файлов в какой-либо из папок на сервере, то выполните команду:

Разберем её, на всякий случай:
chmod — команда установки прав.
777 — собственно права, в буквенном обозначении означают rwx, rwx, rwx — права чтение, запись, выполнение для владельца, группы(где состоит владелец), всех.
-R — ключ рекурсии, для того чтобы команда выполнилась не только для той папки(и файлов, находящихся в ней), которую Вы указали в /path, но и для всех под-папок и файлов в них тоже.
/path — путь до папки, на которую необходимо установить права. Аналогичная команда соответствует FTP серверу, если возникли похожие проблемы. Да, и надо оговориться, что если возникают подобные проблемы, то скорей всего проблема кроется в пользователях созданных в системе, а точнее в правах, выданных на использование их домашних директорий.

rTorrent.
Полу-автоматизированный торрент клиент.
На самом деле, это обычный торрент клиент, но, возможности настройки которого, очень богаты разнообразием. Сейчас мы с Вами разберём одну очень полезную функцию данного клиента. Представьте, Вы уже настроили самбу на Вашем домашнем сервере, файловое хранилище, находящееся на сервере подключена к Вашему компьютеру как Сетевой Диск, Вы открываете Ваш сетевой диск, открываете папку torrents, там открываете папку music и перемещаете туда все торрент файлы с музыкой, которые Вы хотите скачать и… всё, ложитесь спать. На утро уже будут скачены и проверены хеши всех торрентов, что Вы туда положили (тут конечно всё зависит от того сколько торрентов Вы хотите скачать, какой у них вес и какова ширина Вашего интернет канала). Нравится? Вот и я балдею уже как пол года, от этой функции.
Давайте разбираться.
Вам надо установить rtorrent, выполняем следующую команду в терминале:

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

image



Рисунок 2. Главное окно программы rTorrent

Собственно и все. Далее хитрый приём, — открываем консоль и пишем(можно и по ssh зайти на сервер):
screen rtorrent
Далее, в терминале откроется торрент-клиент, там же Вы его можете настроить и отладить дополнительно. Теперь нажимаем волшебные комбинации клавиш Ctrl+A затем Ctrl+D и консоль радостно Вас оповестит, что:
[detached]

image


Рисунок 3. «Заскринивание» процесса программы rTorrent.

Это говорит о том, что процесс Вашего торрент-клиента «закринин», то есть выполняется, но его при этом не видно. Для тех, адептов, кому всегда, всё интересно, может прочесть вот здесь про данную утилиту обременять голову такими вещами (хотя, они очень интересные и познавательные, и применяются часто) принудительно я не хочу.
Если Вам понадобилось заного открыть клиент, пишем:

ВАЖНО: Если Вы хотите запускать торрент-клиент под рутом(root, т.е. через команду sudo) то, необходимо конфиг файл создавать в корневом каталоге пользователя root, а также, screen -r необходимо выполнять также, под тем же пользователем, под которым Вы ее «заскринили».
Таким образом, у Вас в фоне всегда будет висеть торрент-клиент, который будет качать и раздавать ровно столько, сколько будет работать Ваш сервер.

На этой «важной» ноте, я хочу закончить данную статью. Спасибо за внимание, и да, пользуйтесь поисковиком Google, он молодец!

Делаем сетевое хранилище из старого ПК

При покупке нового компьютера, возникает вопрос, что сделать со старым: продать, подарить, отдать знакомым. Не спешите расставаться со старым другом!

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

На рынке есть аппаратные решения — компактные черные квадраты и прямоугольники на 2–20 дисков. Цена от 12 000 рублей за самый простенький вариант. Это те же компьютеры, только с большой корзиной для дисков и специфической операционной системой. Охлаждение продумано в них значительно лучше в сравнении со стандартным ПК, зато у нашей старой железки есть ряд неоспоримых преимуществ.

Преимущества NAS из Б/У ПК

Апгрейд: новая память, система охлаждения, количество HDD;
Подключение периферии: принтер, камеры, модули связи;
Установка любой понравившейся ОС;
Стоимость Б/У железа меньше, чем у готового решения.

Зачем нужен NAS?

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


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

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

Что понадобится?

  • Процессор с графическим ядром;
  • Оперативная память;
  • Материнская плата;
  • Жесткие диски;
  • Блок питания;
  • Охлаждение;
  • Корпус;
  • Wi-Fi;
  • ИБП;
  • SSD.

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

Корпус — любой, вмещающий в себя более двух жестких дисков. Если корзина для HDD маленькая, можно расширить за счет CD-ROM. В фасад Midi-Tower монтируется до 4 корзин по 3–4 диска в каждой.

Блок питания — 300–350W. Сервера потребляют мало электроэнергии. Для полной уверенности лучше взять калькулятор и подсчитать, сколько «ест» система. Если NAS собирается на 10–15 дисков и с мощным процессором, ставим 450–500W.

Материнская плата — любая, в идеале два LAN-порта c 1 Gb каналом и большим количеством выходов питания для винчестеров. Если такой нет, можно поставить расширитель в PCI-слот. При желании, с помощью китайских плат и разветвителей для кабелей питания, устанавливается два десятка HDD.

Оперативная память — зависит от операционной системы, минимальные требования: 1 Gb DDR 2. Максимум, что может потребоваться: 8Gb DDR3. Память с низкой частотой в 800 MHz предпочтительней, чем RAM с 1333 или 2400 MHz, потому что потребляет мало энергии.

Процессор лучше брать с низким TDP на уровне 45–65 ℃, Pentium IV, серверные Xeon или аналог от конкурента.

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

Весь смысл NAS в круглосуточной работе.

Сервера иногда «падают» — это нормально и случается даже у крупных хостеров. Блок бесперебойного питания сначала должен зарядиться от сети и лишь потом дать напряжение на материнку. Для правильной работы в Bios надо настроить автоматический запуск системы после подачи питания.

Жесткие диски — красный Western Digital самый популярный вариант, стоит недорого, долговечен, хорошо ведет себя в RAID. При выборе других брендов стоит обращать внимание на тип перезаписи и выносливость диска, скорости 7200 оборотов в минуту достаточно.

SSD — от 32 Gb для установки системы. Тем, кто собирается устанавливать мультимедийные библиотеки, хостинг, ПО для IP-камер, лучше сразу поставить на 64 или 128 Gb.

Wi-Fi — любой от 100 Mb, лучше — внешний, чтобы не греть внутренности.

Охлаждение — все зависит от того, как охлаждается массив HDD. Каждый диск выдает 38–70℃. Надо ставить 1–2 больших и тихих кулера, плюс пассивное охлаждение на процессор. ВДО — еще лучше.

Какую ОС выбрать для NAS?

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

Windows — подойдет для «неуверенных» пользователей. Управлять NAS можно через любой сервер-клиент, лучше всего для этих целей использовать FileZilla Client. Бесплатная софтина доступна на официальном сайте. Все диски сервера необходимо расшарить, добавив в папку Shared Folder. Рекомендуется сразу поставить лимит скорости и ограничить диапазон IP-адресов для доступа к HDD.

Для удаленного управления ПК из глобальной сети придется установить маршрутизатор и выбрать настройки переадресации 20 и 21 портов. Удаленное соединение через интернет осуществляется по 14 и 147 порту. Настроить DNS можно с помощью меню роутера. Рассмотрим подключение на примере Asus.


— бесплатное ПО на базе FreeBSD. Основные преимущества: дружественный веб-интерфейс, репликация данных ZFS быстрее в 8 раз, чем в FreeBSD, поддержка RAID 0,1 и 5. Инсталляционный образ весит 780 мегабайт. Как настроить, читаем здесь.

NAS4FREE — еще одна бесплатная операционная система на ОС FreeBSD. Обновленный графический интерфейс с поддержкой обмена файлами на ОС Windows.

Ubuntu Server — подойдет фанатам Пингвина. Интерфейс крайне лаконичен. Последняя актуальная версия — 12.4 LTS. У администраторов сайтов сложностей не возникнет.


Synology (Xpenology) — красивая, современная, дорогая. Устанавливается в качестве лицензионной системы на аппаратные NAS-сервера. Управлять ею так же легко, как Windows. Позволяет инсталлировать сотни модулей: хостинг, CMS, готовые и настроенные для работы облачные хранилища, различные менеджеры, языки и среды программирования, почтовые сервера, пакеты офисных программ, автоматическое копирование USB-носителей, создание баз данных. Всем она хороша, кроме цены. Synology идет в комплекте с аппаратными NAS + надо платить за расширенные возможности. Demo версия доступна по ссылке.


Xpenology — все то же самое, только взломанное ручками неравнодушных граждан. Единственный минус — не работает удаленный доступ, поскольку выделенный IP-сервер получает через Synology. Проблема решается с помощью серого IP, но только внутри локальной сети. Как установить и пропатчить, написано тут.

Какой создать RAID?


Для доступа к данным сервера можно не заморачиваться с рейдом дисков, особенно, если используется обычная Windows OS. Acronis умеет делать единый виртуальный диск из нескольких винчестеров. Доступ к нему можно получить через FTP с любого устройства. Создавать RAID стоит, если скорости чтения HDD не хватает для игр, когда необходимо хранить объемные видеоролики, большое количество фотографий и бекапов.

Особенности RAID-массивов

RAID 0 — автоматическое распределение файлов по разным дискам. Полетит один HDD — все файлы будут потеряны. Используется только для хранения неважной информации — игр со стима, старых копий бекапа. Единственное преимущество — быстрая скорость чтения, иногда помогающая при фризах в онлайн-играх.

RAID 1 (зеркало) — все файлы дублируются на двух группах винчестеров. При установке 2 терабайт, доступно для записи только 1T.

RAID 2, 3 и 4 — не поддерживается на домашних ПК и многих OC, пропускаем.

RAID 5 — минимум установка 3 HDD, на каждом хранится информация для восстановления и записанные данных. При выходе их строя одного, с 2 других можно восстановить информацию. RAID 5 объединяет в себе возможности 0 и 1, но «съедает» около 16% полезного пространства. Если выйдет из строя сразу 2 диска – информация будет утеряна. Хорошо подходит под хранение видео и объемных файлов.

RAID 6 — медленнее и нажористей пятого номера, отъедает 33%. Способен пережить гибель двух HDD без особых проблем. Рекомендуется для хранения важных бекапов.

SAS-контроллер для бытового использования не нужен, достаточно программной настройки работы дисков. Офису от 10 человек или специалисту по работе с графикой, может понадобится. Обычно контроллеры для RAID устанавливаются в аппаратные NAS сервера.

Какой HDD выбрать для RAID

Лучше всего использовать специальные диски для домашних сетевых хранилищ, например, WD Red Nas Hard Drive. У них есть функция 3D Action RAID, обеспечивающая быстродействие и повышенную надежность. Такие диски рассчитаны на круглосуточную работу в RAID-массивах.

Почему черепица быстро сыпется?

SMR — технология, позволяющая увеличить на 25% вместимость диска за счет использования физического пространства. На таких HDD пишущая головка в два раза толще считывающий. На всех жестких дисках тонкие дорожки с ценной информацией чередуются с широкими с сервисными данными. В результате большой объем пространства теряется. Технология SMR позволяет частично перекрывать толстые дорожки тонкими — этот метод получил название «Черепичная запись». Основной недостаток такого подхода: при записи файла, необходимо перезаписывать все смежные данные до конца пластины. Такие диски на 20% медленнее традиционных и быстрее изнашиваются. Их можно устанавливать, но в одном рейде нельзя комбинировать диски с черепичным и обычным типом записи. Последнее время производители перестали сообщать, при производстве каких дисков они используют SMR, перед покупкой уточняйте, по какой технологии изготовлена конкретная модель HDD.

Заключение

Сборка своего NAS из старого компьютера не сложнее обычного апгрейда ПК. Установив ОС по инструкции, можно за день-два поднять свой сервер и качать торренты, смотреть фильмы в 4К, связать телефон и планшет с практически безразмерным облаком. Программных решений достаточно. RAID создается в пару кликов мыши. Внимательно стоит отнестись к выбору HDD и системе охлаждения, греться и жужжать эта штука не должна!

Как создать файловый сервер на шесть HDD на основе старого компьютера

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

Современный жесткий диск потребляет около пяти ватт при обычной работе и до 10-15 ватт при старте. И вот, когда количество жестких дисков у меня достигло восьми штук, я понял что нужно собирать для них отдельный файловый сервер.

Для чего нужен файловый сервер

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

Конечно, можно поставить парочку больших жестких дисков на 6-8 терабайт в компьютер или NAS для этих же целей, и это будет компактно, энергоэффективно, но и цена такого решения будет намного выше.



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

В будущем доукомплектую его уже имеющейся Wi-Fi платой и буду экспериментировать и настраивать, а пока мне хватит простого файлового сервера.

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

Требования будут довольны серьезны:

  • Установка 6-8 жестких дисков
  • Соединение с основным компьютером по гигабитной сети
  • Умеренный уровень шума
  • Комфортные температуры для жестких дисков
  • Возможность функционирования только с подключенными кабелями LAN и питания (без клавиатуры, мыши и монитора)
  • Полное удаленное управление

Реализация

Сразу скажу, что не все пункты удалось выполнить, но в целом задумка удалась. Но обо всем по порядку.

Корпус Asus TA-668 довольно простой и устаревший, но сделан качественно, весь металл завальцован по краям, а многочисленные штамповки дают прочность. Штатно можно установить четыре внутренних устройства 3.5" и одно внешнее.

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


Размещение жестких дисков

Сначала я думал, что один из жестких дисков можно будет установить во внешний отсек для FDD, но это не удалось, диск не влез. Зато очень много места в отсеках 5.25", чем я и воспользуюсь.

На скорую руку я собрал салазки из старого dvd-привода и корзины для жестких дисков от старенького корпуса, которые позволят установить пару HDD в отсек для DVD-приводов.


Спереди крепится вентилятор 92 мм.


Кстати, подобные салазки продаются в магазинах, их необязательно "колхозить" самому.

Итого, я смогу установить как минимум шесть жестких дисков. Еще остается много свободного места внизу-сзади корпуса, туда можно дополнительно установить пару жестких дисков в салазках, ведь дискретной видеокарты не будет, так как мне хватит пока и встроенной GeForce 8200.

Но я "уперся" в провода блока питания. У Corsair VS550 всего четыре SATA разъема, причем два из них расположены на ветках с двумя разъмами molex, что крайне неудобно в моем случае.

Как выход, можно использовать переходники питания molex-SATA, но не всегда у них бывает хороший и надежный контакт. Используя такие переходники, сразу поджимайте контакты питания поплотнее (иголкой) и выбирайте такие, где провода не слишком длиннные.

Идеально было бы сделать "кастомные" провода с четырьмя разъемами питания SATA на один провод, припаявшись к проводам molex, но я не рискнул пускать "под нож" блок питания, не опробовав предварительно в работе файловый сервер.

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


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

Проблема дисков объемом более 2 ТБ и старых материнских плат

Кстати, на материнской плате есть пять SATA разъемов и один eSATA, но у меня есть дискретный PCI-E контроллер на два SATA устройства, что позволит не тянуть провод в eSATA порт на задней панели компьютера.

При сборке я воткнул пару своих дисков на три терабайта в материнскую плату, и она правильно опознала (на первый взгляд) жесткие диски и запустилась. Однако я совсем забыл о проблеме дисков объемом более 2 ТБ и старых материнских плат.

К счастью, мой сторонний контроллер поддерживал диски объемом 3 ТБ и выше, и при подключении больших дисков к нему, "проверка диска" из под Windows исправила все ошибки и вернула файлы на место.

Помните об это проблеме и будьте осторожны! При покупке сторонних контроллеров уточняйте поддержку больших жестких дисков.


Я покупал свой контроллер пару лет назад, сейчас в DNS по Москве доступен вот такой, подороже.

Гигабитная сеть

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

100-мегабитная сеть даст в идеале всего около 12 мегабайт в секунду, что очень мало для видеофайлов на несколько гигабайт. А вот гигабитная сеть даст уже почти 120 Мб/сек, что близко к скорости копирования между дисками.

Реализовать ее очень просто, достаточно соединить порты сетевых плат на компьютерах, они давно гигабитные даже на дешевых материнских платах. А в компьютер, которому нужен будет обычный доступ в интернет, вставляем недорогую сетевую плату. Главное, учитывайте, что разъем PCI уже отмирает, и в новых материнских платах его уже попросту нет. Поэтому лучше берите сетевую плату PCI-E.

Выбор операционной системы для сервера

Тут есть простор для выбора, можно поставить и одну из многочисленных версий Linux, даже просто на флешку, чтобы не занимать SATA порт на материнской плате отдельным накопителем. Можно установить специальную ОС для NAS, например EasyNAS или FreeNAS.

Но я выбрал старый добрый Windows 7 для простоты настройки, и так как этот компьютер будет иногда использоваться как медиапроигрыватель для фильмов и видео и запускать шахматы, Heroes of Might and Magic III и прочие старые игры. Так как выхода в интернет не будет, ОС я поставил без обновлений и антивирусов.


Теперь о том, где же эта Windows 7 будет установлена. Как вариант, можно установить ее на один из HDD с данными, в отдельный раздел, и это будет работоспособно (я проверял).

Но я решил установить ее на отдельный диск, "гулять так гулять", плюс ничто не будет тормозить работу сервера. Я нашел под нее старенький HDD на 250 ГБ. Хватит и самого дешевого SATA диска на 80 ГБ, которые продаются на барахолках за 100-200 рублей.

Проблемы при сборке

Файлсервер я сразу начал настраивать на как можно более тихую работу и поставил вентиляторы на вдув и выдув на обороты менее 1000 в минуту, но столкнулся с сильным перегревом южного моста материнской платы (MCP). Даже в простое температура уходила за 60 градусов.


А на MCP температура сразу упала на 20 градусов даже под стресс тестом.


И самый шумный из вентиляторов я дополнительно "придушил" переменным резистором от Zalman.


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


Температурный режим жестких дисков

Температура всех HDD порадовала, даже тех, что обдуваются одним вентилятором 92 мм сверху. За счет чего такие низкие температуры? Во-первых, при таком расположении жестких дисков — вдоль, между стенок корпуса, без отдельных корзин под каждый диск, создается эффект "аэродинамической трубы" — воздух легко и быстро проходит вдоль всей поверхности диска, не распыляясь об корзину или не уходя вбок.


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

Я использовал эти же жесткие диски в корпусе Zalman, где они стояли поперечно, в корзинах, и при такой же температуре в комнате (26 градусов) их температуры были на 3-6 градусов выше.

Функционирование без клавиатуры, мыши и монитора

Я поставил файловый сервер в нишу "горки", за телевизором 43", где его не видно и практически не слышно, подведя к нему кабель питания и LAN кабель.

В биосе я настроил параметр Restore on ac power loss как Power On. Теперь компьютер включается автоматически при появлении электричества в розетке. Я щелкаю кнопкой сетевого фильтра 220 В, и он включается. О выключении напишу ниже.

Сначала я думал, что придется настроить в BIOS и поведение ПК при отсутствии клавиатуры, но он запускается и без нее, лишь давая один дополнительный сигнал через PC Speaker.
Теперь при включении через минуту в сетевом окружении появляется сервер и его диски.


При копировании скорости немного не дотягивают до 120 Мб/сек, но вполне меня устраивают.


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

Удаленное управление удалось организовать очень просто, средствами Windows, включив в настройках сервера "Разрешение подключения удаленного помощника".

Теперь по щелчку значка сервера в папке "Сеть" появляется пункт "Подключение к удаленному рабочему столу". И при выборе этого пункта мы через 10 секунд оказываемся на рабочем столе сервера, полностью управляя им.




Удаленное выключение

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

C:\Windows\System32\shutdown.exe -s -t 00

Этот ярлык теперь работает как кнопка выключения.


Выводы

Как видите, сделать свой файловый сервер на основе старого компьютера совсем не трудно. У меня ушло около двух дней, да и то большая часть времени ушла на решение "проблемы больших дисков" на старой материнской плате.

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

Конечно, внутри он выглядит очень колхозно, но главное, что железо не греется и не шумит. После полной обкатки файл-сервера можно будет сделать и нормальные, компактные провода питания SATA. Также на очереди оснащение его платой Wi-Fi и превращение в полноценный NAS.

Читайте также: