LINUX.ORG.RU

Как перенести ФС на диск бо́льшего размера?

 , , ,


3

3

Есть hdd на 1 ТБ. ФС btrfs. Купил ssd на 2 ТБ и хочу перенести файлы на новый диск с расширением ФС на весь диск и сохранением всех атрибутов, прав, дат и т.д.

Ещё использую докер и он понасоздавал btrfs subvolume, так что простое копирование скорее всего всё сломает.

Какие есть способы провернуть это?

★★★★★

Последнее исправление: Pinkbyte (всего исправлений: 2)
Ответ на: комментарий от Harliff

Как ты себе это представляешь технически? Файловой системе сказали, что есть 100 Гб, а в районе 50 вдруг оказывается, что нет. Дальше I/O error, и хорошо, если не сломается, что, хоть и маловероятно, но возможно.

anonymous
()
Ответ на: комментарий от darkenshvein

Ты как бы в моей теме, если что. Так что пришёл сюда ты.

ox55ff ★★★★★
() автор топика

Clonezila Потом поширше сделай.

Bootmen ☆☆☆
()

cp спасет!

anonymous
()
Ответ на: комментарий от Harliff

Ну то есть никак не представляешь. С LVM это невозможно. Рекомендую что-нибудь почитать о блочных устройствах.

anonymous
()
Ответ на: комментарий от ox55ff

Ты как-то гланды через зад вырезал. Если уж решил в онлайне, зачем всё это, когда можно просто btrfs device add, btrfs device remove, всё (или btrfs replace, как я предложил в самом начале)?


А, тут уже написали. Ну нет, данные остаются в single, копирование происходит вполне себе на скорости блочного устройства (ну ок, меньше, потому что нужно метаданные патчить после каждого чанка, но всё равно не медленнее чем send).

И это, в btrfs снапшоты нерекурсивные. Собственно подтома докера ты себе как раз успешно похерил.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 2)
Ответ на: комментарий от intelfx

Btrfs device add не знал. Replace как я понял src уничтожит, что мне не нужно.

Докер выжил.

ox55ff ★★★★★
() автор топика
Ответ на: комментарий от ox55ff

Для этого нужно функциональность lvm перенести внутрь драйвера ФС.

Я на это и намекаю :)

Harliff ★★★★★
()
Ответ на: комментарий от iZEN

зачем его зеркалить и сплитить?

zpool set autoexpand=on pool
zpool replace pool olddev newdev
zpool set autoexpand=off pool
Minona ★★☆
()
6 июня 2022 г.

Делается все так:

  1. максимально сжимаешь файловую систему
btrfs fi resize XXG /
  1. перегружаешься с загрузочной флешки
  2. создаешь на новом диске раздел
dd if=/dev/<source>p<X> of=/dev/<target>p<Y> status=progress conv=fdatasync
  1. монтируешь его, правишь /etc/fstab
  2. делаешь chroot
  3. bootctl install при примонтированном в /boot загрузочном разделе на новом диске
  4. перегружаешься

Через dd можно копировать и на используемой файловой системе… Будут ли ошибки? - Не знаю. Я раньше и живую файловую систему коаировал, а потом ошибки правил, если возникали…

tz4678_2
()

С lvm, конечно, можно и наживую, но сам по себе lvm тормозной, если страйпы не используются, то от него смысла нет тем более поверх btrfs

tz4678_2
()
16 октября 2022 г.
Ответ на: комментарий от intelfx

Ты как-то гланды через зад вырезал.

Сейчас попробовал перенести данные на новый диск через btrfs device add/remove. Действительно, это сильно проще.

Только после переноса потребовалось выполнить mkinitcpio -p linux. Без этого на этапе загрузки ругался, что диск по UUID не найден. Видать в рамдиске что-то захардкожено было.

ox55ff ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.