The invention provides a method and system for duplicating all or part of
a file system while maintaining consistent copies of the file system. The
file server maintains a set of snapshots, each indicating a set of
storage blocks making up a consistent copy of the file system as it was
at a known time. Each snapshot can be used for a purpose other than
maintaining the coherency of the file system, such as duplicating or
transferring a backup copy of the file system to a destination storage
medium. In a preferred embodiment, the snapshots can be manipulated to
identify sets of storage blocks in the file system for incremental backup
or copying, or to provide a file system backup that is both complete and
relatively inexpensive. Also in a preferred embodiment, shadow snapshots
can be maintained, with a shadow snapshot including a set of member
storage blocks that formed a consistent file system other than an active
file system, with a set of selected member storage blocks removed from
the consistent file system.