Меню Закрыть

О том, как превратить компьютер в сетевое хранилище

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

В данной статье будет описана методика установки и настройки Ubuntu Server 14.04.5 LTS под мои нужды. Система будет устанавливаться на вполне рядовое железо, из основных моментов сборки можно выделить двухядерный Celeron G1820, материнскую плату ASUS серии H (никакой поддержки RAID), 2 GB Noname DDR3 и четыре винчестера на 500 GB от Hitachi. Не самый лучший выбор железа, однако можно смириться. Это в любом случае лучше чем ничего.

По-существу выбора платформы и системы можно долго и упорно спорить. К примеру, один из моих знакомых наотрез не принимает данное решение. На моем месте он поставил бы в локальную сеть какой-нибудь WD Cloud или еще что. Поясню, да так было бы куда проще. Но это только с точки зрения затраты сил и средств. Готовое устройство не подразумевает в себе возможности апгрейда (может быть и даунгрейда, всякое случается). Учитывая это, можно с уверенностью сказать, что такой вариант мне не подойдет. Тем более что на мое железо будет неплохая дисковая нагрузка, поэтому будет собираться программный RAID. Как воплотить данные пожелания в готовом устройстве, я не знаю.

Для тех кто в теме и спросит, почему не 16.04, поясню. Данное обновление вышло весной этого года, а первое исправление вышло только летом. Хоть я и верю и в «зарубежное», и в «отечественное» community, нужен самый стабильный пакет. Таковым я буду считать проверенный бОльшим временем. Тем более что меня остановит обновить систему позже.

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

Технология RAID

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

  • RAID0 — дисковый массив с чередованием, без отказоустойчивости;
  • RAID1 — зеркальный дисковый массив;
  • RAID5 — дисковый массив с чередованием и отсутствием выделенного диска чётности;
  • RAID6 — дисковый массив с чередованием, использующий две контрольные суммы, вычисляемые двумя независимыми способами;
  • RAID10 — массив RAID0, построенный из массивов RAID1.

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

Создаем на каждом жестком диске раздел на весь объем и настраиваем его как показано на скрине — физический том для RAID. После проведения данной манипуляции со всеми жесткими дисками переходим в пункт меню «Настройка программного RAID». Подтверждаем сохранение изменений.

Далее в открывшемся окне нам необходимо выбрать пункт «Создать MD устройство» после чего выбрать RAID10. Впрочем выбирайте самостоятельно, но мне нужен 10-й.

Выбираем два активных раздела, у меня это нечетные, и два резервных (четные соответственно). После чего жмем пункт меню «Закончить» и все, единственное что осталось, это назначить корень файловой системы. Открываем свойства только что созданного массива. В меню «использовать как» выбираем «Журналируемая файловая система Ext4». После этого станет доступен пункт меню «точка монтирования».

Монтирование ФС и установка ОС

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

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

В конце концов пользователя поприветствует черное окно терминала с начальной информацией о выпуске системы, запущенным процессам, назначенном от DHCP IP-адресе (если таковой есть) и прочим. На данный момент необходим только IP-адрес в локальной сети. В моем случае выдачу адресов в локальной сети осуществляет дешевенький маршрутизатор от TP-Link так как большего и не требуется. Заходим в его настройки, выбираем пункт настроек DHCP сервера и привязываем выданный IP к MAC сетевого адаптера сервера. Данная настройка позволит зарезервировать определенный адрес нашему серверу в локальной сети при раздаче IP после рестарта маршрутизатора, например.

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

Удаленная настройка

Запускаем на основном рабочем ПК программу PUTTY.

Прописываем IP, порт по-умолчанию (желательно в дальнейшем его сменить на что-нибудь менее стандартное), тип подключения SSH (я надеюсь вы выбрали OpenSSH при выборе установки дополнительных пакетов) и нажимаем «Соединиться». После входа в систему откроется тот же самый терминал. Итак настройка.
Начнем с обновления всех пакетов:

> sudo apt-get update
> sudo apt-get upgrade

Для визуализации и облегчения управления системой применим Webmin. На момент написания статьи это версия 1.810, но в репозиторий его не добавили, скачаем по прямой ссылке:

> wget http://prdownloads.sourceforge.net/webadmin/webmin_1.810_all.deb
> sudo apt-get install libnet-ssleay-perl libauthen-pam-perl libio-pty-perl apt-show-versions
> sudo dpkg --install webmin_1.810_all.deb

Теперь становится доступным web-интерфейс по адресу https://(зарезервированный ip):10000.

Ну и теперь собственно для чего все это начиналось.

Настройка сетевых папок

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

> sudo mkdir /mnt
> sudo mkdir /mnt/Backups
> sudo mkdir /mnt/Documents

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

> sudo chmod 777 -R /mnt

Откроем конфигурационный файл настроек Samba:

> sudo nano /etc/samba/smb.conf

В секции «Global Settings» укажем сетевое имя и рабочую группу в которую входят устройства вашей домашней сети:

workgroup = HOME
server string = %h server (Samba, Ubuntu)

В конец секции «Misc» добавим строку включающую поддержку протокола SMB2:

workgroup = HOME
max protocol = SMB2

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

[Backups]
  path = /mnt/Backups
  guest ok = yes
  writeable = yes

[Documents]
  path = /mnt/Documents
  guest ok = yes
  writeable = yes

Жмем Ctrl+X и подтверждаем сохранение. Теперь для того, чтобы наши настройки вступили в силу, неплохо бы было перезагрузить сервис командой:

> sudo service smbd restart

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

1 комментарий

  1. Александр

    В качестве маршрутизатора может выступать как специализированное (аппаратное) устройство, так и обычный компьютер, выполняющий функции маршрутизатора. Существует несколько пакетов программного обеспечения (на основе ядра Linux, на основе операционных систем BSD ) с помощью которого можно превратить ПК в высокопроизводительный и многофункциональный маршрутизатор, например, Quagga, IPFW или простой в применении PF . Основы концепции заложил (1966) Дональд Дэвис, конструируя британскую сеть NPL. Технологии быстро переняли американцы, стремящиеся соорудить слаженную линию обороны. Плата IMP (процессор интерфейса сообщений) выступала узлом сети, занимающимся коммутацией сообщений. Конструкция просуществовала вплоть до развала СССР, упразднена в 1989 году, составив первое поколение шлюзов, ставшее эволюционно маршрутизаторами.

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