Деградированный raidz2 забыл vdev во время потери материнской платы. Диск в порядке, но я не могу заменить

Эта строка

    arg= 'read';

Поскольку после =есть пробел, эта строка временно устанавливает переменную argв пустую строку, а затем выполняет команду read, которая считывает данные из стандартного ввода --, поскольку вы не перенаправляете данные в read's stdin, пользователь должен ввести строку текста на терминале. readсохраняет ввод пользователя в переменную $REPLY. После этого переменная argбудет сброшена.

Чтобы присвоить строку 'read'переменной arg, нельзя ставить пробелы вокруг=


Эта часть выглядит подозрительно:while $arg; < /dev/tty; do--почему после $arg стоит точка с запятой?

0
29.05.2021, 02:28
1 ответ

Во-первых, если можете, сделайте резервную копию enc6пула -, например. путемzfs send-добавления его в набор данных в другом пуле.

Если пул в данный момент не используется (, то есть нет открытых файлов ), попробуйте:

zpool export enc6
zpool import -d /dev/disk/by-id/ enc6

В противном случае попробуйте вариант -f, как предложено в сообщении об ошибке, но используйте символическую ссылку /dev/disk/by-idвместо /dev/sde1.

Сначала запустите ls -lF /dev/disk/by-id | grep sde1$, чтобы определить символическую ссылку. Затем:

zpool replace -f enc6 9081516251822742376 /dev/disk/by-id/XXXXXXXXXXXXX
0
28.07.2021, 11:29

Теги

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