Рейд Linux исчезает после перезагрузки

Звучит так, как будто вы хотите соединить первые три поля. Затем вы должны изменить первые два разделителя, join на новое 1-е поле, а затем восстановить разделители:

join -t, -j1 -a1 -a2 -o 0 1.2 1.3 2.2 2.3 -e " MISSING" \
<(sed 's/, /\x02/;s/, /\x02/' 1.txt) <(sed 's/, /\x02/;s/, /\x02/' 2.txt) \
| sed 's/\x02/, /g'

return

1, abc, 123, 456, 789, 000, 000
2, lmn, 123, 456, 789, MISSING, MISSING
3, pqr, 123, 456, 789, 000, 000
9, opq, 123, MISSING, MISSING, 000, 000
5
05.11.2019, 06:41
2 ответа

Служба не запускалась, так как была замаскирована. здесь вот как я нашел, как это разоблачить. следующая проблема заключалась в том, что служба рейда mdadm -не запускала рейд. вот так я заставил рейд запускаться при загрузке. Посмотрите на «Пн, 31 июля 2017 г., 7 :49 вечера», чтобы найти соответствующий пост. Это может быть не лучшее решение, но после 10 перезагрузок рейд все равно запускается каждый раз. Я ценю усилия людей, которые пытались ответить на эту тему. Теперь мне просто нужно разобраться с другими предоставляемыми услугами. но это проблема другого дня.

0
27.01.2020, 20:38

Этот рецепт помог мне после той же проблемы. Просмотрел всю сеть, пытаясь найти ответ, и, наконец, наткнулся на это, и до сих пор не помогает.

Проблема, как я вижу, многогранна.

  1. mdadm переназначает файлы устройств с /dev/md0на что-то вроде /dev/md127при следующей перезагрузке. Таким образом, вы не можете просто использовать файл устройства в файле fstab. В итоге я использовал UUID из созданной файловой системы.

  2. Почти во всех руководствах по настройке дисков RAID в Интернете показано создание устройства RAID с использованием файлов драйвера устройств, подобных этому:

    mdadm --create --verbose /dev/md0 --level=0 --raid-devices=4 /dev/sda /dev/sdb /dev/sdc /dev/sdd
    

    Вместо этого я использовал файлы устройств разделов, например:

    mdadm --create --verbose /dev/md0 --level=0 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
    

    Вторая форма требует правильного создания разделов на каждом диске с помощью gdiskили fdisk. Я использовал gdiskи присвоил ему тип fd00, который является разделом рейда.

  3. Много говорят о необходимости обновления /etc/mdadm/mdadm.conf. Это не правильно. Я целенаправленно удалил этот файл. Это не нужно. (См. ниже)

Вот и все. Полный рецепт следует...


Разделите каждый диск одним разделом типа fd00, Linux RAID:

root@teamelchan:~# 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.

Теперь вы должны увидеть как дисковые устройства, так и разделы в /dev

root@teamelchan:~# ls /dev/sd[a-d]*
/dev/sda /dev/sda1 /dev/sdb /dev/sdb1 /dev/sdc /dev/sdc1 /dev/sdd /dev/sdd1

Теперь создайте RAID по вашему выбору с помощью mdadm, используя файлы разделов устройств, а не дисковые устройства

root@teamelchan:~# 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.

Теперь проверьте в /dev/diskналичие UUID, связанного с вашим новым /dev/md0RAID. Их не должно быть.

root@teamelchan:~# 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

Создайте новую файловую систему, после чего у вас должен появиться UUID с/dev/md0

root@teamelchan:~# 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

Вуаля, вот оно.

root@teamelchan:~# 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

Измените файл /etc/fstab и добавьте монтирование для нового RAID. Обязательно используйте UUID, а не файл устройства.

root@teamelchan:~# 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

Вот, смотри, нет /etc/mdadm/mdadm.confЭто не нужно.

root@teamelchan:~# ls -l /etc/mdadm
total 0

Перезагрузка

root@teamelchan:~# reboot
Connection to 192.168.0.131 closed by remote host.
Connection to 192.168.0.131 closed.

RAID смонтирован,но mdadm переименовал файл устройства с md0наmd127

Хорошо, что мы использовали UUID, а не фактический файл устройства.

root@teamelchan:~# df /md0/tweets
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/md127 10658016696 73660 10120737636 1% /md0/tweets

Посмотрите, что md0 ушел из /dev

root@teamelchan:~# ls /dev/md*
/dev/md127

/dev/md:

Вот именно. Теперь я наслаждаюсь своим 10-терабайтным RAID0, который работает со скоростью более 600 МБ/с

.
root@teamelchan:~# 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
7
27.01.2020, 20:38

Теги

Похожие вопросы