Introduced with Windows Server 2003, the volume shadow copy service (VSS) has vastly improved the lives of those of us whose lot in life includes backing up Windows machines. By providing a standard mechanism for creating and managing snapshots, VSS lets backup applications get data-consistent backups of complex data stores like Active Directory and Exchange or Oracle databases. Why isn't there an equivalent for Linux?Before I really start ranting about how Linux needs a VSS equivalent, lets take a brief, and somewhat simplified, look at what VSS actually does. Look here for the official Microsoft version of how VSS works if you feel a need for details.
When a backup application needs to back up one or more resources on a server that is VSS aware, it, through its VSS Requester, sends a message to the server that enumerates the databases, file systems, and other resources to be backed up. VSS then sends a message to the VSS writer for each application to flush their buffers and make the data consistent for a snapshot. The VSS provider makes the snapshot, freezing writes for no more than 60 seconds, and flushing the file system buffers to boot. The backup program then backs up the consistent snapshot.
While Windows includes a copy on write VSS provider, VSS itself doesn't take snapshots; many disk array vendors have their own providers that allow users to capitalize on the disk array's snapshot technologies. Application vendors just need to write a VSS writer component to support a wide variety of backup applications and backup app providers can avoid the cost of developing application specific agents.
In a world without VSS, admins need to run scripts or application-specific backup or database-dump software. While this isn't a big deal for a few physical servers, it starts to become a real issue as servers, and virtual servers, proliferate.
With a VSS-enabled virtualization platform like Hyper-V or VMware VCB, with last month's update two admins can get consistent backups of VMs while backing up the entire host.
So, Linux guys: Why no VSS equivalent in your world?