LINUX.ORG.RU
решено ФорумAdmin

Linux dd, или вдогонку о вопросах новичков

 ,


0

3

Приветствую.

Подскажите несколько моментов по dd.

Суть - делать бэкап, точнее снапшот, уже работающего сервера, на живую.

Там стоит ext4, переделываться это не будет к сожалению.

Вопрос звучит конкретно по команде «dd», абстрагируясь от других решений.

1. Реально ли использовать удаленный ресурс в качестве опции of, без промежуточных монтирований? Типа dd if=/dev/sda1 of=ftp://192.168.1.10/backup.img ? Хотелось бы;

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

Благодарю.

★★★★★

1) нет, в команде dd нет никаких сетевых протоколов, она только пересылает блоки между файлами.

2) ты сам дал ответ

firkax ★★★★★
()

dd не подходит для такого бекапа от слова совсем.

Если сервер виртуальный, часто можно снять снапшот на лету и клонировать.

Иначе только rsync. Пофайлого, да. Потом еще и поднимать из бекапа.

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 1)

Там стоит ext4, переделываться это не будет к сожалению.

Я бы сказал, что это к радости. ext4 - одна из немногих ФС, которая может похвастаться стабильностью

Shprot ★★
()
Последнее исправление: Shprot (всего исправлений: 1)

Чем быстрее будете копировать, тем целее будет. Так что локальный nvme заметно лучше, чем через инет. В принципе, более-менее рабочий вариант, если не нужны копии двоичных файлов, в которые идёт запись (базы данных). Но dd смонтированой ФС худший вариант, через файлы (tar, rsync) лучше бы.

mky ★★★★★
()
  1. Насколько такой образ будет покалеченный? Я понимаю что покалеченность зависит от времени бэкапа и интенсивности изменения файлов, поэтому можно приблизительно.

Вопрос совершенно дурацкий кстати, аналогичен следующему: «Если шарахнуть по диску камнем, насколько такой диск будет покалеченным? Я понимаю что покалеченность зависит от массы камня и силы удара, поэтому можно приблизительно.» :)

manul91
()

Суть - делать бэкап, точнее снапшот, уже работающего сервера, на живую.

надежнее его сфотографировать и спрятать фото в сейф

anonymous
()

Суть - делать бэкап, точнее снапшот, уже работающего сервера, на живую.

Нет, ничего, во что прямо сейчас происходит или может происходить запись, ddшить не надо. Кроме того, записываться (и повреждаться от твоей глупой затеи), скорее всего, будут наиболее критичные данные.

А для твоей задачи уже придумали rsync. Там опций столько, что хоть инкрементальный бекап делай и клади его на другой хост по SSH.

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

Делай сразу правильно, а не на авось и с просьбами погадать на кофейной гуще.

Vidrele ★★★★
()

Если наживую, то только rsync.

dd сделает непредсказуемо битый образ, хотя скорее всего, если во время работы dd не заниматься обновлением данных, то все нормально починится fsck, который конечно обязательно надо будет запустить на образе.

Но это все лотерея, особенно если в образ СУБД попадет

anonymous
()

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

Приблизительно от не покалеченный до покалеченный почти вусмерть. Какой вопрос, такой ответ. Даже если у вас fs смонтирована в ro, то все равно смысла в таком варианте бэкапа немного, только лишние байтики гонять.

anc ★★★★★
()
  1. Да

  2. Образ будет непригодный к восстановлению (битый). Нужно делать снапшот (значит надо LVM, BTRFS или ZFS) или fsfreeze (может повесить машину если вызвано надолго)

no-dashi-v2 ★★★
()

Хорошо, всех благодарю. Теперь собственно к чему вопрос.

Есть такая штука, Acronis Backup. Я с ним никогда не сталкивался, но пришлось немного потыкать у клиента, установленный через плагины к Plesk (вебгуй).

Ребята в настройках грозятся делать посекторную копию раздела в облако, при помощи «агента», установленного в рабочую систему, из-под которой собственно делается эта копия.

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

Вот и интересно понять, действительно ли они делают посекторную копию раздела, и как они в этом случае борются например с innodb?

https://ibb.co/G0G9PcV

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

Тут вот что смешно: поиск находит в твоих комментариях выражение «забивать гвозди микроскопом» не менее 6 раз. И тут, значит, ты собираешься делать бэкап утилитой dd, да еще и по сети.

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

Там проприетарка.

Вот. Таким длинным путём я тебя подводил к мысли, что спрашивать надо в техподдержке разработчика софта, а не на форуме.

Вообще сильно сомневаюсь, что оно работает как заявлено, и совместимо с любой ФС и СУБД. Базы данных вообще никто в здравом уме не бэкапит на файловом или блочном уровне онлайн.

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

И, что, акронис действительно делает sector-by-sector резервную копию раздела, который смонтирован? Так они везде пишут, что если ФС поддерживаемая Акронисом, то не надо sector-by-sector. Запросто может быть, что они откажутся делать sector-by-sector для смонтированного раздела.

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

Не совсем понятно, что именно они имеют в виду, но как бы наводит на мысли.

Не обратил внимание, спс.

И правда, мы делаем бэкап, но данные с него вы не восстановите.

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

Мне кажется там другой смысл у примечания. Что то типа «мы сделаем образ целиком, но выборочно данные из него вытащить вы не сможете». Потому что выша они пишут что этот режим (посекторный) включается например в случае если ФС не распознана как поддерживаемая. Логично что посекторный образ неведомо чего можно только обратно раскатать, так же посекторно. И на уровне секторов он будет целостным.

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

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

Жаль сервер слишком боевой, чтобы прибить и посмотреть :)

Ну хорошо, допустим ФС «поддерживаемая» - что это поменяет в конечном итоге?

Даже пофайловое копирование не гарантирует целостности данных, а принудительно их закрывать - значит нарушать работу системы.

Получается пацаны берут помесячную оплату ни за хер.

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

Я давно эту хрень ковырял, кажется там был их собственный ядрёный модуль который перед снятием образа сбрасывал кэши и «замораживал» запись. Файлы оставались открытыми, но образ хотя бы не менялся непосредственно в процессе. А если ФС поддерживаемая это всё как rsync работало, на уровне ФС, а не секторов. Из плюсов — частичный бэкап или частичное восстановление, возможность указать что бекапить, а что — нет, меньший размер бэкапа по причине отсутствия в нём «пустых, но грязных» секторов\блоков (их там и так нет если trim, но тогда trim был экзотикой для scsi винтов).

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

Сбросить кеши и заморозить запись ext4 и xfs и так умеют https://man7.org/linux/man-pages/man8/fsfreeze.8.html. Но ведь нельзя же держать файловую систему замороженной долго, бэкап не должен надолго останавливать работу сервера.

iliyap ★★★★★
()
  1. Можно через пайп. dd if=/dev/sda | ssh remote 'cat >backup'

  2. При активной записи будет 100% покалеченный. Чтобы не был покалеченный, используй fsfreeze, но при этом будет заморожена любая запись на раздел.

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

я большего глюкала не видел, чем эта поделка сопливых пионеров. что может быть проще чем забэкапить виртуалку? ну то есть бэкапить то он ее бэкапить. а потом этот волшебный исошник не может ее восстановить «посекторно», с непонятными ошибками. и непонятным супортом, который не может ничего ответить нормально. ну его нафиг…

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

В случае MS Windows они скорее всего используют Volume Shadow Copy Services (VSS).

VSS умеет COW снапшоты (аналогично LVM), а также поддерживает интеграцию с софтом: т.е. если например если сервер БД (MS SQL server) интегрирован с VSS, то они умеют взаимодествовать так, чтобы на момент создания COW снапшота файлы БД были в консистентном состоянии.

См. https://learn.microsoft.com/en-us/windows-server/storage/file-server/volume-shadow-copy-service#how-a-shadow-copy-is-created

MirandaUser2
()