pdumpfs - A daily backup system similar to Plan9’s dumpfs
pdumpfs src-dir dest-dir [dest-basename]
pdumpfs is a simple daily backup system written in Ruby (ruby(1)), which
is similar to Plan9’s dumpfs that preserves every daily snapshot.
Back up your home directory with pdumpfs, and you can retrieve any past
day’s snapshot of any file.
pdumpfs constructs each day’s snapshot in the directory named YYYY/MM/DD
under the destination directory. All source files are copied to the
snapshot directory for the first time, and on and after the second time,
pdumpfs copies only updated or newly created files and stores unchanged
files as hard links to the files of the previous day’s snapshot to save
Exclude files or directories matching PATTERN.
Exclude files larger than SIZE from backup.
Exclude files matching GLOB from backup.
Write a logfile to FILE.
Show the program version and exit.
Suppress all normal output.
Don’t actuall run any commands.
Show help message.
The latest version of pdumpfs is always available at
To backup your home directory /home/yourname to /backup, run the
pdumpfs /home/yourname /backup >/backup/log 2>/backup/error-log
On and after the second day, it is a good idea to invoke the backup
command with cron(8) daemon. Adding the following line to your crontab
file allows you to back up your home directory at 5 a.m. everyday.
00 05 * * * pdumpfs /home/yourname /backup >/backup/log
If the backup system works well, you can retrieve any given day’s file
with a file name like /backup/2001/02/19/yourname/...
pdumpfs can only handle normal files, directories, and symbolic links.
pdumpfs may not work on systems other than UNIX because pdumpfs utilizes
pdumpfs is not suited for a directory containing large files which are
If more than 31 day absence occurs, incremental backup would not be
performed. So, back up your files on a daily basis.
With pdumpfs, you can safely remove unnecessary files because the past
files can be retrieved at any time. However, you must not rely too much
on pdumpfs. It may have serious bugs.
If the total disk usage increases by 10 MB everyday, about 4 GB disk
space will be consumed every year. It would not matter so much
considering the recent evolution of computer resources.
Back up your files to a physically separated device.
On some systems, files can be made immutable.
To make all files in /backup immutable on Linux, run the following
command as root:
chattr -R +i /backup
On 4.4BSD derived systems, run the following command as root:
chflags -R schg /backup
These commands will keep you from accidentally removing your backup files
with rm -rf.
pdumpfs and the HTML document were written by Satoru Takabayashi
This manual page was translated from the HTML document by Hiroyuki
Shimada 〈email@example.com〉, and reformatted by Akinori MUSHA
chattr(1), chflags(1), crontab(5), cron(8)