Skip to content

Latest commit

 

History

History
109 lines (91 loc) · 2.93 KB

File metadata and controls

109 lines (91 loc) · 2.93 KB
description Identify filesystem parts to backup and suggest inclusion patterns
tags
backup
filesystem
strategy
rclone
project
gitignored

You are helping the user identify which parts of their filesystem should be backed up and create appropriate inclusion patterns.

Process

  1. Analyze filesystem structure

    • Home directory size: du -sh ~/* or du -h --max-depth=1 ~ | sort -h
    • System directories to consider
    • External drives/mounts
  2. Categorize data by importance

    Critical (must backup):

    • Documents: ~/Documents
    • Development work: ~/repos
    • Configuration files: ~/.config, ~/.ssh, ~/.gnupg
    • Scripts: ~/scripts, ~/.local/bin
    • AI documentation: ~/ai-docs

    Important (should backup):

    • Pictures/Photos
    • Videos (personal)
    • Music (if not streaming)
    • Downloads (selective)
    • Email (if local)

    Optional (consider backing up):

    • Application data: ~/.local/share
    • Browser data (bookmarks, passwords)
    • Game saves

    Exclude (don't backup):

    • Caches: ~/.cache
    • Temporary files: /tmp, ~/.tmp
    • Virtual machines/disk images
    • Node modules: node_modules/
    • Python venvs: venv/, .venv/
    • Build artifacts: target/, build/, dist/
    • Large media files (if cloud-synced elsewhere)
  3. Identify special considerations

    • Check for large directories: du -h --max-depth=2 ~ | sort -h | tail -20
    • Look for media libraries
    • Identify development projects with dependencies
    • Find version-controlled repos (can skip .git if remote exists)
  4. Create inclusion/exclusion patterns

    For rclone:

    # Include patterns
    + /Documents/**
    + /repos/**
    + /.config/**
    + /.ssh/**
    + /.gnupg/**
    + /scripts/**
    + /.local/bin/**
    + /ai-docs/**
    + /Pictures/**
    
    # Exclude patterns
    - /.cache/**
    - /.local/share/Trash/**
    - /**/node_modules/**
    - /**/.venv/**
    - /**/venv/**
    - /**/__pycache__/**
    - /**/.git/**
    - /.thumbnails/**
    

    For rsync:

    --include='/Documents/***'
    --include='/repos/***'
    --exclude='**/.cache/'
    --exclude='**/node_modules/'
    --exclude='**/.venv/'
  5. Calculate backup size

    • Estimate total backup size based on included directories
    • Consider compression potential
    • Plan for growth
  6. Suggest backup frequency

    • Critical data: Daily or real-time sync
    • Important data: Weekly
    • Optional data: Monthly
    • System configs: After changes
  7. Create backup configuration file

    • Offer to create ~/scripts/backup-config.txt with patterns
    • Create ~/scripts/backup-estimate.sh to calculate size

Output

Provide a report showing:

  • Categorized list of directories to backup
  • Size estimates for each category
  • Recommended inclusion/exclusion patterns (rclone and rsync format)
  • Total estimated backup size
  • Suggested backup frequency for each category
  • Configuration file content