Ubuntu Core com Raid 1

6

Estou tentando configurar meu Nextcloud em um Raspberry Pi 3 no Ubuntu Core. Eu quero ter uma configuração do Raid 1, portanto, uma falha de disco não elimina todos os dados (ao lado de backups semanais que eu farei com outro disco conectado)

O problema agora é que o Ubuntu Core não vem com o mdadm para criar o RAID. Também não parece haver um snap disponível para o mdadm, e obviamente você não pode instalar o pacote usando o apt-get no Ubuntu Core. No entanto, descobri que com a dimensão clássica do "snap" eu posso usar o apt-get, instalar o mdadm e usar o mdadm para criar um Raid 1 em /dev/md0 dos meus dois discos.

Também na dimensão não clássica, posso usar / dev / md0 e montá-lo usando systemd.mount, conforme descrito aqui . Até agora tudo bem.

O problema é que, após a reinicialização, o /dev/md0 não existe mais e o systemd falha     - Assunto: Unidade dev-md0.device falhou     - Definido por: systemd

Acho que isso acontece porque o mdadm não existe neste ambiente e, portanto, o ataque desapareceu após a reinicialização.

Minha pergunta para você é: Existe alguma possibilidade de criar um Raid no Ubuntu Core usando o mdadm? E se sim, como faço para que ele funcione?

Obrigado pelo seu tempo.

Editar : Descobri que, após a reinicialização, posso inserir a extensão clássica com sudo classic e, na extensão clássica, iniciar a invasão com sudo mdadm --assemble --scan . Existe talvez uma maneira de fazer isso usando um script systemd de algum tipo?

    
por Rino 01.03.2017 / 08:44

1 resposta

5

Tivemos uma discussão bastante ativa há algum tempo, quando implementamos o interface do udisks2 no snapd. O resultado foi que não queremos dar arbitrária se encaixa acesso a dispositivos de bloco e acrescentou todo o acesso para aqueles diretamente na interface do udisks2.

udisks2 oferece uma maneira mediada para todos os outros snaps lidarem com o bloco dispositivos e geralmente também permite trabalhar com RAIDs. Eu digo geralmente porque este é um recurso que ainda não verificamos que está trabalhando com o snap do udisks2 atualmente na loja.

Se o suporte a RAIDs no udisks2 funcionar, os usuários devem poder montar um RAID em um diretório em /media através de uma chamada da API do dbus.

Uma desvantagem é que a interface udisks2 nega explicitamente o plug conexões como ainda dá tipo de acesso privilegiado ao sistema. Toda montagem feita via udisks2 aparecerá abaixo de /media e a cada clique usando a interface de mídia removível terá acesso a dispositivos montados lá, independentemente se é a partição do sistema ou não. Então, até o plugue lado é uma coisa muito privilegiada. Dito isto, snaps podem pedir um declaração de snap no lado da loja para obter conexões para o udisks2.

Outro recurso que suportamos com o snap do udisks2 é a montagem automática (a documentação para isso será em breve no link ). este permite que um dispositivo diga que deseja dispositivos removíveis, como armazenamento USB dispositivo para ser montado automaticamente em /media como você sabe de dispositivos orientados para o consumidor, como o Ubuntu Desktop. Dependendo de como o RAID é configurado, isso pode ser capaz de obter o RAID montado na inicialização em /media . Requisitos para o automontador considerar um dispositivo atualmente:

  • O dispositivo não é um dispositivo do sistema (o que significa que não é uma partição no dispositivo que estamos inicializando o sistema).
  • O dispositivo ainda não está montado.
  • O dispositivo é um dispositivo removível (USB, CD / DVD).

A montagem automática pode ser ativada via:

$ snap set udisks2 automount.enable=true

quando o snap do udisks2 está instalado.

Para uma solução simples e simples, você pode simplesmente instalar o udisks2 snap (dado que detecta e funciona bem com dispositivos RAID) e crie uma unidade systemd em /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

Em seguida, ative-o via:

$ sudo systemctl enable mount-my-raid.service

e o RAID deve ser montado automaticamente abaixo de /media no próximo reinicialização do sistema.

    
por morphis 15.03.2017 / 07:18