Изменение размера раздела на слишком маленькое значение после сокращения файловой системы

Я сжал файловую систему ext4 с помощью resize2fs :

 resize2fs -p /dev/sdn1 3500G 

(FS используется для 2,3 ТБ)

Затем я изменил размер раздела с раздельным и оставил 0,3% -ный запас (~ 10 ГБ) при установке нового конца:

 (parted) resizepart 1 3681027097kb 

В конце концов, это оказалось слишком жестким:

 # e2fsck -f /dev/sdn1 e2fsck 1.42.9 (4-Feb-2014) The filesystem size (according to the superblock) is 917504000 blocks The physical size of the device is 898688000 blocks Either the superblock or the partition table is likely to be corrupt! Abort<y>? yes 

Затем я снова изменил размер раздела, на этот раз с 3% маржи:

 (parted) resizepart 1 3681027097kb 

После этого проверяется проверка файловой системы:

 # e2fsck -f /dev/sdn1 e2fsck 1.42.9 (4-Feb-2014) Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information /dev/sdn1: 278040/114688000 files (12.4% non-contiguous), 608536948/917504000 blocks 

Я partprobe /dev/sdn после двух команд resizepart .

Я не смонтировал файловую систему во всем процессе (и еще не установил ее).

Может ли промежуточный шаг, на котором я изменил размер раздела на слишком маленькое значение, исказил fs?

Успешно ли работает e2fsck , чтобы убедиться, что данные не были повреждены?

    One Solution collect form web for “Изменение размера раздела на слишком маленькое значение после сокращения файловой системы”

    Я изменил размер раздела на слишком маленькое значение, исказив fs?

    Это маловероятно в вашем случае, тем более, что вы были достаточно любезны, чтобы остановить убийцу fs (c), но вы не можете полностью исключить эту возможность.

    Например, коррупция происходит, когда это логический раздел внутри расширенного раздела таблицы разделов msdos. Логические разделы – это связанные списки, поэтому между логическими разделами есть сектор, используемый для указания на следующий раздел в списке. Если вы уменьшаете или изменяете размер такого логического раздела, есть сектор (частично), который перезаписывается где-то посередине диска.

    Также некоторые программы для сексерирования могут обнулить вещи. Это также относится к LVM, на каждом lvcreate он обнуляется, как и первые 4K созданного LV, и, кроме того, нет никакой гарантии, что реверсирование искаженного lvresize даст вам те же самые экстенты, которые использовались ранее. Если не повезло, LV может быть физически обнаружен в другом месте, поэтому вы можете только отменить такие несчастные случаи с помощью vgcfgrestore что-то из /etc/lvm/{backup,archive}/ который был создан до lvresize.

    С SSD есть эта уловка TRIM, которая заставляет всевозможные программы выдавать необоснованные команды TRIM на SSD. LVM делает это, если issue_discards=1 в lvm.conf (всегда устанавливайте его на 0), вот в надежде, что различные программы секционирования никогда не примут это поведение.

    Успешно ли работает e2fsck, чтобы убедиться, что данные не были повреждены?

    Большинство файловых систем не способны обнаруживать повреждение данных вне своих метаданных. Обычно это не проблема, так как вы не должны тянуть трюки, подобные этим. Если у вас есть резервная копия, вы можете сравнить временные метки / контрольные суммы файлов с тем, что у вас есть в ваших резервных копиях.

    Я не смонтировал файловую систему во всем процессе (и еще не установил ее).

    Вы можете установить его только для чтения:

     mount -o loop,ro /dev/sdn1 /mnt/somewhere 

    а затем проверьте файлы.

    loop,ro сообщает mount, чтобы создать устройство цикла только для чтения и установить его. Удивительно, но ro сама по себе не гарантирует readonlyness для некоторых файловых систем, включая ext4 . (И для файловых систем с несколькими устройствами, таких как btrfs , loop,ro тоже не потому, что он влияет только на одно устройство, а не на все).

    Interesting Posts

    Звук Nvidia HDMI не отображается в системе

    Как начать настройку linux?

    Найти первое появление каждого из этих шаблонов с помощью grep

    Remmina не работает с клавиатурой при удаленном подключении

    cclive: какие регулярные выражения разрешены?

    Как закрыть терминал, не убивая его детей (без запуска `screen`)?

    Преобразование секретного ключа SSH2 RSA в .pem с помощью openssl

    Что означают цифры в скобках для вывода iptables-save?

    Лучший способ подключения к существующему пользовательскому контексту через SSH

    Для всех каталогов – переименовать все подкаталоги с префиксом

    Unalias в сценарии резервного копирования Mysql

    Как я могу исправить строки, разбитые в неправильных местах?

    Как мне получить Ctrl + Alt + t для запуска терминала в Linux Mint 13 MATE?

    Печать строк с нечетными номерами, печать строк с четными номерами

    полное шифрование диска (включая своп, возможно, правдоподобную отрицательность)

    Linux и Unix - лучшая ОС в мире.