В итоге мне удалось восстановить этот массив, выполнив следующую команду:
mdadm --create /dev/md126 --level=6 --raid-devices=14 --name=gigantor:128 /dev/sdf /dev/sdg /dev/sdh /dev/sdi /dev/sdj /dev/sdk /dev/sdo /dev/sdm missing missing /dev/sdc /dev/sdb /dev/sdd /dev/sde --assume-clean
Затем я добавил два устройства обратно.
mdadm --add /dev/md126 /dev/sdn
mdadm --add /dev/md126 /dev/sdl
После этого, поскольку информация о LVM также была повреждена, мне пришлось восстановить ее:
pvcreate --uuid "kvEA4X-vobg-2Ipz-ITF1-ZhtW-Ewej-6liKVx" --restorefile /etc/lvm/backup/vg_data /dev/md126
vgcfgrestore vg_data
lvchange -ay /dev/vg_data/lvm0
Затем я попытался xfs_check LVM, и он сказал, что мне нужно запустить ремонт и уничтожить журналы:
xfs_repair -L /dev/mapper/vg_data-lvm0
После этого я смог подключить LVM, и мои данные остались нетронутыми.
Мой LVM восстанавливается.
Personalities : [raid6] [raid5] [raid4]
md126 : active raid6 sdm[14] sdl[7] sdk[15] sdn[6] sdj[5] sdi[4] sdg[2] sde[0] sdf[1] sdh[3] sdc[12] sda[11] sdd[13] sdb[10]
46882646016 blocks super 1.2 level 6, 512k chunk, algorithm 2 [14/12] [UUUUUUUU__UUUU]
[==========>..........] recovery = 53.6% (2097061864/3906887168) finish=2448.0min speed=12321K/sec
bitmap: 0/30 pages [0KB], 65536KB chunk
md127 : active raid6 sdac[15] sdaa[13] sdz[2] sdab[0] sdq[9] sdy[14] sdx[4] sdr[8] sdp[10] sdo[16] sdv[6] sdu[7] sdw[5] sds[12] sdt[11]
50789533184 blocks super 1.2 level 6, 512k chunk, algorithm 2 [15/15] [UUUUUUUUUUUUUUU]
unused devices: <none>
Какая боль....
Свяжите функциональную клавишу F8 , чтобы умножить на два последнее слово ( вверх на предыдущий пробел) (код клавиши F8 найден с помощью Ctrl-V F8
):
$ bind '"\e[19~": "\C-w\C-y\C-y"'
Это можно сделать постоянным, отправив тот же текст на ~ / .inputrc
$ echo '"\e[19~": "\C-w\C-y\C-y"' >> ~/.inputrc
, затем введите :
echo 0 F8 F8 F8 F8
, чтобы получить 2 ^ 4 раза больше нуля. (еще 5 нажатий).
или введите:
echo book F8 F8 F8
, чтобы получить 2 ^ 3 книжных слова.
Умножение на 4:
$ bind '"\e[19~": "\C-w\C-y\C-y\C-w\C-y\C-y"'
echo 0 F8 F8
3 нажатие клавиши.
Умножить на 8 (то же число, что и у функциональной клавиши)
$ bind '"\e[19~": "\C-w\C-y\C-y\C-w\C-y\C-y\C-w\C-y\C-y"'
echo 00 F8
Еще 3 нажатия клавиши.
Чит умножить на 16.
$ bind '"\e[19~": "\C-w\C-y\C-y\C-w\C-y\C-y\C-w\C-y\C-y\C-w\C-y\C-y"'
echo 0 F8
Только 2 нажатия клавиши. (и все еще полезная простая функция)
^^^^^^^^^^^^^^^^ (база 36? Ха!) :-P
$ bind '"\e[19~": "0000000000000000"'
echo F8
Всего 1 (да: одно ) нажатие клавиши.
Отправьте это на ~ / .inputrc
:
echo '"\C-u": universal-argument >> ~/.inputrc
Перечитайте ~ /.inputrc
файл:
ctrl+Xctrl+R
делайте это как обычно в emacs (как вы хотели):
foo --bar = baz ctrl + U 16 ctrl + U 0
7 ключей (после «настройки»).
Используйте значение по умолчанию «умножить на 4» для «универсального аргумента» и заканчивать на
ctrl+V 0
foo --bar = baz ctrl + U ctrl + U ctrl + V 0
Всего 5 клавиш.
foo --bar=baz Alt+16Ctrl+V0
Это 6 ключей для получения 16 нулей.
Если в вашем bash есть bash C-u убивает текущую набираемую строку
.
Это потому, что "\ C-u":
привязан к unix-line-discard
.
Но это также может помочь:
Когда стирается то, что было перед курсором, оно также помещается в "список уничтожения".
Итак ctrl + u
стирает, а ctrl + y
возвращает то, что было стерто.
На чистой строке: введите 00
, удалите ее и дважды потяните назад, чтобы получить 0000
.
Повторите, чтобы получить 00000000
(8 нулей), наконец, введите команду и дважды вернитесь назад.
Первый набор (7 клавиш удерживают ctrl нажатым):
00 ctrl+Uctrl+Yctrl+Y ctrl+U
Второй набор (5 клавиш)
ctrl+Uctrl+Yctrl+Y ctrl+U
Это приведет к появлению восьми нулей в кольце стирания, затем введите то, что вы хотите:
foo --bar=baz ctrl-Y ctrl-Y
, чтобы получить:
foo --bar=baz 0000000000000000
После того, как вы поняли, что вам нужно, вы можете также ввести то, что вам нужно, перейти к началу строки ( ctrl-Y ), сделать, как указано выше (до восьми нули) идти до конца ( ctrl-E ) и дважды дергать.
foo --bar = baz ctrl-A 00 ctrl-U ctrl-Y ctrl-Y ctrl-U ctrl-Y ctrl-Y ctrl-U ctrl-E ctrl-Y ctrl-Y
Это 15 клавиш (помимо самой команды).
Не коротко, я знаю, но это работает только с тем, что было доступно.
Это немного короче:
0000 ctrl-U ctrl-Y ctrl-Y ctrl-Y ctrl-Y ctrl-A foo --bar = baz
Это 11 ключей