Установка и настройка MergerFS и SnapRAID (Часть 1)
✎Источник: noted.lol

Если вы читали оригинальную статью о MergerFS и SnapRAID, я уверен, что вы задавались вопросом, как это настроить. Итак, давайте разберемся и создадим пул данных, который мы будем защищать от выхода из строя диска с помощью SnapRaid. А затем настроим SnapRaid для "магического" резервного копирования ваших дисков в фоновом режиме, чтобы вы могли беспокоиться или даже экспериментировать с некоторыми другими классными приложениями, которые были рассмотрены на Noted.
Это двухчастная серия.
Установка и настройка MergerFS и SnapRAID (Часть 1) В этой части мы настраиваем и устанавливаем MergerFS. Оставайтесь с нами, так как часть 2 будет прямо за этой.
NotedMediacowboy
Установка и настройка MergerFS и SnapRAID (Часть 2) Последняя часть — это настройка и конфигурация MergerFS и SnapRAID. Вот более безопасная система без страха потерять данные.
NotedMediacowboy
Установка
Удивительно, но как MergerFS, так и SnapRaid находятся в репозиториях Ubuntu и Debian, что делает установку самым простым этапом всего этого процесса.
При установке чего-либо нового на Ubuntu или Debian выполните следующие команды.
sudo apt update
sudo apt upgrade -y
Как только все будет в порядке, мы можем установить MergerFS. Это простая команда для установки, а затем мы его настроим.
sudo apt install mergerfs -y
Эта команда не занимает много времени, и мы готовы. Но это еще не всё. Теперь нам нужно его настроить.
Настройка
Итак, давайте перейдем к настройке и созданию пула; у меня есть несколько дисков разных размеров, которые мы будем использовать. На этом сервере четыре диска по 4TB и четыре диска по 8TB. Два из 8TB дисков мы на данный момент игнорируем.
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 7.3T 0 disk
sdb 8:16 0 7.3T 0 disk
sdc 8:32 0 7.3T 0 disk
sdd 8:48 0 7.3T 0 disk
sde 8:64 0 3.6T 0 disk
sdf 8:80 0 3.6T 0 disk
sdg 8:96 0 3.6T 0 disk
sdh 8:112 0 232.9G 0 disk
├─sdh1 8:113 0 231.9G 0 part /
├─sdh2 8:114 0 1K 0 part
└─sdh5 8:117 0 976M 0 part [SWAP]
sdi 8:128 0 465.8G 0 disk
sdj 8:144 0 3.6T 0 disk
Сначала нужно создать директории для монтирования этих дисков и папку хранения для использования пула. Я предпочитаю использовать расположение /mnt и создавать директории как disk1, disk2 и т.д.
sudo mkdir /mnt/disk{1..6}
sudo mkdir /mnt/storage
sudo chown (username):(username) /mnt/disk*
sudo chown (username):(username) /mnt/storage
Это создаст шесть директорий и предоставит пользователю к ним доступ. Не забудьте изменить (username) на ваше имя пользователя.
Как мы можем видеть из всех моих дисков, они пустые и без таблиц разделов. Я предпочитаю использовать ext4 для своих данных, но вы можете использовать любую файловую систему, которую вам нравится. Я поделюсь, как я это делаю ниже. Если у вас есть диски с уже имеющимися данными, вам нужно просто изменить ваш файл fstab, как указано ниже.
⚠️
Имейте в виду, что это заменит любую партицию на диске и данные.
sudo gdisk /dev/sd*
Команда: n ↵
Номер раздела: 1 ↵
Первый сектор: ↵
Последний сектор: ↵
Шестнадцатеричный код: ↵
w
y
Создание таблицы разделов
sudo mkfs -t ext4 /dev/sd*1
Создание файловой системы на таблице разделов
Вы захотите сделать это для всех дисков, которые вы планируете использовать для MergerFS. Прежде чем кто-то начнет жаловаться, что ext4 не поддерживает большие диски, это не так. Проблема, с которой мы столкнемся, в том, что ext4 не поддерживает большие файлы. Для этого сервера мы могли бы пользоваться теми же дисками, которые мы планируем использовать для SnapRAID, но я собираюсь собрать свою новую сборку для этого и использовать другую файловую систему для них.
Теперь, когда все наши диски имеют разделы и файловые системы, мы хотим изменить файл fstab, чтобы автоматически монтировать этот диск при загрузке и создать пул. Здесь происходит волшебство.
sudo nano /etc/fstab

Вот как он выглядит после добавления моих дисков. Снова, прежде чем кто-то начнет жаловаться, мне нравится использовать UUID разделов; это позволяет мне переносить эту конфигурацию с системы на систему и никогда не делать перенастройку моих дисков.
Что это за последняя строка, спрашиваете вы? Что ж, это и есть магия. Мы говорим системе объединить все диски в один с помощью MergerFS. Помните, как я говорил, что мне нравится делать disk1 и т.д.? Я могу сказать MergerFS, что любой диск с "disk" в начале — это то, что нужно для создания пула. После того, как вы изменили свой fstab, чтобы он соответствовал моему, не забудьте изменить UUID, чтобы он соответствовал вашему диску; вы можете запустить команды ниже.
sudo mount -a
sudo df -h
Теперь вы должны увидеть, что диски смонтированы в директориях, которые мы создали, и что у нас теперь есть новое монтирование, показывающее объединение с совокупной емкостью всех наших дисков.

Итак, давайте разберем последнюю строку, прежде чем мы перейдем дальше. Что мы говорим пулу, так это следующее.
* direct_io = предоставление системе прямого доступа для записи на этот диск
* minfreespace = сохранять минимум не менее 50г
* category.create=epmfs = существующий путь, с наибольшим свободным местом
Пожалуйста, уделите время, чтобы посетить GitHub MergerFS, чтобы увидеть, какие различные политики существуют и определить, что подходит именно вам. Мне нравится epmfs, потому что он не удерживает мои медиафайлы в одной папке на одном диске, позволяя мне потерять диск, не потеряв всё.
💡
Я хочу заранее извиниться за задержку с этой публикацией. Реальная жизнь одержала верх надо мной, а именно работа помешала моему отпуску, но, когда этого не происходило, я смог построить более мощную систему под свои потребности в хранении. Если вы хотите прочитать о этой сборке, ознакомьтесь с моим блогом,MediaCowboy.Tech.
Заключение
Этот гид оказался несколько длинным, но я хотел убедиться, что предоставил много информации и четкие инструкции. Чтобы продолжить настройку SnapRAID, переходите ко второй части. А если вы хотите пообщаться с другими людьми или, возможно, поделиться своими собственными мыслями, не стесняйтесь присоединяться к нашему сообществу в Discord. Удачи!