Как превратить Raspberry Pi в устройство хранения данных с низким энергопотреблением

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

Почему я хочу это сделать?

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

Наш офисный сервер, например, работает круглосуточно и потребляет почти 200 долларов в год. С другой стороны, сетевое запоминающее устройство на основе Raspberry Pi потребляет около 5 долларов в год.

Мы первыми сообщим вам, что у полноценного сервера будет больше места для хранения и возможность выполнять больше работы (например, транскодировать многотерабайтную коллекцию видео за разумный промежуток времени). Однако для большинства людей основная цель иметь постоянно включенный компьютер где-то в доме — это служить файловым сервером и хранилищем резервных копий файлов. Для таких задач Raspberry Pi более чем достаточно силен и сэкономит вам массу энергии при использовании.

Что мне нужно?

Этот урок основан на нашем предыдущем уроке: HTG Guide по началу работы с Raspberry Pi, и мы предположим, что вы уже выполнили его — другими словами, у вас уже есть Raspberry Pi, он включен, подключен к мыши и клавиатуре и вы установили Raspbian на него.

В дополнение к устройству, которое вам понадобится из учебного пособия «Начало работы с Raspberry Pi», вам понадобится только следующее оборудование:

  • Один (как минимум) внешний жесткий диск USB для простого резервного копирования по сети и обслуживания файлов

или же

  • Два (как минимум) внешних жестких диска USB для локальной избыточности данных

Это оно! Если вам нужен просто подключенный к сети диск, вам понадобится только один жесткий диск. Мы настоятельно рекомендуем использовать как минимум два жестких диска, чтобы обеспечить локальную (у Raspberry Pi) избыточность данных. Для целей данного руководства мы используем подходящую пару портативных внешних жестких дисков Seagate Backup Plus емкостью 1 ТБ. Они очень маленькие, не требуют внешнего источника питания и были в продаже, когда мы покупали запчасти.

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

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

Во-первых, мы используем жесткие диски в формате NTFS. Если по какой-либо причине Raspberry Pi NAS выйдет из строя или , мы захотим быстро скопировать информацию через соединение USB 3.0, а не через сеть, поскольку диски в формате NTFS упрощают использование переносных USB-накопителей, которые мы вы используете на сборке NAS и подключаете их прямо к одной из многих машин Windows, которые мы используем каждый день.

Во-вторых, мы используем Samba для наших общих сетевых ресурсов, опять же, из-за удобства объединения Raspberry Pi NAS с нашей преимущественно Windows-сетью.

Подготовка и установка внешних жестких дисков

После того, как вы собрали оборудование, а затем вместе с учебным пособием «Начало работы с Raspberry Pi», чтобы набрать скорость (и запустить Raspian), пришло время приступить к настройке вашего Pi в качестве NAS.

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

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

Мы собираемся делать всю нашу работу в терминале. Таким образом, вы можете работать непосредственно на Raspberry Pi, используя LXTerminal в Raspian, или вы можете использовать SSH в Raspberry Pi, используя такой инструмент, как Putty. В любом случае это хорошо.

Когда вы окажетесь в командной строке, первое, что вам нужно сделать, это добавить поддержку Rasbian для дисков в формате NTFS.Для этого введите следующую команду:

sudo apt-get install ntfs-3g

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

sudo fdisk -l

Как минимум вы должны увидеть два диска, если вы добавили второй диск для зеркалирования данных (как у нас), вы должны увидеть три таких:

Первый диск /dev/mmcb1k0 — это SD-карта внутри Raspberry Pi, в которой находится наша установка Raspbian. Мы собираемся оставить это полностью в покое.

Второй диск /dev/sda — это наш первый внешний жесткий диск емкостью 1 ТБ. Третий диск /dev/sdb — это наш второй внешний жесткий диск объемом 1 ТБ. На этих двух дисках нам интересны следующие разделы: /sda1/ и /sdb1/ соответственно. Запишите имена жестких дисков.

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

sudo mkdir/media/USBHDD1

sudo mkdir/media/USBHDD2

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

sudo mount -t auto/dev/sda1/media/USBHDD1

sudo mount -t auto/dev/sdb1/media/USBHDD2

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

sudo mkdir/media/USBHDD1/shares

sudo mkdir/media/USBHDD2/общие ресурсы

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

sudo apt-get установить samba samba-common-bin

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

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old

Это просто создает резервную копию файла конфигурации с именем файла smb.conf.old и оставляет его в том же каталоге, что и исходный файл конфигурации.

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

sudo nano /etc/samba/smb.conf

Это откроет текстовый редактор nano и позволит нам внести некоторые простые изменения. Если вы впервые используете nano, мы настоятельно рекомендуем ознакомиться с Руководством для начинающих по Nano, текстовому редактору командной строки Linux. Вы должны увидеть что-то вроде следующего в окне терминала:

Nano полностью управляется с клавиатуры, используйте клавиши со стрелками для перемещения курсора в место, которое вы хотите редактировать. Когда вы щелкнете вниз по настройкам конфигурации, вы увидите несколько достойных внимания или изменений.

Первый — это идентификатор рабочей группы, по умолчанию рабочая группа = WORKGROUP. Если вы используете другое имя для своей домашней рабочей группы, перейдите и переместите стрелку, чтобы изменить его сейчас, в противном случае оставьте его по умолчанию.

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

Удалите символ # из строки security = user (выделив его курсором и нажав delete), чтобы включить проверку имени пользователя/пароля для общих ресурсов Samba.

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

[Резервное копирование]
комментарий = папка резервного копирования
путь =/медиа/USBHDD1/общие ресурсы
действительные пользователи = @users
принудительная группа = пользователи
создать маску = 0660
маска каталога = 0771
только чтение = нет

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

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

sudo /etc/init.d/samba restart

На этом этапе нам нужно добавить пользователя, который может получить доступ к общим ресурсам самбы Pi. Мы собираемся создать учетную запись с резервными копиями имен пользователей и паролями4ever. Вы можете сделать свое имя пользователя и пароль по своему усмотрению. Для этого введите следующие команды:

sudo useradd создает резервные копии -m -G пользователей

резервные копии sudo passwd

Вам будет предложено ввести пароль дважды для подтверждения. После подтверждения пароля пришло время добавить «резервные копии» в качестве законного пользователя Samba. Введите следующую команду:

sudo smbpasswd -a резервные копии

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

На соседней машине с Windows мы открыли проводник Windows, щелкнули по сети, подтвердили, что имя хоста RASPBERRYPI входит в рабочую группу WORKGROUPS, и нажали на общую папку Backups:

При появлении запроса введите учетные данные, которые вы создали на предыдущем шаге (если вы следуете по строке за строкой, имя входа — резервные копии, а пароль — backups4ever).

Как только ваши учетные данные будут приняты, вы попадете в пустую папку, поскольку в общем ресурсе еще ничего нет. Чтобы дважды проверить, что все работает гладко, давайте создадим простой файл с компьютера, с которым мы проверяли соединение (в нашем случае, с рабочим столом Windows 7). Создайте текстовый файл так:

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

cd/media/USBHDD1/shares

Ls

hello-is-it-me-you-look-for-for.txt находится в каталоге; наш простой эксперимент с общими каталогами успешен!

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

sudo nano/etc/fstab

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

/dev/sda1/media/USBHDD1 с автоматическим обозначением 0 0

/dev/sda2/media/USBHDD2 auto noatime 0 0

Нажмите CTRL + X для выхода, нажмите Y для сохранения и перезапишите существующий файл.

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

Настройка NAS Raspberry Pi для простого резервирования данных

До сих пор наш Raspberry Pi NAS подключен к сети, передача файлов работает, но здесь отсутствует одна очевидная вещь. Этот вторичный жесткий диск настроен, но находится в режиме ожидания.

В этом разделе руководства мы собираемся использовать два простых, но мощных инструмента Linux, rsync и cron, для настройки нашего NAS Raspberry Pi для выполнения ночного зеркалирования данных из папки/shares/на основном диске в/shares /. папка на дополнительном диске. Это не будет RAID-подобным зеркалированием данных в реальном времени, но ежедневное (или полудневное) резервное копирование данных на дополнительный диск является отличным способом добавить еще один уровень безопасности данных.

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

В командной строке введите следующую команду:

sudo apt-get install rsync

После установки rsync самое время настроить задание cron для автоматизации процесса копирования файлов с USBHDD1 на USBHDD2. В командной строке введите следующую команду:

crontab -e

Команда откроет вашу таблицу расписаний cron в текстовом редакторе nano, которая должна быть вам знакома в этом уроке.Идите вперед, прокрутите вниз до нижней части документа и введите следующую строку:

0 5 * * * rsync -av - удалить/media/USBHDD1/shares/media/USBHDD2/shares/

Эта команда указывает, что каждый день в 5:00 (часть 0 5), каждый день (* * *, подстановочные знаки в году, месяце, точках дня) мы хотим, чтобы rsync сравнивал две директории, копируя все с HDD1 на HDD2 и удаление в каталоге резервных копий всего, что больше не соответствует чему-либо в первичном каталоге, т.е. если у нас есть файл фильма на HDD1, который мы удаляем, мы также хотим, чтобы этот файл был удален из резервной копии при следующей синхронизации.

Важной частью настройки этой команды является то, что вы выбираете время, которое не будет мешать любой другой сетевой активности для общих папок, которые вы, возможно, запланировали. Например, если вы используете NAS Raspberry Pi в качестве места назначения для резервного копирования какого-либо автоматизированного программного обеспечения, которое копирует ваши файлы на NAS в 5 утра каждое утро, то вам нужно либо отрегулировать время резервного копирования в своем программном обеспечении для резервного копирования, либо вам нужно чтобы настроить время для задания cron на Pi, но вы не можете одновременно выполнять удаленный резервный копирование данных на сетевой ресурс и Raspberry Pi, пытающихся синхронизировать эти данные между локальными дисками одновременно.

После ввода записи crontab нажмите CTRL + X, чтобы выйти и сохранить файл. Если вы хотите немедленно запустить rsync, чтобы данные быстрее зеркалировались и сделать начальное задание cron немного более легким в системе, введите команду rsync, которую вы поместили в crontab, в командной строке следующим образом:

rsync -av - удалить/media/USBHDD1/shares/media/USBHDD2/shares/

Это оно! Все, что вам нужно сделать в этот момент, это зарегистрироваться на Raspberry Pi на следующий день или два, чтобы убедиться, что запланированное задание запускается, как ожидалось, и данные из /USBHDD1/shares/ появляется в /USBHDD2/shares/.

С этого момента все, что вы вставляете в NAS Raspberry Pi, будет ежедневно отображаться на обоих жестких дисках.

Прежде чем мы оставим тему полностью, вот некоторые дополнительные статьи TutoryBird, которые вы, возможно, захотите проверить, чтобы добавить больше возможностей в ваш новый NAS с Raspberry Pi:

  • Как сделать резервную копию вашей учетной записи Gmail с помощью вашего компьютера с Ubuntu — хотя инструкции для Ubuntu, вы можете легко изменить их для Rasbian, чтобы превратить ваш NAS NAS в автоматическое устройство резервного копирования электронной почты.
  • Какие файлы вы должны сделать резервную копию на вашем ПК с Windows? — Если вы не уверены, какие файлы вы должны делать резервные копии на NAS, это хорошее место для начала.
  • Как удаленно выполнять резервное копирование данных с помощью CrashPlan. CrashPlan — это бесплатное приложение для резервного копирования, доступное для компьютеров под управлением Windows, Mac и Linux, которое позволяет легко планировать регулярное резервное копирование на NAS.

Есть ли у вас проект Raspberry Pi, который вы хотели бы увидеть? Большие или маленькие, мы любим играть с Пи — озвучивать в комментариях ваши идеи.

Оцените статью
TutoryBird.Ru
Добавить комментарий