Eu tinha acabado de fazer essa pergunta onde não consegui arrancar depois de instalar um novo RAID1 Array. Consegui chegar ao terminal, mas uma vez que resolvi isso, percebi que o meu problema não é tanto um problema de boot fstab quanto um problema de montagem automática do mdadm.
Eu tenho três arrays RAID1 no meu sistema, com /dev/md1
montado em /
e /dev/md0
montado como swap
, e esses atualmente são executados sem problemas. Eu não criei esses arrays. Eu criei uma nova matriz RAID1, /dev/md2
que eu formatei para ext4 usando este guia , e ao fazê-lo eu criei uma nova partição (a única) como md2p1
(o guia também criou uma partição com nome semelhante, embora o fdisk nunca tenha solicitado explicitamente um nome).
Ao criar este novo array, consegui montar manualmente usando
mount -t ext4 /dev/md2p1 /srv/Waveforms
E isso funcionou bem. Consegui acessar o diretório e adicionei cerca de 700 GB de dados a ele. Depois de fazer isso, recebo
cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md2 : active raid1 sdc1[0] sdd1[1]
1953423552 blocks [2/2] [UU]
md1 : active raid1 sda2[0] sdb2[1]
961136576 blocks [2/2] [UU]
md0 : active raid1 sda1[0] sdb1[1]
15624128 blocks [2/2] [UU]
unused devices: <none>
, então o computador reconhece claramente o array. Eu então usei
sudo mdadm --detail --scan >> /etc/mdadm/mdadm.conf
e o arquivo agora contém
# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#
# by default, scan all partitions (/proc/partitions) for MD superblocks.
# alternatively, specify devices to scan, using wildcards if desired.
DEVICE partitions
# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes
# automatically tag new arrays as belonging to the local system
HOMEHOST <system>
# instruct the monitoring daemon where to send mail alerts
MAILADDR root
# definitions of existing MD arrays
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=afa7ccee:df4dfa79:a84dbc05:35401226
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=a0c526cc:6de93504:c8b94301:85474c49
ARRAY /dev/md2 level=raid1 num-devices=2 UUID=1ac720e1:192b2c38:f6e0357b:f3e0074f
# This file was auto-generated on Thu, 10 Mar 2011 00:57:55 -0700
# by mkconf $Id$
ARRAY /dev/md0 level=raid1 num-devices=2 metadata=0.90 UUID=afa7ccee:df4dfa79:a84dbc05:35401226
ARRAY /dev/md1 level=raid1 num-devices=2 metadata=0.90 UUID=a0c526cc:6de93504:c8b94301:85474c49
ARRAY /dev/md2 level=raid1 num-devices=2 metadata=0.90 UUID=1ac720e1:192b2c38:f6e0357b:f3e0074f
Duas coisas a serem observadas aqui. O arquivo original tinha metadata=00.90
, mas eu modifiquei isso para ser metadata=0.90
, pois isso solucionou um problema menor, no qual os metadados não eram reconhecidos (uma pesquisa rápida no google explicaria isso).
O segundo pensamento a notar é que auto é definido como sim, o que significa que o sistema deve montar automaticamente todos os arrays na inicialização. Este deve ser o caso, já que o fato de eu poder inicializar deve significar que / dev / md1 foi montado.
De qualquer forma, agora o problema. Ao reiniciar, minha máquina trava e me diz
fsck from util-linux-ng 2.17.2
/dev/md1: clean, 3680768/60071936 files, 208210802/240284144 blocks
Meu fstab atualmente lê
# /etc/fstab: static file system information.
#
# Use 'blkid -o value -s UUID' to print the universally unique identifier
# for a device; this may be used with UUID= as a more robust way to name
# devices that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc nodev,noexec,nosuid 0 0
# / was on /dev/md1 during installation
UUID=1d3cb392-f522-485b-8516-a7791fc23c4d / ext4 errors=remount-ro 0 1
# swap was on /dev/md0 during installation
UUID=6eb8e6f2-3166-4f77-883c-26268d636b0b none swap sw 0 0
/dev/md2p1 /srv/Waveforms ext4 defaults,noauto 0 0
com
blkid
/dev/sda1: UUID="afa7ccee-df4d-fa79-a84d-bc0535401226" TYPE="linux_raid_member"
/dev/sda2: UUID="a0c526cc-6de9-3504-c8b9-430185474c49" TYPE="linux_raid_member"
/dev/sdb1: UUID="afa7ccee-df4d-fa79-a84d-bc0535401226" TYPE="linux_raid_member"
/dev/sdb2: UUID="a0c526cc-6de9-3504-c8b9-430185474c49" TYPE="linux_raid_member"
/dev/sdc1: UUID="1ac720e1-192b-2c38-f6e0-357bf3e0074f" TYPE="linux_raid_member"
/dev/sdd1: UUID="1ac720e1-192b-2c38-f6e0-357bf3e0074f" TYPE="linux_raid_member"
/dev/md0: UUID="6eb8e6f2-3166-4f77-883c-26268d636b0b" TYPE="swap"
/dev/md1: UUID="1d3cb392-f522-485b-8516-a7791fc23c4d" TYPE="ext4"
/dev/md2p1: UUID="867ee91e-527e-435b-b6bc-2f6d89d2d8c6" TYPE="ext4"
Eu já usei UUID=867ee91e-527e-435b-b6bc-2f6d89d2d8c6
em vez de /dev/md2p1
, mas isso não me deu resultados. Eu também tentei opções como padrões, padrões + noatime, erros = remount-ro com este md2p1, mas nenhum funcionou.
Eu sou capaz de inicializar modificando o fstab para excluir minha nova linha md2p1. Depois de inicializar com essa configuração, recebo
cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sda1[0] sdb1[1]
15624128 blocks [2/2] [UU]
md1 : active raid1 sda2[0] sdb2[1]
961136576 blocks [2/2] [UU]
O sistema não montou o md2. Eu posso então correr
sudo mdadm --assemble --scan
[sudo] password for zach:
mdadm: /dev/md2 has been started with 2 drives.
de onde
cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md2 : active raid1 sdc1[0] sdd1[1]
1953423552 blocks [2/2] [UU]
md0 : active raid1 sda1[0] sdb1[1]
15624128 blocks [2/2] [UU]
md1 : active raid1 sda2[0] sdb2[1]
961136576 blocks [2/2] [UU]
e agora posso montar manualmente como acima. Portanto, o problema parece ser que a matriz RAID1 não está montando na inicialização e, portanto, não é reconhecida pelo fstab e, portanto, não consigo inicializar, exceto em um modo de recuperação.
Eu encontrei this post, mas eu não acho que isso se aplica a mim, já que a resposta parece ser set auto para yes, que então monta automaticamente os arrays na inicialização. Minha configuração já está configurada para fazer isso, então estou perdida.
Existe uma resposta nesse post que parece aplicável, mas não entendo qual foi sua solução. Este é o post de Deplicator, que diz
After a reboot I could never see /dev/md0. Running the mdadm --detail
--scan again (without putting the result in a file) I would see
ARRAY /dev/md/ubuntu:0 metadata=1.2 name=ubuntu:0 UUID=a8a570c6:96f61865:05abe131:5c2e2f7e
and manually mounting /dev/md/ubuntu:0 would work. In the end, that
was what I put in the fstab file too.
O que foi colocado no fstab? O problema parece ser que eu não estou montando o md2 na inicialização e, portanto, vou travar toda vez que o fstab tentar montar a partição md2p1. Na verdade, isso pode estar relacionado ao fato de o md2 ser particionado enquanto os outros não, mas não vejo por que esse deve ser o caso.
Edit: Apenas no caso
uname -a
Linux ccldas2 2.6.32-74-server #142-Ubuntu SMP Tue Apr 28 10:12:19 UTC 2015 x86_64 GNU/Linux