3

Я пытался изменить размер моего раздела с помощью parted и resize2fs.

Я попробовал следующее:

#parted
Partition Table: msdos
Number  Start   End     Size    Type     File system     Flags
 1      2097kB  21.0GB  21.0GB  primary  ext4            boot
 2      21.0GB  500GB   479GB   primary  ext4
 3      500GB   500GB   536MB   primary  linux-swap(v1)

(parted) rm 2
(parted) mkpart
Partition type?  primary/extended? primary
File system type?  [ext2]? ext4
Start? 41GB
End? 500GB
(parted) q
Information: You may need to update /etc/fstab.

#resize2fs /dev/sda2
resize2fs 1.42.5 (29-Jul-2012)
resize2fs: Bad magic number in super-block while trying to open /dev/sda2
Couldn't find valid filesystem superblock.

К сожалению, я не могу понять, почему это не работает. Это был раздел ext4. Я хотел бы изменить размер раздела без потери данных.

fdisk list before operation:
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        4096    40962047    20478976   83  Linux
/dev/sda2        40962048   975718399   467378176   83  Linux
/dev/sda3       975718400   976764927      523264   82  Linux swap / Solaris

Now fdisk shows:
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        4096    40962047    20478976   83  Linux
/dev/sda2        80078848   975718399   447819776   83  Linux
/dev/sda3       975718400   976764927      523264   82  Linux swap / Solaris

1 ответ1

4

Во-первых, я хотел бы очень четко обозначить важное различие:

  • Разделы - это просто указатели на то, где начинаются и заканчиваются файловые системы. На современных дисках эти начальные и конечные точки выражаются как значения секторов.
  • Файловые системы - это сложные структуры данных, которые находятся внутри разделов (или других контейнеров). Как правило, файловые системы определяются относительно начальной точки содержащего раздела.

Ваш /dev/sda2 раньше начинался в секторе 40,962,048. Вы изменили его так, что теперь он начинается в секторе 80,078,848. Таким образом, критические ранние части файловой системы теперь начинаются вне раздела. Аналогия может быть в том случае, если вы каким-то образом переместили переднюю обложку справочника, сидя на столе, на сантиметр или около того, не сдвинув ни одной страницы книги. Открыв книгу, вы обнаружите, что оглавление отсутствует вместе с первой или второй главой. Эти страницы теперь будут свободно перемещаться, извлеченные из книги. Поэтому вы не сможете найти в книге ничего, кроме как прочитав все это, и даже в этом случае ее части будут отсутствовать.

Вообще говоря, любая операция разбиения, которая включает перемещение или изменение размера начала раздела, лучше всего выполняется с использованием GParted, который знает правильный порядок операций для перемещения и изменения размера структур данных раздела и файловой системы, чтобы все работало правильно. Даже GParted не лишен своих рисков при изменении размера разделов, особенно, особенно когда речь идет о начальной точке, так как это требует перемещения значительных объемов данных, так что ошибка, сбой питания, сбой оборудования или другие проблемы могут привести к поломке весь раздел. Если вы должны сделать это без GParted, вы можете, но вы должны полностью понять различие между разделом и файловой системой, которое я описал, и понять последствия этого различия для порядка, в котором вы выполняете различные операции (изменяйте размер файловой системы). , переместить файловую систему, изменить границы раздела).

В вашем конкретном случае я рекомендую следующее:

  1. Удалите новый /dev/sda2 .
  2. Пересоздайте свой /dev/sda2 используя его исходные значения начального и конечного секторов. Убедитесь, что они точно такие же, как были раньше.
  3. Убедитесь, что воссозданный /dev/sda2 доступен.
  4. Сделайте резервную копию ваших важных данных из /dev/sda2 .
  5. Пересмотрите, действительно ли вам нужно переместить начало раздела. Я не знаю, какова ваша конечная цель, поэтому я не могу сделать это для вас. Возможно, перемещение конечной точки также будет работать (и это будет безопаснее); или, может быть, лучше добавить другой диск; или, может быть, вам вообще не нужно переделывать.
  6. Если вам необходимо перераспределить диск, используйте GParted для выполнения этой работы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .