Поскольку у вас есть аппаратное ограничение с двумя отдельными технологиями USB:
Настройка RAID -1 с использованиемmdadm
(m
ulti d
устройства adm
инициатора)будет иметь некоторые недостатки -.
Добавьте разветвитель порта USB 3.x / концентратор USB 3.x и подключите оба жестких диска к концентратору, а концентратор — к порту USB 3.x на Pi, что снизит их индивидуальную максимальную теоретическую скорость передачи до 2560 Мбит/с (5120/2 )вместо подключения одного к порту USB2, а другого к порту USB3, так как это снизит максимальную теоретическую скорость передачиобоихвсего до 480 Мбит/с.¹
Ладно, значит, у тебя нет времени,ни денег, ни физического места, чтобы поместить в это решение USB-концентратор, Pi и 2 жестких диска:
Поскольку в RAID (любой версии )нет такого понятия, как «Первичный» и «Вторичный», а только JBOD объединены в один, вы можете использовать параметр write-mostly
для mdadm
для обойти некоторых несоответствий.
Эта опция определяет один из жестких дисков как «медленный», и все операции чтения будут выполняться с быстрого диска , но все записи будут по-прежнему ожидаться медленным диском . (так что только половина преимуществ диска USB 3.0)
Все следующие команды необходимо выполнять как root
или с sudo
.
Предположим, что первый жесткий диск отображается как /dev/sdc
, а второй — как /dev/sdd
. Выполните следующую команду для создания программного RAID-массива с именем md0
с уровнем RAID 1 с использованием 2 жестких дисков:
mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdc /dev/sdd
Только если вы используете опцию #2 , вы должны добавить--write-mostly
перед медленным диском (sdd
, взятым в качестве примера ), и использовать следующую команду вместо приведенной выше (наведите курсор на с помощью мыши, чтобы отобразить его, чтобы не запутаться, что использовать):
mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdc --write-mostly /dev/sdd
Теперь нам нужно создать файловую систему на только что созданном /dev/md0
программном RAID:
mkfs.ext4 -F /dev/md0
Теперь мы собираемся смонтировать это пространство в /mnt
(, замените это, если вам нужно смонтировать это где-то еще)
mkdir --parents /mnt/md0
И отредактируйте свой fstab
, чтобы включить это крепление при каждой загрузке (добавьте вторую строку в конце вашегоfstab
):
nano /etc/fstab
/dev/md0 /mnt/md0 ext4 defaults 0 2
Ctrl + XYВведите для сохранения и выхода.
Теперь перезагрузите компьютер, чтобы сделать его активным, или введите следующую команду без перезагрузки:
mount /dev/md0 /mnt/md0
Примечание 1:Самое слабое звено в цепочке определяет общую скорость, поскольку 2 жестких диска становятся одним.:-(
Примечание 2:Спасибо fra -san и Stephen Kitt за указание мне правильного направления для второго варианта!
Примечание 3:Для получения дополнительной информации о mdadm
введите man mdadm
на самом pi и прочитайте (все, даже то, что, по вашему мнению, вам никогда не понадобится, например -сборка RAID после провал...);-)
Примечание 4 :RAID не заменяет резервное копирование! ; -П
Опция -w
действительно указывает grep
искать только те строки, которые соответствуют fruit
как «слову», что означает, что они должны либо начинаться в начале строки, либо предшествовать «не -». ] слово» и либо заканчиваться в конце строки, либо сопровождаться символом «не -слово».
Тем не менее, символ «слово» в соответствии со страницей руководства -документа grep
— это:
Word-constituent characters are letters, digits, and the underscore.
Это означает, что -
является символом «не -слово», а fruit-
будет соответствовать «слову -поиск» для fruit
, так как алгоритм сопоставления остановится при достижении -
].
Теперь, похоже, вы хотите выбрать только те строки, в которых содержимое между первыми двумя/
точно равно fruit
, а не , содержащее шаблонfruit
. В этих случаях вы должны сделать соответствие более явным :
grep
вы можете сказать :grep "^/fruit/" file.txt
Это привяжет шаблон к началу строки и примет только те строки, где нет -
после fruit
. awk
с /
, установленным в качестве разделителя полей -:awk -F/ '!$1&&$2=="fruit"' file.txt
Это будет принимать только строки, которые имеют пустое первое поле (, т.е. начинаются справа с/
)и чье второе поле точно fruit
.