У меня есть диск объемом 3 ТБ, который я хочу зашифровать. Как только я создаю файловую систему (mkfs.xfs или ext2-4) в зашифрованном разделе, он выдает «Попытка чтения блока из файловой системы привела к короткому чтению при создании корневого каталога».
Если я не шифрую, эта ошибка не появляется, и я могу использовать диск, как ожидалось.
Я создал таблицу разделов GPT с разделением следующим образом:
# parted /dev/sdb
mklabel gpt
mk primary 0.00TB 3.00TB
quit
Это работало нормально.
Затем я создал крипт-контейнер и расшифровал его так:
# cryptsetup luksFormat /dev/sdb
# cryptsetup luksOpen /dev/sdb1 storage
Это тоже сработало.
Теперь я попытался создать файловую систему:
# mkfs.xfs /dev/mapper/storage
Это привело к следующей ошибке: «Попытка чтения блока из файловой системы привела к короткому чтению при создании корневого каталога».
Я попытался создать LVM-контейнер и создать крипт-контейнер внутри. Это работает, но после копирования некоторых файлов на диск происходит сбой, и каждый раз, когда я пытаюсь получить к нему доступ, сообщается об ошибках ввода / вывода.
Я проверил диск на наличие ошибок в Linux и с помощью инструмента Seagate в Windows. Ошибок не найдено.
Я экспериментировал, создавая криптографические разделы < = 2 ТБ, и сумел создать файловые системы без ошибок. Но когда я изменяю размеры контейнеров, это больше не работает.
Ошибка была вызвана неисправным диском. Я вытер его несколько раз и, наконец, получил ошибку после 105 ГБ, и диск сломался.
Я получил замену, и я смог заставить ее работать с первой попытки. Кроме того, я мог бы стереть это до последнего бита без ошибки. Однако последний бит выдает ошибку «недостаточно места на диске». Надежный. Я не знаю, стоит ли мне волноваться ...
Для всех, у кого похожая проблема: вы можете стереть диск следующим образом:
# dd if=/dev/zero of=/dev/sdb bs=1M
Убедитесь, что / dev / sdb - правильный диск, вы потеряете все свои данные на нем! Он не должен отображать каких-либо ошибок и заканчиваться сводкой.