Как настроить Ubuntu Server в качестве NAS?

Я хочу настроить Ubuntu Server в качестве безголового NAS для своего дома. Я хотел бы иметь там хранилище файлов, а также центральный узел для моих MP3-файлов и изображений.

Какие существуют лучшие пакеты для решения этой проблемы? Может кто-нибудь разместить ссылку на хороший учебник или опубликовать несколько советов?

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

Я только что закончил делать это сам и сделал это с помощью Samba. Я могу подключать общие ресурсы samba со своих компьютеров с Windows и Ubuntu

Вот несколько ссылок, которые помогли мне начать работу:

https://help.ubuntu.com/community/SettingUpSamba

http://ubuntuforums.org/showthread.php?t=280473

Целебные травы:

  1. Установите Ubuntu Server. Действительно помогает, если у вас есть сервер с клавиатурой и монитором для этого бита... Хотя ты мочь создайте сценарий для автоматической установки компакт-диска, если хотите. Больше проблем, чем это того стоит, если вы спросите меня.

  2. Создайте пользователя, настройте ssh (sudo apt-get install openssh-server) и т.д. Поместите свой сервер в его последнее пристанище и войдите по ssh со своего рабочего стола.

  3. Установка и настройка samba (см. раздел настройки вручную)

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

  5. Расслабиться. С тобой покончено.

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

Как только система запущена, я использую обычную старую NFS и Samba для доступа на уровне файлов. (apt-get install nfs-kernel-server samba). У меня также есть PS3, на который мне нравится передавать мультимедиа, поэтому я использую для этого mediatomb (apt-get install mediatomb), а моя жена использует iTunes на своем Mac и нетбуке, поэтому я также устанавливаю mt-daapd (apt-get install mt-daapd), чтобы делиться своей музыкой через протокол daap, который также может использовать rhythmbox.

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

Публикую это, чтобы я мог найти его в будущем.Установите Ubuntu Cloud VM (добавьте дополнительный диск объемом 1 ТБ или больше.)

Примечание: вы должны заменить username с вашим пользователем.

Смонтируйте и отформатируйте диск:

lsblksudo fdisk /dev/sdcnpEnter defaults for rest of options

Создайте файловую систему

sudo mkfs -t ext4 /dev/sdc1

Создайте путь монтирования:

mkdir /home/username/data

Обновить Fstab

sudo echo "/dev/sdc1 /home/username/data ext4 defaults 0 2" >> /etc/fstab

Установите необходимые вам инструменты:

sudo apt install vim screen htop sysstat curl wgetsudo apt install nfs-server samba

Обновление экспорта для NFS (я настраиваю это на основе подсети, вы можете изменить по мере необходимости)

sudo echo "/home/username/data 192.168.1.0/24(rw,no_root_squash)" >> /etc/exportssudo exportfs -a

Заставить Cifs делиться:

sudo vi /etc/samba/smb.confshift+go

Вставьте следующее

[data]comment = Databrowseable = yespath = /home/username/dataguest ok = noread only = nocreate mask = 0700

Сгенерируйте smbpasswd (это позволит хостам Windows подключаться через smb, при условии, что мы передаем их с помощью username счет (улыбка))

sudo smbpasswd -a username

Обновите разрешения, если это необходимо:

sudo chown -R username:root /home/username/data

Загрузите некоторые данные (это хороший дамп ISO)

cd /home/username/datawget -H -r --level=5 --restrict-file-names=windows --convert-links -e robots=off --no-check-certificate https://ftp.nluug.nl/os/Linux/distr/

Я создал NAS на базе Ubuntu с общим доступом к файлам на основе Самба и Nextcloud и работает в Windows, Linux или Mac. Я еще не настроил "настоящий" потоковый сервер (например, Plex), но я использую Nextcloud, который представляет собой что-то вроде клона Google Drive, который позволяет легко просматривать фотографии, музыку и видео через веб-браузер.

Мой сетевой накопитель Ubuntu:

  • ПК Intel NUC
  • Ubuntu Server 20.04 (безголовый)
  • Внешний накопитель RAID1 USB3 QNAP TR-002 (весь этот диск является общим, раздел LUKS зашифрован ext4)
  • Samba (для общего доступа к файлам локальной сети)
  • Nextcloud (необязательно, для доступа к облаку)
  • Брандмауэр UFW (опция)
  • iDrive (опция в качестве облачного резервного копирования всех дисков, включая RAID USB3)

Настройка Samba:

Сначала я в основном следовал этому руководство по настройке Samba пользователи.

Я редактирую конфигурацию samba (sudo nano /etc/samba/smb.conf) и внесите 2 изменения:

  1. Под [global] раздел, который я добавил inherit permissions = yes чтобы убедиться, что разрешения для добавленных файлов указаны правильно.
  2. Настройте мою общую папку, добавив в нижнюю часть следующим образом:
[mynas]  comment = The Big USB drive  path = /media/usb0/  read only = no  browsable = yes  writable = yes  create mask = 0640  directory mask = 0750  valid users = vijay  hide files = /$RECYCLE.BIN/System Volume Information/thumbs.db/

Не забудьте перезапустить Samba после внесения изменений:

sudo service smbd restart

И если на вашем сервере есть брандмауэр, не забудьте разрешить его:

sudo ufw allow samba

Доступ в Linux: smb://192.168.1.2/mynas/

Доступ в проводнике файлов Windows: \\192.168.1.2\mynas\

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

Настройка Nextcloud:

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

Для версии Snap я просто запустил следующее после установки, чтобы разрешить доступ к USB-накопителю и портам:

sudo snap set nextcloud ports.http=81 ports.https=444sudo snap connect nextcloud:removable-media

Затем я настроил обратный прокси-сервер (Haproxy) и SSL для безопасного внешнего доступа через Интернет, но это выходит за рамки этого краткого руководства.

если у вас есть поддержка DLNA, то смотрите: MiniDLNA - Вики-справка сообщества