diff options
author | Kirk McKusick <mckusick@FreeBSD.org> | 2010-11-20 18:40:50 +0000 |
---|---|---|
committer | Kirk McKusick <mckusick@FreeBSD.org> | 2010-11-20 18:40:50 +0000 |
commit | 18709a09ed281c66c8798d585d87504ce1018d8a (patch) | |
tree | 8ecfa42f4b68e057e810be8f149dbb304006a756 /sys/ufs/ffs | |
parent | 4c7b9a2063e1a3db3f51bd98adc20510423df904 (diff) | |
download | src-18709a09ed281c66c8798d585d87504ce1018d8a.tar.gz src-18709a09ed281c66c8798d585d87504ce1018d8a.zip |
Delete /sys/ufs/ffs/README.snapshot as it is no longer relevant.
Drop reference to it in mount(8).
MFC: 3 days
Notes
Notes:
svn path=/head/; revision=215576
Diffstat (limited to 'sys/ufs/ffs')
-rw-r--r-- | sys/ufs/ffs/README.snapshot | 110 |
1 files changed, 0 insertions, 110 deletions
diff --git a/sys/ufs/ffs/README.snapshot b/sys/ufs/ffs/README.snapshot deleted file mode 100644 index 7704c7ee3475..000000000000 --- a/sys/ufs/ffs/README.snapshot +++ /dev/null @@ -1,110 +0,0 @@ -$FreeBSD$ - -Soft Updates Status - -As is detailed in the operational information below, snapshots -are definitely alpha-test code and are NOT yet ready for production -use. Much remains to be done to make them really useful, but I -wanted to let folks get a chance to try it out and start reporting -bugs and other shortcomings. Such reports should be sent to -Kirk McKusick <mckusick@mckusick.com>. - - -Snapshot Copyright Restrictions - -Snapshots have been introduced to FreeBSD with a `Berkeley-style' -copyright. The file implementing snapshots resides in the sys/ufs/ffs -directory and is compiled into the generic kernel by default. - - -Using Snapshots - -To create a snapshot of your /var filesystem, run the command: - - mount -u -o snapshot /var/snapshot/snap1 /var - -This command will take a snapshot of your /var filesystem and -leave it in the file /var/snapshot/snap1. Note that snapshot -files must be created in the filesystem that is being snapshotted. -I use the convention of putting a `snapshot' directory at the -root of each filesystem into which I can place snapshots. -You may create up to 20 snapshots per filesystem. Active snapshots -are recorded in the superblock, so they persist across unmount -and remount operations and across system reboots. When you -are done with a snapshot, it can be removed with the `rm' -command. Snapshots may be removed in any order, however you -may not get back all the space contained in the snapshot as -another snapshot may claim some of the blocks that it is releasing. -Note that the `schg' flag is set on snapshots to ensure that -not even the root user can write to them. The unlink command -makes an exception for snapshot files in that it allows them -to be removed even though they have the `schg' flag set, so it -is not necessary to clear the `schg' flag before removing a -snapshot file. - -Once you have taken a snapshot, there are three interesting -things that you can do with it: - -1) Run fsck on the snapshot file. Assuming that the filesystem - was clean when it was mounted, you should always get a clean - (and unchanging) result from running fsck on the snapshot. - If you are running with soft updates and rebooted after a - crash without cleaning up the filesystem, then fsck of the - snapshot may find missing blocks and inodes or inodes with - link counts that are too high. I have not yet added the - system calls to allow fsck to add these missing resources - back to the filesystem - that will be added once the basic - snapshot code is working properly. So, view those reports - as informational for now. - -2) Run dump on the snapshot. You will get a dump that is - consistent with the filesystem as of the timestamp of the - snapshot. - -3) Mount the snapshot as a frozen image of the filesystem. - To mount the snapshot /var/snapshot/snap1: - - mdconfig -a -t vnode -f /var/snapshot/snap1 -u 4 - mount -r /dev/md4 /mnt - - You can now cruise around your frozen /var filesystem - at /mnt. Everything will be in the same state that it - was at the time the snapshot was taken. The one exception - is that any earlier snapshots will appear as zero length - files. When you are done with the mounted snapshot: - - umount /mnt - mdconfig -d -u 4 - - Note that under some circumstances, the process accessing - the frozen filesystem may deadlock. I am aware of this - problem, but the solution is not simple. It requires - using buffer read locks rather than exclusive locks when - traversing the inode indirect blocks. Until this problem - is fixed, you should avoid putting mounted snapshots into - production. - - -Performance - -It takes about 30 seconds to create a snapshot of an 8Gb filesystem. -Of that time 25 seconds is spent in preparation; filesystem activity -is only suspended for the final 5 seconds of that period. Snapshot -removal of an 8Gb filesystem takes about two minutes. Filesystem -activity is never suspended during snapshot removal. - -The suspend time may be expanded by several minutes if a process -is in the midst of removing many files as all the soft updates -backlog must be cleared. Generally snapshots do not slow the system -down appreciably except when removing many small files (i.e., any -file less than 96Kb whose last block is a fragment) that are claimed -by a snapshot. Here, the snapshot code must make a copy of every -released fragment which slows the rate of file removal to about -twenty files per second once the soft updates backlog limit is -reached. - - -How Snapshots Work - -For more general information on snapshots, please see: - http://www.mckusick.com/softdep/ |