AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / computer / Perguntas / 1889634
Accepted
paperclip optimizer
paperclip optimizer
Asked: 2025-04-03 02:22:46 +0800 CST2025-04-03 02:22:46 +0800 CST 2025-04-03 02:22:46 +0800 CST

Configurar o MDADM para ignorar a montagem RAID5/6 durante a inicialização SE E SOMENTE SE o array estiver em estado degradado

  • 772

Estou basicamente tentando configurar o mdadm.conf para que o assembly RAID na inicialização seja executado com o equivalente a:

mdadm --assemble --scan --no-degraded

em vez de:

mdadm --assemble --scan

Caso contrário, se eu desconectar temporariamente um ou dois dispositivos RAID6 para liberar as portas SATA, o MDADM monta o array em estado degradado na próxima inicialização, os dispositivos desconectados ficam dessincronizados e eu preciso adicioná-los novamente e reconstruí-los, o que pode levar um ou dois dias.

Não encontrei nada no mdadm.conf(5) ou na documentação do MDADM, mas tenho certeza de que essa é uma situação bastante comum com uma solução simples.

linux
  • 1 1 respostas
  • 63 Views

1 respostas

  • Voted
  1. Best Answer
    storsan
    2025-04-17T02:37:27+08:002025-04-17T02:37:27+08:00

    Se você configurou seus arrays MD em mdadm.conf, pelo que sei, existem algumas maneiras simples de impedir a montagem de dispositivos RAID MD de sua escolha durante a inicialização do sistema operacional. No entanto, as soluções só são aplicáveis ​​se você souber qual array MD específico entrará em estado degradado como resultado da desconexão de discos.

    O primeiro método é usar a <IGNORE>palavra-chave especial. Supondo que você mdadm.conftenha a entrada para o seu array md (cujos discos estarão ausentes na próxima inicialização), assim:

    DEVICE /dev/sdd1 /dev/sde1 
    ARRAY /dev/md0 metadata=1.2 name=ubuntu1:0 UUID=139fb3cb:87bc47af:8750ce36:857589fb
    

    Altere para:

    DEVICE /dev/sdd1 /dev/sde1 
    ARRAY <IGNORE> metadata=1.2 name=ubuntu1:0 UUID=139fb3cb:87bc47af:8750ce36:857589fb
    

    Atualize initramfsdepois disso caso o que mdadm.confestá na initramfsimagem não seja o mesmo que mdadm.confvocê alterou no sistema de arquivos raiz.

    $sudo update-initramfs -u
    

    Após uma reinicialização, você verá que /dev/md0não é montado na saída decat /proc/mdstat

    Documentação relevante da página de manual para mdadm.conf:

    ARRAY: As linhas ARRAY identificam arrays reais. A segunda palavra na linha pode ser o nome do dispositivo onde o array é normalmente montado, como /dev/md1 ou /dev/md/backup. Se o nome não começar com uma barra ('/'), ele será tratado como se estivesse em /dev/md/. Alternativamente, a palavra <ignore> (completa com colchetes angulares) pode ser fornecida, caso em que qualquer array que corresponda ao restante da linha nunca será montado automaticamente. Se nenhum nome de dispositivo for fornecido, o mdadm usará várias heurísticas para determinar um nome apropriado.

    O segundo método é usar a AUTOpalavra-chave . Supondo que você mdadm.conftenha as entradas para alguns arrays md como este:

    DEVICE /dev/sdd1 /dev/sde1 /dev/sdf1 /dev/sdg1
    ARRAY /dev/md0 metadata=1.2 name=ubuntu1:0 UUID=139fb3cb:87bc47af:8750ce36:857589fb
    ARRAY /dev/md/1  metadata=1.2 UUID=12d936b7:0e5390d9:e651a0df:79a34920 name=ubuntu1:1
    

    Se os discos /dev/md1estiverem faltando na próxima reinicialização, altere para:

    AUTO -all
    DEVICE /dev/sdd1 /dev/sde1 /dev/sdf1 /dev/sdg1
    ARRAY /dev/md0 metadata=1.2 name=ubuntu1:0 UUID=139fb3cb:87bc47af:8750ce36:857589fb
    #ARRAY /dev/md/1  metadata=1.2 UUID=12d936b7:0e5390d9:e651a0df:79a34920 name=ubuntu1:1
    

    Atualize a initramfsimagem conforme mencionado anteriormente. Após a reinicialização, você verá que /dev/md1não está montado na saída decat /proc/mdstat

    mdadm.confA documentação relevante da página de manual sobre AUTO:

    AUTO ...Quando o mdadm está montando automaticamente um array, seja via --assemble ou --incremental, e encontra metadados de um determinado tipo, ele verifica esse tipo de metadados em relação aos listados nesta linha. A primeira correspondência vence, onde all corresponde a qualquer coisa. Se for encontrada uma correspondência precedida por um sinal de mais, a montagem automática é permitida. Se a correspondência for precedida por um sinal de menos, a montagem automática é proibida. Se nenhuma correspondência for encontrada, a montagem automática é permitida. ... Isso pode ser usado para desabilitar toda a montagem automática (de modo que apenas arrays explicitamente listados em mdadm.conf ou na linha de comando sejam montados) ou para desabilitar a montagem de certos tipos de metadados que podem ser manipulados por outro software. ...

    Ambos os métodos acima funcionam para mim no Ubuntu 18.04.

    É possível que existam outras maneiras de fazer isso. No entanto, se você precisar impedir automaticamente mdadma montagem de qualquer array md que tenha entrado em status degradado, talvez seja necessário ajustar as mdadm udevregras e talvez também criar scripts.

    Nem é preciso dizer que, se você tiver fstabentradas montando sistemas de arquivos para esses dispositivos md, certifique-se de que as entradas para o array md degradado estejam comentadas ou removidas, caso contrário, seu sistema entrará em modo de manutenção durante a inicialização.

    • 2

relate perguntas

  • Como eu faria minha máquina Linux parecer que está executando o Windows?

  • Existe um equivalente a cd - para cp ou mv?

  • execute o contêiner do docker como root

  • Como ativar o sensor de impressão digital no domínio e no diretório ativo do Linux

  • Como alterar permanentemente Ctrl + C para Ctrl + K no CentOS 7?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Como posso reduzir o consumo do processo `vmmem`?

    • 11 respostas
  • Marko Smith

    Baixar vídeo do Microsoft Stream

    • 4 respostas
  • Marko Smith

    O Google Chrome DevTools falhou ao analisar o SourceMap: chrome-extension

    • 6 respostas
  • Marko Smith

    O visualizador de fotos do Windows não pode ser executado porque não há memória suficiente?

    • 5 respostas
  • Marko Smith

    Como faço para ativar o WindowsXP agora que o suporte acabou?

    • 6 respostas
  • Marko Smith

    Área de trabalho remota congelando intermitentemente

    • 7 respostas
  • Marko Smith

    O que significa ter uma máscara de sub-rede /32?

    • 6 respostas
  • Marko Smith

    Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows?

    • 1 respostas
  • Marko Smith

    O VirtualBox falha ao iniciar com VERR_NEM_VM_CREATE_FAILED

    • 8 respostas
  • Marko Smith

    Os aplicativos não aparecem nas configurações de privacidade da câmera e do microfone no MacBook

    • 5 respostas
  • Martin Hope
    Vickel O Firefox não permite mais colar no WhatsApp web? 2023-08-18 05:04:35 +0800 CST
  • Martin Hope
    Saaru Lindestøkke Por que os arquivos tar.xz são 15x menores ao usar a biblioteca tar do Python em comparação com o tar do macOS? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh Como posso reduzir o consumo do processo `vmmem`? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Pesquisa do Windows 10 não está carregando, mostrando janela em branco 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    andre_ss6 Área de trabalho remota congelando intermitentemente 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney Por que colocar um ponto após o URL remove as informações de login? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca Todos os meus complementos do Firefox foram desativados repentinamente, como posso reativá-los? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK É possível criar um código QR usando texto? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 Altere o nome da ramificação padrão do git init 2019-04-01 06:16:56 +0800 CST

Hot tag

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve