The script works by:
Initializing from a config file (GnuRAMage.ini), checking paths and dependencies (rsync). Performing an initial copy of specified files/directories from a source (e.g., HDD) to the RAM disk. Entering a monitoring loop to periodically synchronize changes from the RAM disk back to the source using rsync. Handling interruptions (like Ctrl+C) gracefully with a final sync attempt before exiting. Key features:
Simple INI configuration. Rsync-style exclusion patterns. Dry-run mode for testing. Comprehensive logging. One-time sync mode. Optional checksum verification. Can generate standalone scripts for initial copy and periodic sync, useful for cron or systemd. It's built with Bash and rsync, aiming for simplicity.
Installation is straightforward:
Bash
git clone git@github.com:FPGArtktic/GnuRAMage.git cd GnuRAMage chmod +x gramage.sh # Then copy GnuRAMage.ini.example to GnuRAMage.ini and configure I created GnuRAMage to solve my own challenges with making large RAM disks practical and safe. I'm looking for feedback, suggestions, and any use cases I might have overlooked.
GitHub (includes full README with detailed config, options, testing, etc.): https://github.com/FPGArtktic/GnuRAMage
Thanks for checking it out!
atmanactive•1d ago
compressedgas•32m ago