[English | Japanese]

pdumpfs: a daily backup system similar to Plan9's dumpfs

Last Modified: 2002-08-06

What's pdumpfs?

pdumpfs is a simple daily backup system similar to Plan9's dumpfs which preserves every daily snapshot. pdumpfs is written in Ruby. You can access the past snapshots at any time for retrieving a certain day's file. Let's backup your home directory with pdumpfs!

pdumpfs constructs the snapshot YYYY/MM/DD in the destination directory. All source files are copied to the snapshot directory for the first time. 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 for saving a disk space.

Tha latest version of pdumpfs is available at

What's New

  • 2002-08-06: pdumpfs 0.6 Released!
    • Be resistant to files disappearing while it runs.
  • 2001-02-19: pdumpfs 0.1 Released!



Edit the first line of pdumpfs: #! /usr/local/bin/ruby if necessary.

Command Line

   % pdumpfs <source directory> <destination directory>


To backup your home directory /home/yourname to /backup, run the following command.

   % 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 daemon. The following setting allows you to backup your home directory every 5 a.m.

    00 05 * * * pdumpfs /home/yourname /backup >/backup/log 2>/backup/error-log

If the backup system works well, you can retrieve a certain day's file with a file name like /backup/2001/02/19/yourname/...


  • pdumpfs can handle only normal files, directories, and symbolic links.
  • pdumpfs may not work on systems other than UNIX because pdumpfs utilizes hard links.
  • pdumpfs is not suited for a directory containing large files which update frequently.
  • If more than 31 days absence occurs, incremental backup would not be performed. So, backup your files everyday.
  • With pdumpfs, you can easily remove unnecessary files because the past files can be retrieved at any time. However, please do not put too much confidence in pdumpfs. pdumpfs may have serious bugs.


  • If files are increased by 10 MB everyday, about 4 GB disk space is consumed by one year. It is not too much, considering the recent evolution of computer resources.
  • Backup your files to a physically separated device.
  • With a linux ext2/ext3 filesystem, files can be immutable with chattr command. To make all files in /backup immutable, run chattr -R +i /backup with the root privilege. chattr command keep you from doing rm -rf backup files by accident.


pdumpfs is a free software with ABSOLUTELY NO WARRANTY under the terms of the GNU General Public License version 2.

$Id: pdumpfs-en.html,v 1.13 2002/08/06 08:46:03 satoru Exp $

Satoru Takabayashi (