Ubuntu Core с рейдом 1

5

Я пытаюсь настроить свой Nextcloud на Raspberry Pi 3 на Ubuntu Core. Я хочу установить Raid 1, поэтому сбой диска не уничтожит все данные (рядом с еженедельными резервными копиями я сделаю с подключенным другим диском)

Проблема сейчас в том, что Ubuntu Core не поставляется с mdadm для создания RAID. Также, похоже, для mdadm нет оснастки, и, очевидно, вы не можете установить пакет, используя apt-get на Ubuntu Core. Однако я обнаружил, что с привязкой «классического измерения» я могу использовать apt-get, установить mdadm и использовать mdadm для создания рейд 1 на /dev/md0 от моих двух дисков.

Также в неклассическом измерении я могу использовать этот / dev / md0 и монтировать его с помощью systemd.mount, как описано здесь . Пока что так хорошо.

Проблема в том, что после перезагрузки /dev/md0 больше не существует, а systemd не работает     - Subject: Unit dev-md0.device не удалось     - Defined-By: systemd

Я предполагаю, что это связано с тем, что mdadm не существует в этой среде, поэтому рейд ушел после перезагрузки.

Мой вопрос к вам: Есть ли вообще возможность создать Raid на Ubuntu Core с использованием mdadm? И если да, то как мне заставить его работать?

Спасибо за ваше время.

Изменить . Я узнал, что после перезагрузки я могу ввести классическое расширение с sudo classic , а в классическом расширении - рейд с sudo mdadm --assemble --scan . Есть ли способ сделать это, используя какой-то системный скрипт?

    
задан Rino 01.03.2017 в 08:44
источник

1 ответ

5

Мы провели довольно активную дискуссию некоторое время назад, когда мы реализовали Интерфейс udisks2 в snapd. Результат состоял в том, что мы не хотим давать произвольные привязки доступа к блочным устройствам и добавили весь доступ для этих непосредственно в интерфейс udisks2.

udisks2 предлагает опосредованный способ для всех других привязок для работы с блоком устройств и, как правило, также позволяет работать с RAID. Я говорю в целом, потому что это функция, которую мы еще не подтвердили, что она работает с udisks2 snap в настоящее время в магазине.

Если поддержка RAID в udisks2 работает, пользователи должны иметь возможность монтировать RAID в каталоге в /media через вызов API dbus.

Один недостаток заключается в том, что интерфейс udisks2 явно запрещает подключать поскольку он по-прежнему дает привилегированный доступ к системе. Каждое крепление, сделанное через udisks2, будет отображаться ниже /media , и каждая привязка использование интерфейса съемных носителей позволит получить доступ к установленным устройствам там, независимо от того, является ли это системным разделом или нет. Так что даже вилка сторона - очень привилегированная вещь. Тем не менее, привязки могут потребовать snap-декларация на стороне магазина, чтобы получить соединения с udisks2.

Еще одна функция, которую мы поддерживаем с помощью udisks2 snap, - это авто-монтаж (документация для этого скоро будет на Ссылка ). Эта позволяет устройству сказать, что ему нужны съемные устройства, такие как USB-накопитель устройство автоматически устанавливается в /media , как вы знаете из ориентированных на потребителя, таких как Ubuntu Desktop. В зависимости от того, как RAID настроен, это может привести к тому, что RAID будет установлен при загрузке в /media . Требования к автомонтировщику для рассмотрения устройства в настоящее время:

  • Устройство не является системным устройством (это означает, что это не раздел на устройство, из которого мы загружаем систему).
  • Устройство еще не установлено.
  • Устройство - съемное устройство (USB, CD / DVD).

Автоматизация может быть активирована с помощью:

$ snap set udisks2 automount.enable=true

при установке udisks2.

Для очень простого, неограниченного решения вы можете просто установить udisks2 snap (учитывая, что он обнаруживает и хорошо работает с RAID-устройствами) и создайте единицу systemd в /etc/systemd/system/mount-my-raid.service

[Unit]
Description=Mount my RAID

[Service]
Exec=/snap/bin/udisks2.udisksctl mount -b /path/to/block/device

[Install]
WantedBy=multi-user.target

Затем активируйте его с помощью:

$ sudo systemctl enable mount-my-raid.service

, а RAID должен быть автоматически установлен ниже /media на следующем перезагрузка системы.

    
ответ дан morphis 15.03.2017 в 07:18