mastering_zfs/ch07

ch07

dz / mastering_zfs / ch07

Summary

Chapter 7: Snapshots and Clones

Node Tree

Nodes

snapshot
content snapshot
children accessing, automatic_snapshot_regimen, bookmarks, copy_on_write, creating_snaps, deleting, diffing, fork_fs_snap, holds, keeps_track_version_blocks (how it works), list_of_blocks, mounting, read_only, recursive_snaps, revert, underpin_repl, using, view

read_only
content read-only
parents snapshot

underpin_repl
content Underpinnings of replication in ZFS
parents snapshot

copy_on_write
content Copy-on-Write
children change_file_identify_blocks (how it works), never_overwrites_blocks
parents snapshot

clone
content clone
children clone_create, clone_delete, clone_view, fork_fs_snap (description), fork_of_fs, initially_no_disk_space, new_fs_from_snap (description), promoting, receive_no_updates_from_dataset, writable

fork_fs_snap
content Fork of filesystem based on snapshot
parents clone, snapshot

never_overwrites_blocks
content ZFS never overwrites blocks
parents copy_on_write

change_file_identify_blocks
content When a change is made to a file, it identifies the changed blocks, then copies those blocks to a new location
children keeps_track_version_blocks
parents copy_on_write

keeps_track_version_blocks
content created by keeping track of deduplicated versions of changed blocks
parents snapshot, change_file_identify_blocks

creating_snaps
content Creating
children copies_fs_top_block, dead_list
parents snapshot

copies_fs_top_block
content copies filesystem top-level metadata block
children live_uses_copy_snap_orig
parents creating_snaps

dead_list
content dead list
children block_freed_when, delete_snap_update_deadlist
parents creating_snaps

live_uses_copy_snap_orig
content Live system uses copy, snap shot uses original
parents copies_fs_top_block

delete_snap_update_deadlist
content Deleting the most recent snapshot will update the deadlist. It will remove blocks that were only required by that snapshot.
parents dead_list

block_freed_when
content Block is only freed when no filesystem, volume, or snapshot is using it.
parents dead_list

list_of_blocks
content List of blocks used inthe live dataset when snapshot was taken.
parents snapshot

zfs_cli
content zfs
children zfs_clone, zfs_clone_destroy, zfs_destroy, zfs_diff, zfs_list, zfs_list_t_snapshot, zfs_promote, zfs_rollback, zfs_snapshot

mounting
content Mounting
parents snapshot

deleting
content deleting
children dry_runs, range, recursive
parents zfs_destroy, snapshot

zfs_destroy
content destroy
children dash_n, dash_r, dash_vn, deleting
parents zfs_cli

dash_n
content -n
children dry_runs
parents zfs_destroy

dash_vn
content -vn
children dry_runs (a little bit more verbose)
parents zfs_destroy

dry_runs
content Dry Runs
parents dash_vn, deleting, dash_n

recursive
content recursive
parents dash_r, deleting

dash_r
content -r
children recursive, recursive_snaps (snapshot -r)
parents zfs_destroy, zfs_snapshot

range
content range
children range_notation (notation(ish))
parents deleting

range_notation
content [from snapshot] % [to snapshot[
parents range

revert
content revert
children only_rollback_most_recent
parents zfs_rollback, snapshot

only_rollback_most_recent
content Can only roll back to most recent snapshot. No forward/backward
parents revert

zfs_rollback
content rollback
children revert
parents zfs_cli

diffing
content Diffing
children file_states
parents zfs_diff, snapshot

zfs_diff
content diff
children diffing, file_states
parents zfs_cli

file_states
content File States
children state_added, state_modified, state_removed, state_renamed
parents diffing, zfs_diff

state_removed
content "-" = removed
parents file_states

state_added
content "+" = added
parents file_states

state_modified
content "M" = modified
parents file_states

state_renamed
content "R" = renamed
parents file_states

holds
content Holds
parents snapshot

automatic_snapshot_regimen
content automatic snapshot regimen
parents snapshot

bookmarks
content bookmarks
parents snapshot

using
content using
children create
parents snapshot

create
content create
parents zfs_snapshot, using

zfs_snapshot
content snapshot
children create, dash_r
parents zfs_cli

view
content view
children by_type, control_output, per_snap_space_use, scriptable_output
parents zfs_list_t_snapshot, snapshot

zfs_list_t_snapshot
content zfs list -t snapshot
children view
parents zfs_cli

zfs_list
content list
children dash_o, dash_p, dash_t
parents zfs_cli

recursive_snaps
content recursive snapshots
parents dash_r, snapshot

by_type
content by type
parents view, dash_t

dash_t
content -t
children by_type, zfs_all, zfs_snapshot_option
parents zfs_list

control_output
content control_output
parents view, dash_o

dash_o
content -o
children control_output, written_prop
parents zfs_list

scriptable_output
content scriptable output
parents view, dash_p

dash_p
content -p
children scriptable_output
parents zfs_list

zfs_all
content all
parents dash_t

zfs_snapshot_option
content snapshot
parents dash_t

per_snap_space_use
content per-snapshot space use
children written_prop
parents view

written_prop
content "written" property
parents dash_o, per_snap_space_use

accessing
content accessing
children snapdir
parents snapshot

snapdir
content snapshot directory/snapdir
children snapdir_prop
parents accessing

snapdir_prop
content snapdir property
children hidden, visible
parents snapdir

visible
content visible
parents snapdir_prop

hidden
content hidden
parents snapdir_prop

new_fs_from_snap
content new filesystem created from snapshot
parents clone

writable
content writable
parents clone

fork_of_fs
content fork or branch of filesystem
parents clone

initially_no_disk_space
content no disk space initially
parents clone

receive_no_updates_from_dataset
content receives no updates made in original dataset
parents clone

clone_create
content creating
parents clone, zfs_clone

zfs_clone
content clone
children clone_create
parents zfs_cli

clone_view
content viewing
children origin_prop_tells_if_clone
parents clone

origin_prop_tells_if_clone
content the "origin" property is the only way to tell if it is clone or not
parents clone_view

clone_delete
content deleting
children clone_exists_prevents_snap_removal
parents clone, zfs_clone_destroy

clone_exists_prevents_snap_removal
content Existence of clone prevents source snap from being deleted
parents clone_delete, dash_big_r

zfs_clone_destroy
content destroy
children clone_delete, dash_big_r
parents zfs_cli

dash_big_r
content -R
children clone_exists_prevents_snap_removal (removes dependent clones)
parents zfs_clone_destroy

promoting
content promoting
children reverse_parent_child
parents clone

reverse_parent_child
content reverse parent/child relationship original/clone
parents promoting

zfs_promote
content promote
parents zfs_cli