Tento recept se mi osvědčil poté, co jsem měl stejný problém. Hledal jsem po celém netu a snažil se najít odpověď a nakonec jsem narazil na tohle a stále žádná pomoc.
Problém, jak ho vidím, je mnohočetný.
-
mdadm znovu přiřadí soubory zařízení z
/dev/md0
na něco jako/dev/md127
při příštím restartu. Nemůžete tedy použít pouze soubor zařízení v souboru fstab. Nakonec jsem použil UUID z vytvořeného souborového systému. -
Téměř všechny návody k nastavení disku RAID na webu ukazují vytvoření zařízení RAID pomocí souborů ovladače zařízení, jako je tento:
mdadm --create --verbose /dev/md0 --level=0 --raid-devices=4 /dev/sda /dev/sdb /dev/sdc /dev/sdd
Místo toho jsem použil soubory zařízení oddílu, jako je tento:
mdadm --create --verbose /dev/md0 --level=0 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
Druhá forma vyžaduje správné vytvoření oddílů na každém disku pomocí
gdisk
nebofdisk
. Použil jsemgdisk
a přiřadil jej jako typfd00
, což je oddíl raid. -
Hodně se mluví o potřebě aktualizovat
/etc/mdadm/mdadm.conf
. To je špatně. Záměrně jsem ten soubor smazal. Není to potřeba. (Viz níže)
To je opravdu všechno. Celý recept následuje...
Rozdělte každý disk na jeden oddíl typu fd00
, Linux RAID:
[email protected]:~# gdisk /dev/sda
Command (? for help): n
Partition number (1-128, default 1):
First sector (2048-3907029134, default = 2048) or {+-}size{KMGTP}:
Last sector (2048-3907029134, default = 3907029134) or {+-}size{KMGTP}:
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): fd00
Changed type of partition to 'Linux RAID'
Command (? for help): p
Disk /dev/sda: 3907029168 sectors, 1.8 TiB
Model: ST2000DM001-1ER1
Sector size (logical/physical): 512/4096 bytes
Disk identifier (GUID): F81E265F-2D02-864D-AF62-CEA1471CFF39
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 2048, last usable sector is 3907029134
Partitions will be aligned on 2048-sector boundaries
Total free space is 0 sectors (0 bytes)
Number Start (sector) End (sector) Size Code Name
1
2048 3907029134 1.8 TiB FD00 Linux RAID
Command (? for help): w
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/sda.
The operation has completed successfully.
Nyní byste měli vidět jak disková zařízení, tak zařízení oddílů v /dev
[email protected]:~# ls /dev/sd[a-d]*
/dev/sda /dev/sda1 /dev/sdb /dev/sdb1 /dev/sdc /dev/sdc1 /dev/sdd /dev/sdd1
Nyní vytvořte RAID podle svého výběru pomocí mdadm pomocí souborů zařízení oddílu, nikoli diskových zařízení
[email protected]:~# mdadm --create --verbose /dev/md0 --level=0 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
mdadm: chunk size defaults to 512K
mdadm: /dev/sda1 appears to contain an ext2fs file system
size=471724032K mtime=Sun Nov 18 19:42:02 2018
mdadm: /dev/sda1 appears to be part of a raid array:
level=raid0 devices=4 ctime=Thu Nov 22 04:00:11 2018
mdadm: /dev/sdb1 appears to be part of a raid array:
level=raid0 devices=4 ctime=Thu Nov 22 04:00:11 2018
mdadm: /dev/sdc1 appears to be part of a raid array:
level=raid0 devices=4 ctime=Thu Nov 22 04:00:11 2018
mdadm: /dev/sdd1 appears to contain an ext2fs file system
size=2930265540K mtime=Sun Nov 18 23:58:02 2018
mdadm: /dev/sdd1 appears to be part of a raid array:
level=raid0 devices=4 ctime=Thu Nov 22 04:00:11 2018
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
Nyní zkontrolujte /dev/disk
abyste zjistili, zda je k vašemu novému /dev/md0
spojeno nějaké UUID RAID. Žádný by neměl být.
[email protected]:~# ls -l /dev/disk/by-uuid
total 0
lrwxrwxrwx 1 root root 10 Nov 22 04:24 4777-FB10 -> ../../sdf1
lrwxrwxrwx 1 root root 10 Nov 22 04:24 D616BDCE16BDAFBB -> ../../sde1
lrwxrwxrwx 1 root root 10 Nov 22 04:24 e79571b6-eb75-11e8-acb0-e0d55e117fa5 -> ../../sdf2
Vytvořte nový souborový systém a poté byste měli mít UUID s /dev/md0
[email protected]:~# mkfs.ext4 -F /dev/md0
mke2fs 1.44.1 (24-Mar-2018)
Creating filesystem with 2685945088 4k blocks and 335745024 inodes
Filesystem UUID: 7bd945b4-ded9-4ef0-a075-be4c7ea246fb
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000, 214990848, 512000000, 550731776, 644972544, 1934917632,
2560000000
Allocating group tables: done
Writing inode tables: done
Creating journal (262144 blocks): done
Writing superblocks and filesystem accounting information: done
Voila, tady to je.
[email protected]:~# ls -l /dev/disk/by-uuid
total 0
lrwxrwxrwx 1 root root 10 Nov 22 04:24 4777-FB10 -> ../../sdf1
lrwxrwxrwx 1 root root 9 Nov 22 04:43 7bd945b4-ded9-4ef0-a075-be4c7ea246fb -> ../../md0
lrwxrwxrwx 1 root root 10 Nov 22 04:24 D616BDCE16BDAFBB -> ../../sde1
lrwxrwxrwx 1 root root 10 Nov 22 04:24 e79571b6-eb75-11e8-acb0-e0d55e117fa5 -> ../../sdf2
Upravte svůj /etc/fstab a přidejte připojení pro váš nový RAIDUjistěte se, že používáte UUID, nikoli soubor zařízení.
[email protected]:~# cat /etc/fstab
UUID=e79571b6-eb75-11e8-acb0-e0d55e117fa5 / ext4 defaults 0 0
UUID=4777-FB10 /boot/efi vfat defaults 0 0
/swap.img none
swap sw 0 0
UUID=7bd945b4-ded9-4ef0-a075-be4c7ea246fb /md0/tweets ext4 auto 0 0
Tady nehledejte /etc/mdadm/mdadm.conf
Není to potřeba.
[email protected]:~# ls -l /etc/mdadm
total 0
Restartovat
[email protected]:~# reboot
Connection to 192.168.0.131 closed by remote host.
Connection to 192.168.0.131 closed.
RAID je připojen, ale mdadm přejmenoval soubor zařízení z md0
na md127
Dobře, že jsme použili UUID a ne skutečný soubor zařízení.
[email protected]:~# df /md0/tweets
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/md127 10658016696 73660 10120737636 1% /md0/tweets
Podívejte se, md0 je pryč z /dev
[email protected]:~# ls /dev/md*
/dev/md127
/dev/md:
A je to. Nyní si užívám svého 10 terabajtového RAID0, který pracuje rychlostí přes 600 MB/s
[email protected]:~# hdparm -tT /dev/md127
/dev/md127:
Timing cached reads: 26176 MB in 1.99 seconds = 13137.47 MB/sec
Timing buffered disk reads: 1878 MB in 3.00 seconds = 625.13 MB/sec
Vaše /proc/mdstat
označuje, že nebyla načtena žádná z osobností RAID (tj. RAID1, RAID5 atd.), takže není učiněn žádný pokus o aktivaci sady RAID.
Failed to start mdadm.service: Unit mdadm.service is masked.
Tato zpráva označuje mdadm.service
byla zakázána nejsilnějším možným způsobem:nebude učiněn žádný explicitní pokus o spuštění služby, a i když na této službě závisí něco jiného, nebude spuštěna.
Stejně jako v otázce, na kterou odkazuje roaima, zkuste tyto příkazy spustit jako root:
dpkg-reconfigure mdadm # Choose "all" disks to start at boot
update-initramfs -u # Updates the existing initramfs
První překonfiguruje mdadm
a měl by detekovat všechny sady RAID a nechat vás vybrat, které sady RAID se automaticky aktivují při spouštění:obvykle je dobrou odpovědí "vše". To by se také mělo postarat o mdadm.service
být maskovaný, pokud jsem to správně pochopil.
Jakmile to uděláte, druhý příkaz aktualizuje váš initramfs, takže aktualizované konfigurační soubory budou aktualizovány i ve vašem initramfs a skripty, které budou spuštěny v nejranějších fázích bootování, získají informaci, že existuje sada RAID který by měl být aktivován.