Skip to main content

fastcopy-file-transfer-optimization

High-performance file duplication and transfer utility with multi-threaded I/O, integrity verification, and automation support

Ir a la instalación

Datos de origen

Repositorio
reason-machines/devtools-skills
Última actividad en el origen
7 de julio de 2026 a las 09:13
Idioma detectado de SKILL.md
inglés
Estrellas
4
Forks
0

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
fastcopy-file-transfer-optimization
description
High-performance file duplication and transfer utility with multi-threaded I/O, integrity verification, and automation support
triggers
["how do I use FastCopy for bulk file transfers","configure FastCopy with YAML profiles","set up parallel file copying with FastCopy","FastCopy command line options and examples","optimize file transfer speed with FastCopy","automate file backup using FastCopy","FastCopy integrity verification and checksums","troubleshoot FastCopy transfer errors"]
# FastCopy File Transfer Optimization > Skill by [ara.so](https://ara.so) — Devtools Skills collection. ## Overview **FastCopy** is a high-performance file duplication and transfer utility designed for professionals who need fast, reliable bulk file operations. It features multi-threaded I/O engines, intelligent caching, automatic retry logic, and integrity verification using SHA-256 and CRC-32 checksums. Key capabilities: - Multi-threaded parallel transfers (up to 64 concurrent streams) - YAML-based profile configuration for repeatable operations - CLI and GUI modes for flexible integration - Cross-platform support (Windows, macOS, Linux) - Built-in integrity verification and auto-resume - Scriptable automation with hooks and scheduling ## Installation ### Windows ```bash # Download from official source # Install using the provided installer or extract portable version fastcopy.exe --version ``` ### macOS ```bash # Using Homebrew (if available) brew install fastcopy # Or download DMG and install manually fastcopy --version ``` ### Linux ```bash # Download portable binary curl -LO https://example.com/fastcopy-linux-x64 chmod +x fastcopy-linux-x64 sudo mv fastcopy-linux-x64 /usr/local/bin/fastcopy # Verify installation fastcopy --version ``` ## Basic Usage ### Command Line Interface #### Simple File Copy ```bash # Basic syntax fastcopy <source> <destination> [options] # Copy single file fastcopy /path/to/source.zip /backup/ # Copy directory recursively fastcopy /data/projects/ /backup/projects/ --recursive # Copy with maximum parallelism fastcopy /media/raw/ /nas/archive/ --streams 64 --turbo ``` #### Common Options ```bash # High priority transfer with debug logging fastcopy source.iso /backups/ --priority high --log-level debug # Skip integrity verification (faster but less safe) fastcopy /large_dataset/ /backup/ --no-verify --streams 32 # Resume interrupted transfer fastcopy /incomplete/ /destination/ --resume always # Tag transfers for organization fastcopy build.tar.gz /releases/ --tag "v2.3.1-production" ``` ## Profile-Based Configuration ### YAML Profile Structure Create reusable transfer profiles for consistent operations: ```yaml # production-backup.yaml transfer: mode: "turbo" # standard, balanced, turbo streams: 32 # concurrent streams (1-64) buffer_size_mb: 256 # memory buffer per stream verify: true # enable SHA-256 + CRC-32 checks resume: always # always, on_failure, never paths: source: "/var/www/production" destination: "/mnt/backup/www" filters: include: - "*.php" - "*.html" - "*.css" - "*.js" exclude: - "cache/*" - "temp/*" - ".git/*" schedule: type: "cron" # one_time, watch, cron expression: "0 2 * * *" # daily at 2 AM hooks: on_start: "echo 'Starting backup...'" on_complete: "/opt/scripts/notify-success.sh" on_error: "/opt/scripts/alert-admin.sh" logging: level: "info" # debug, info, warning, error file: "/var/log/fastcopy/backup.log" max_size_mb: 100 ``` ### Using Profiles ```bash # Execute with profile fastcopy --profile production-backup.yaml # Override profile settings fastcopy --profile backup.yaml --streams 48 --priority realtime # Validate profile without executing fastcopy --profile backup.yaml --dry-run --validate ``` ## Advanced Patterns ### Automated Backup Script ```bash #!/bin/bash # daily-backup.sh # Environment variables BACKUP_SOURCE="${BACKUP_SOURCE:-/data/production}" BACKUP_DEST="${BACKUP_DEST:-/mnt/nas/backups}" FASTCOPY_PROFILE="${FASTCOPY_PROFILE:-/etc/fastcopy/backup.yaml}" ALERT_EMAIL="${ALERT_EMAIL}" # Timestamp for versioned backups TIMESTAMP=$(date +%Y%m%d_%H%M%S) DEST_DIR="${BACKUP_DEST}/${TIMESTAMP}" # Create profile dynamically cat > /tmp/backup-${TIMESTAMP}.yaml <<EOF transfer: mode: "turbo" streams: 32 verify: true resume: always paths: source: "${BACKUP_SOURCE}" destination: "${DEST_DIR}" logging: level: "info" file: "/var/log/fastcopy/backup-${TIMESTAMP}.log" hooks: on_complete: "echo 'Backup completed at ${DEST_DIR}' | mail -s 'Backup Success' ${ALERT_EMAIL}" on_error: "echo 'Backup FAILED - Check logs' | mail -s 'BACKUP FAILURE' ${ALERT_EMAIL}" EOF # Execute backup fastcopy --profile /tmp/backup-${TIMESTAMP}.yaml --priority high # Cleanup old backups (keep last 7 days) find "${BACKUP_DEST}" -type d -mtime +7 -exec rm -rf {} + ``` ### Watch Directory for Changes ```yaml # watch-sync.yaml transfer: mode: "balanced" streams: 16 verify: true resume: on_failure paths: source: "/home/user/Documents" destination: "/mnt/cloud-sync/Documents" schedule: type: "watch" # monitor source for changes interval_seconds: 60 # check every 60 seconds debounce_ms: 5000 # wait 5s after last change filters: exclude: - ".DS_Store" - "*.tmp" - "~*" hooks: on_complete: "notify-send 'Documents synced'" ``` ### Parallel Multi-Source Backup ```bash #!/bin/bash # multi-source-backup.sh # Define multiple sources SOURCES=( "/var/www/app1:/backup/app1" "/var/www/app2:/backup/app2" "/home/user/data:/backup/user-data" ) # Run transfers in parallel for source_dest in "${SOURCES[@]}"; do IFS=':' read -r source dest <<< "$source_dest" fastcopy "$source" "$dest" \ --streams 16 \ --verify \ --log-file "/var/log/fastcopy/$(basename $source).log" & done # Wait for all transfers to complete wait echo "All backups completed" ``` ## Configuration Files ### Global Configuration ```yaml # ~/.fastcopy/config.yaml or /etc/fastcopy/config.yaml global: default_mode: "balanced" default_streams: 16 buffer_size_mb: 128 temp_directory: "/tmp/fastcopy" network: timeout_seconds: 300 retry_attempts: 3 retry_backoff_ms: 1000 integrity: algorithm: "sha256" # sha256, crc32, both verify_on_write: true performance: cpu_affinity: true # pin threads to cores io_priority: "normal" # low, normal, high, realtime logging: default_level: "info" console_output: true log_directory: "/var/log/fastcopy" ``` ## API Integration Examples ### OpenAI Integration ```yaml # ai-categorized-transfer.yaml transfer: mode: "turbo" streams: 32 paths: source: "/incoming/media" destination: "/organized/media" ai: provider: "openai" endpoint: "https://api.openai.com/v1" api_key_env: "OPENAI_API_KEY" model: "gpt-4-turbo" categorization: enabled: true prompt: "Analyze this filename and suggest a category folder: {filename}" auto_organize: true ``` ### Claude Integration ```yaml # claude-documentation.yaml transfer: mode: "balanced" streams: 16 paths: source: "/project/codebase" destination: "/backup/codebase" ai: provider: "claude" endpoint: "https://api.anthropic.com" api_key_env: "ANTHROPIC_API_KEY" model: "claude-3-opus-20240229" documentation: enabled: true generate_summary: true output_file: "/backup/transfer-report.md" ``` ## Troubleshooting ### Common Issues #### Transfer Hangs or Stalls ```bash # Reduce concurrent streams fastcopy source/ dest/ --streams 8 # Lower buffer size for memory-constrained systems fastcopy source/ dest/ --buffer-size-mb 64 # Check system resources fastcopy source/ dest/ --log-level debug ``` #### Permission Errors ```bash # Run with elevated privileges (use cautiously) sudo fastcopy /protected/source /backup/ # Or adjust ownership/permissions beforehand sudo chown -R $USER:$USER /destination/ ``` #### Integrity Check Failures ```bash # Re-run with verification enabled fastcopy source/ dest/ --verify --retry-on-error # Use both checksums for maximum reliability fastcopy source/ dest/ --integrity both --streams 8 # Check source file system for corruption fsck /dev/source_device ``` #### Network Transfer Issues ```bash # Increase timeout for slow networks fastcopy //remote/share /local/ --timeout 600 # Reduce streams for unstable connections fastcopy //remote/share /local/ --streams 4 --retry-attempts 5 # Use resume mode for unreliable connections fastcopy //remote/share /local/ --resume always ``` ### Logging and Debugging ```bash # Enable maximum verbosity fastcopy source/ dest/ --log-level debug --console-output # Write detailed logs to file fastcopy source/ dest/ --log-file /tmp/transfer.log --log-level debug # Monitor transfer statistics fastcopy source/ dest/ --stats realtime --progress bar ``` ### Performance Tuning ```bash # Maximum performance (high CPU/memory usage) fastcopy large_dataset/ /backup/ \ --mode turbo \ --streams 64 \ --buffer-size-mb 512 \ --priority realtime \ --no-verify # Balanced (recommended for most use cases) fastcopy data/ /backup/ \ --mode balanced \ --streams 16 \ --verify # Low resource usage fastcopy source/ dest/ \ --mode standard \ --streams 4 \ --buffer-size-mb 64 \ --priority low ``` ## Environment Variables ```bash # Configuration export FASTCOPY_CONFIG=/path/to/config.yaml export FASTCOPY_PROFILE=/path/to/default-profile.yaml # Credentials for AI integrations export OPENAI_API_KEY=sk-... export ANTHROPIC_API_KEY=sk-ant-... # Network settings export FASTCOPY_TIMEOUT=600 export FASTCOPY_RETRY_ATTEMPTS=5 # Performance tuning export FASTCOPY_STREAMS=32 export FASTCOPY_BUFFER_MB=256 # Logging export FASTCOPY_LOG_LEVEL=info export FASTCOPY_LOG_DIR=/var/log/fastcopy ``` ## Best Practices 1. **Always enable verification for critical data**: Use `--verify` flag 2. **Use profiles for repeated operations**: Maintain YAML configs in version control 3. **Start with fewer streams and scale up**: Test with `--streams 8` before increasing 4. **Monitor system resources during large transfers**: Use `htop` or Task Manager 5. **Implement proper error handling in automation**: Use hooks for alerting 6. **Keep logs for audit trails**: Configure persistent logging 7. **Test restoration procedures regularly**: Verify backups are recoverable 8. **Use appropriate mode for workload**: Don't always use `turbo` mode
Ver en GitHub