Успокоение файловой системы позволяет сделать резервную копию базы данных, пока она еще работает, а также других программ и их данных.
Как правило, приложение должно быть уведомлено об операции резервного копирования, поскольку все буферы должны быть сброшены на диск, а любые входящие запросы записи должны быть остановлены, чтобы можно было создать действительную резервную копию без полной остановки системы.
Есть ли в Linux поддержка такого рода вещей? Я читал, что Microsoft Windows поддерживает это с Windows Server 2003, и я видел несколько мест, где они рассказывают о том, как это можно сделать с Linux с помощью виртуальной машины. Но я не знаю, какие конкретные виртуальные машины, если виртуальные машины должны быть запущены в Windows в качестве хоста.
А как насчет платформ, которые выше уровня ОС, таких как Java? Есть ли здесь какая-то поддержка?
Ответы:
Когда вы делаете снимок LVM, ожидающие данные (в буферах ядра, а не в приложениях) сбрасываются на диск, и приложения блокируются от записи, пока снимок выполняется. Вы также можете заморозить ФС тем же способом, если вы создаете резервную копию блочного устройства, на котором ФС включена каким-либо внешним способом (например, диск является виртуальным, и вы копируете его на хост), используя
fsfreeze
илиxfs_aio
. Файловые системы, которые реализуют моментальный снимок (например, BTRFS, NILFS, ZFS ...), также будут делать это. В целом моментальные снимки на этих уровнях действительно гарантируют, что данные в моментальном снимке являются мгновенным замораживанием того, что было передано FS в данный момент времени, и замороженная FS находится в согласованном чистом состоянии.Что касается заявления приложений о прекращении работы и сбрасывании их буферизованных данных в ФС, то здесь нет общей структуры, и в последний раз, когда я проверял, общее мнение заключалось в том, что это скорее вызовет вред, привнося ненужную сложность и связанные с этим ошибки, чем улучшит работу приложений. в любом случае следует сосредоточиться на том, чтобы их данные были в согласованном виде на диске в случае сбоя системы или оборудования.
Некоторые приложения, такие как базы данных, могут быть отключены, как MySQL
FLUSH TABLES WITH READ LOCK
.источник