Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версияСледующая версияСледующая версия справа и слева |
nas_linux [2017/05/08 21:13] – kuld | nas_linux [2017/05/09 09:15] – [Настройка сервера] kuld |
---|
====== Файловое хранилище на Linux ====== | ====== Файловое хранилище на Linux ====== |
| |
В этой статье мы расскажем как установить и настроить файловый сервер на операционной системе Linux, а точнее будет использована серверная 32-разрядная версия Ubuntu 16.04 LTS. Аналогичным образом настраивается большинство deb-based дистрибутивов. | В этой статье мы расскажем как установить и настроить файловый сервер на операционной системе Linux, а точнее будет использована серверная Ubuntu 16.04 LTS. Аналогичным образом настраивается большинство deb-based дистрибутивов. |
| |
Такой сервер можно использовать для сетевой установки файловой базы 1С:Предприятие - это гораздо надежнее, чем хранить ее на одном из рабочих компьютеров пользователей. Или такой сервер можно приспособить под сетевое хранилище резервных копий. | Такой сервер можно использовать для сетевой установки файловой базы 1С:Предприятие - это гораздо надежнее, чем хранить ее на одном из рабочих компьютеров пользователей. Или такой сервер можно приспособить под сетевое хранилище резервных копий. |
| |
<note warning>Только не используйте один и тот же сервер для установки информационной базы и хранения ее резервных копий.</note> | <note warning>Только не используйте один и тот же сервер для установки информационной базы и хранения ее резервных копий.</note> |
| |
| Почему Linux? Во-первых это бесплатно и при этом совершенно легально. Во-вторых Linux потребляет гораздо меньше аппаратных ресурсов, и даже старая, списанная в утиль техника отлично справится с задачей файлового хранилища. |
| |
| И так, начнем... |
| |
| ===== Выбор оборудования ===== |
| |
| Как я уже написал, оборудование нам подойдет практически любое, но все же кое-какие пожелания у нас есть. Поскольку сервер будет файловый, то и пожелания наши будут касаться дисковой системы. Было бы неплохо найти машину с RAID контроллером на борту. Если мы делаем сервер для размещения рабочей файловой базы, было бы неплохо разместить ее на RAID-5, если хранилище резервных копий, отличным вариантом будет RAID-1. |
| |
| При этом у нас нет особых требований к оперативной памяти, хватит и 1 Гбайта. К процессору тоже нет особых требований, Linux будет работать на всем, что еще живо. |
| |
| Пожалуй, самый оптимальный вариант - приобрести восстановленный сервер "с пробегом". Берите самый дешевый, какой найдете, главное, что бы перед этим он прошел профилактику, его очистили от пыли и прогнали все системные тесты. |
| |
| <note important>За неимением лучшего, можно использовать любой старый компьютер, но помните, что Вы это делаете на свой страх и риск. Самое уязвимое место файлового сервера - дисковая подсистема. Если она у Вас будет состоять из одного единственного старого диска, Вы очень сильно рискуете.</note> |
| |
| ===== Установка операционной системы ===== |
| |
| Сначала определимся с архитектурой сервера. Если Вам известна марка процессора, установленного в сервер, ознакомившись с его спецификацией Вы узнаете, совместим ли он с архитектурой x86-64 (64 бит) или только i386 (32 бит). Косвенный признак - размер оперативной памяти, 32-битная архитектура не может работать с оперативной памятью объемом более 3 Гбайт, иногда в эту архитектуру устанавливали 4 Гбайт памяти, но в системе было видно только 3 Гбайт. |
| |
| Идем на [[https://www.ubuntu.com/download/server|страницу загрузки Ubuntu Server]] и скачиваем дистрибутив, соответствующей архитектуры. Дистрибутивы Ubuntu распространяются в виде образов загрузочных DVD дисков. |
| |
| Для установки Вам потребуется записать загрузочный DVD диск из скачанного образа, или, что как правило удобнее, подготовить загрузочную флешку [[https://rufus.akeo.ie/|специальной утилитой]]. Вставляйте диск или флешку в сервер и загружайтесь с нее. |
| |
| Выбирайте русский язык и в меню ''Установить Ubuntu Server''. |
| |
| Далее Вам предложат указать страну, выбрать раскладку клавиатуры, дать имя серверу, указать имя и пароль суперпользователя (аналог администратора в Ubuntu) и подтвердить временную зону. |
| |
| Некоторое затруднение может вызвать разметка диска. Если сомневаетесь, выбирайте автоматическую разметку и использовать весь диск. Но лучше выделить домашние папки пользователей и изменяемые данные в отдельные логические диски. |
| |
| {{ :samba_disk.png?600 |}} |
| |
| Так будет удобнее обновлять операционную систему, когда выйдет новая LTS версия 18.04. |
| |
| Создавать или нет раздел подкачки зависит от объема оперативной памяти. Если у Вас ее немного, создайте раздел подкачки с таким же объемом. Впрочем, это не обязательно, можно после установки создать файл подкачки. |
| |
| Далее в процессе установки Вам нужно будет выбрать каким образом Вы хотите управлять обновлением системы. Рекомендую устанавливать обновления безопасности автоматически. |
| |
| И ближе к концу установки Вам предложат выбрать готовые наборы серверного программного обеспечения. Нам понадобятся: |
| * Samba file server |
| * Standart system utilites |
| * OpenSSH server |
| |
| Инсталлятор завершит свою работу, перезапустит сервер, Вы увидите протокол загрузки операционной системы, который завершится приглашением ввести логин и пароль пользователя в консоль. |
| |
| Добро пожаловать в Linux! |
| |
| ===== Настройка сервера ===== |
| |
| Вводите логин и пароль суперпользователя, созданного при установке операционной системы. Ввод пароля никак не отображается в командной консоли - это нормально. |
| |
| Первым делом настроем сетевое подключение. |
| |
| Во время установки инсталлятор продиагностировал установленное оборудование и определил имеющиеся в системе адаптеры. По умолчанию Ethernet адаптер настраивается на получение IP адреса через DHCP, нас это не устраивает, т.к. у нас не будет возможности обращаться к серверу по его логическому имени, мы настроим статический IP адрес. |
| |
| Откройте конфигурационный файл сетевых интерфейсов командой |
| |
| <code> |
| $ sudo nano /etc/network/interfaces |
| </code> |
| |
| <note>Здесь использована команда ''sudo'' - специальная конструкция deb-based дистрибутивов Linux для выполнения команд с правами root. Когда Вы делаете это первый раз система попросит Вас ввести пароль и на какое-то время запомнит его.</note> |
| |
| и приведите его к такому виду |
| |
| <code> |
| # The loopback network interface - этот раздел не трогаем, оставляем как есть |
| auto lo |
| iface lo inet loopback |
| |
| # The primary network interface - этот раздел настраивает Ethernet адаптер |
| auto enp0s3 # имя интерфейса оставляем без изменений |
| iface enp0s3 inet static # меняем опцию dhcp на static |
| address 192.168.1.9 # укажите свободный IP адрес в Вашей сети |
| # за пределами диапазона адресов, выдаваемых DHCP сервером, |
| # если таковой используется |
| netmask 255.255.255.0 # маска подсети |
| gateway 192.168.1.1 # шлюз по умолчанию, обычно IP адрес сетевого маршрутизатора |
| </code> |
| |
| Сохраните файл нажав Ctrl-O и закройте редактор Ctrl-X. После редактирования перезапустим сеть: |
| |
| <code> |
| $ sudo /etc/init.d/networking restart |
| </code> |
| |
| и проверим что у нас получилось |
| |
| <code> |
| $ ifconfig |
| </code> |
| |
| В выдаче этой команды внимательно смотрим на значения ''inet addr'' - в нашем примере там должен быть статический адрес 192.168.1.9. |
| |
| <note tip>Дальнейшую настройку удобнее производить с рабочей станции, подключившись по протоколу SSH. От сервера можно отключить монитор, клавиатуру и разместить его там, где он не будет никому мешать.</note> |
| |
| Для дистанционного управления сервером с рабочей станции Windows мы будем использовать [[http://www.putty.org/|PuTTy]]. Скачайте, установите и подключайтесь. Адрес сервера в нашем примере указывается так ''user@192.168.1.9'', где ''user'' - имя суперпользователя, порт по умолчанию ''22''. |
| |
| Мы не будем использовать анонимный доступ к нашему файловому серверу, для того, что бы что-то записать или прочитать с сервера потребуется указать логин и пароль. И нам потребуется создать пользователя на сервере, от имени которого будут производиться все соответствующие файловые операции в хранилище. |
| |
| <code> |
| $ sudo adduser storageuser -p |
| </code> |
| |
| Мы будем использовать этого пользователя только для доступа к Samba, пароль для логина в операционную систему можно не задавать. |
| |
| Настроим файловый сервер Samba. |
| |
| <note tip>Пакет samba уже установлен в систему инсталлятором.</note> |
| |
| <code> |
| $ sudo nano /etc/samba/smb.conf |
| </code> |
| |
| В разделе ''Share Definitions'' закомментируем ненужные нам блоки, например, мы не планируем подключать к этому серверу принтеры, ставим перед всеми строками соответствующих блоков символ комментария ''#'' |
| |
| <code> |
| #[printers] |
| # comment = All Printers |
| # browseable = no |
| # path = /var/spool/samba |
| # printable = yes |
| # guest ok = no |
| # read only = yes |
| # create mask = 0700 |
| # Windows clients look for this share name as a source of downloadable |
| # printer drivers |
| #[print$] |
| # comment = Printer Drivers |
| # path = /var/lib/samba/printers |
| # browseable = yes |
| # read only = yes |
| # guest ok = no |
| </code> |
| |
| В том же разделе ''Share Definitions'' добавляем созданный каталог сетевого хранилища, например, перед закомментированным описанием принтеров добавляем новый блок |
| |
| <code> |
| [storage] |
| comment = Сетевое хранилище |
| browseable = yes |
| path = /var/storage |
| guest ok = no |
| read only = no |
| directory mask = 755 |
| create mask = 644 |
| </code> |