code: func (d *DataDirectory) Backup() error {
  	backupDir := fmt.Sprintf("%s.bak", d.path)
  	err := os.RemoveAll(backupDir)
  	if err != nil {
  		return err
  	}
  	err = os.MkdirAll(backupDir, 0777)
  	if err != nil {
  		return err
  	}
  	err = exec.Command("cp", "-r", d.path, backupDir).Run()
  	if err != nil {
  		return err
  	}
  
  	return nil
  }
docs: // Backup creates a backup copy of data directory.