LINUX.ORG.RU

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

 , , ,


3

3

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

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

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

★★★★★

Последнее исправление: Pinkbyte (всего исправлений: 2)

Я так понимаю, это нужно сделать в онлайне? Или какие ограничения? Просто перенос раздела partclone-ом с последующим расширением не канает?

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

У меня терабайтный винт заполнен на 95%. Много копировать. К тому же у меня ноут. Сразу два винта вставить не смогу. Придётся новый подключать по usb. Это ещё снизит скорость.

Лучше уж offline.

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

У ZFS это решается просто: новый диск большего объёма включается в пул как часть зеркала (сам пул зеркалится), а потом даётся команда zpool split и разделяется на два независимых пула с идентичным содержимым, но с дополнительным пространством на новом диске.

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

А как у зфс решается с включением в ядро линукс?

А вам шашечки, или ехать?

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

На домашнем ПК: три пула ZFS (один из них RAID-Z), запущен chromium-92.0.4515.159, в котором открыто 4 вкладки (на одной вкладке проигрывается видео из Youtube), Xfce4 4.16 DE.

Системный монитор из Mate показывает: Память 1.7 ГиБ (10,5%) из 15,9 ГиБ, Подкачка 0 байт (0,0%) из 18,0 ГиБ. И где ваши «128 ГБ ОЗУ»?

iZEN ★★★★★
()

Успешно перенёс ФС на новый диск hdd -> ssd.

Сначала хотел в offline режиме делать с загрузкой в livecd. Но потом подумал: у меня же хипстерская ФС с шашечками, зачем мне делать как старпёры? Надо использовать фишки ФС, чтобы раскрыть потанцевал.

Напишу инструкцию по online переносу ФС, может кому пригодится.

Примонтировал корневой subvolume hdd в /mnt, а на ssd создал один раздел btrfs и примонтировал в /ssd.

# Сделал readonly снапшот subvolume, который копирую
btrfs subvolume snapshot -r /mnt/@home /mnt/@home-ro-snap

# Перенёс снапшот на новый диск
btrfs send /mnt/@home-ro-snap | btrfs receive /ssd

# Переименовал, чтобы назывался как раньше
mv /ssd/@home-ro-snap /ssd/@home

# Снял read only флаг
btrfs property set -ts /ssd/@home ro false

# Вбил в fstab новый UUID раздела и перезагрузился
...

Так как я переносил снапшот, то мог как обычно пользоваться компом (ютубчик и т.п.) и не бояться, что из-за изменений файлов будет не консистентное состояние.

btrfs сила. Эксплуатанты ext4 жалобно хлюпают носом в углу.

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

btrfs сила. Эксплуатанты ext4 жалобно хлюпают носом в углу.

Узок круг этих сказочников. Страшно далеки они от народа…

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

Давай анон по существу. Чё там на ext4, 4 часа сидёть перед чооорной консолью, чтобы перенести ФС в offline режиме?

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

LVM? Я ФС сравниваю. Ты ещё raid приплети, там тоже данные можно размножить.

И твой sdb1 может быть больше sda1? Я про этот момент отдельно говорил в шапке.

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

Фейковая тема.

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

LVM? Я ФС сравниваю. Ты ещё raid приплети, там тоже данные можно размножить.

Ты сравниваешь неюниксвейный комбайн. И да, lvm при перемещении делает как бы raid1 (mirror) - промеренные технологии

И твой sdb1 может быть больше sda1?

Да. Если очень надо и на диске несколько томов, то можно перемещать только конкретный том pvmove -n <lv-name> ...

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

Ты сравниваешь неюниксвейный комбайн.

А ты предложил костыль. ФС ничего не знает про LVM.

Да. Если очень надо и на диске несколько томов

Это расширит только виртуальное блочное устройство. Мне потом в врукопашку ещё и ФС расширять. Двойная работа.

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

А ты предложил костыль.

Как будто копирование неизменяемого снимка - это не костыль.

ФС ничего не знает про LVM.

А зачем ФС знать о LVM? ФС здесь выступает как объект, который перемещают.

Двойная работа.

Основная задача прозрачно переместить фс. А изменить состояние фс - это отдельная задача, кстати, которую тоже можно сделать не отключая фс.

Тем временем ты перемещаешь снимок. Который в общем-то надо синхронизировать с актуальным состоянием, и нужна перезагрузка для переключения и скорее всего нужно синхронизировать с актуальным состоянием перед переключением. Костыль да еще кривой до безобразия.

Неужели в бтрфс нет прозрачного перемещения данных между физическими носителями? Тогда это бесполезный комбайн.

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

Как будто копирование неизменяемого снимка - это не костыль.

Нет. Снимок делается моментально. Не вижу ничего плохого. Утилита btrfs send требует именно ro снимка. Ну и ладно.

А зачем ФС знать о LVM?

Чтобы не нужно было потом менять размер ФС.

Который в общем-то надо синхронизировать с актуальным состоянием

Не нужно. Я переезжал раз и навсегда. В то время, когда копировалась ФС, я смотрел ютуб. Максимум, что я потерял - историю браузера за это время. Это несущественно.

и нужна перезагрузка

Конечно. Мне нужно было разобрать ноут и поменять диски.

Неужели в бтрфс нет прозрачного перемещения данных между физическими носителями?

В btrfs есть raid, но я их не использую за ненадобностью на локалхосте. LVM не даёт преимуществ, но требует больше секса.

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

Я не понимаю, что тебя смутило в требовании ro снимков? Отличие от rw только в ключе -r при создании. Флаг ro снимается так же быстро.

Даже если бы не было этого требования, то мне rw всё равно не нужен был. Я копировал /home раздел. Он и так уже подмонтирован. Зачем мне ещё и снимок монтировать и вносить туда изменения? Похоже ты просто прицепился к этой мелочи, чтобы не признавать, что твой LVM старпёрский инструмент.

ox55ff ★★★★★
() автор топика
Ответ на: комментарий от ox55ff
  • ro
  • снимок
  • раздел
  • монтировать

Как много ненужных сущностей наплодил ради копирования раздела.

Ну и ладно.

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

У меня диски были одновременно подключены. Зачем мне tar архив в качестве посредника. Ещё у меня были подтома, включая те, которые автоматом генерирует докер. Нужно было, чтобы всё это не сломалось.

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

неюниксвейный комбайн

RedHat сделала Stratis — вроде и юникс-вэй, но в то же время говно. А теперь они снова осваивают Btrfs. Эта философия никогда не была про эффективность, не надо её натягивать на всё подряд.

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

банальный tar

Язабан

ЗЫ вопрос хороший

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

Подтома btrfs совместно используют свободное пространство раздела. В случае LVM нужно будет самим следить и вручную менять размеры.

А если нужно свободное пространство передать от одного раздела к другому на LVM? Уменьшить размер ФС, уменьшить размер раздела, увеличить размер другого раздела, увеличить размер ФС на новом разделе. Это дрочево. Зачем вы мне приносите эту LVM? Унесите.

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

RH хотят сделать «промышленное хранилище», чтобы продавать как услугу. Но btrfs не про это, и вообще без философии. Скорее какой-нибудь ceph выстрелит, чем btrfs, в этой области.

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

thin provisioning

Здесь всё та же проблема: ФС не знает, что под ней не нормальное блочное устройство, а клоунская LVM. Я так понимаю, что технология thin provisioning строится на вранье о реальном размере блочного устройства. И что будет когда соседняя ФС высосет всё свободное пространство? Ошибка записи на уровне блочного устройства или что? Добром это не кончится.

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

а что клоунского в LVM (у неё есть вполне реальные недостатки, но вы их не озвучили)? когда ты задействуешь thin provisioning, предполагается, что ты понимаешь, что делаешь, и это не дефолтное поведение.

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

RH хотят сделать «промышленное хранилище», чтобы продавать как услугу.

Путаешь что-то.

Скорее какой-нибудь ceph выстрелит, чем btrfs, в этой области.

RH вроде продвигает glusterfs? Ну и ты снова путаешь, потому что Btrfs сугубо локальная.

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

То же дрочево, но теперь с возможностью получить сломанную ФС.

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

Тоже об этом подумал. Получился бы аналог предложенного анонимом алгоритма с LVM.

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

Мы говорим про ситуацию, когда блочное устройство говорит, что место есть, а на самом деле его нет. Это может произойти при записи метаданных. Когда на btrfs кончится место, то будет штатная ошибка no space left, а фс на lvm тупо умрёт.

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

что ты понимаешь, что делаешь, и это не дефолтное поведение.

Зачем мне решение, при котором фс может тихо умереть? Например начинаю компилять llvm или chromium, место на диске кончается и lvm убивает мне фс. Очень крутой этот ваш lvm. Восторг.

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

Зеркало? Насколько резво он будет делать копию? Ну т.е. я не собираюсь использовать два диска. Я хочу дождаться завершения, выключить комп и поменять диски.

Чёт мне кажется, что копирование будет в фоновом режиме. А мне нужно максимально быстро, пусть и ценой подтормаживания системы.

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

а фс на lvm тупо умрёт

У меня выжила, и даже транзакции в базе нормально откатились, но больше тонкие тома даже близко к чему-то важному не подпускал. Да, это была моя невнимательность, но всё же неприятно. Много лет назад я сам возмущался по поводу ФС-комбайнов, но сейчас понимаю, что альтернатив нет.

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

когда ты задействуешь thin provisioning, предполагается, что ты понимаешь, что делаешь, и это не дефолтное поведение.

Вот не могли они сделать by design, что бы всё колом не вставало, когда место заканчивается?

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