Deprecated: Function get_magic_quotes_gpc() is deprecated in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 99

Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 619

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1169

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176
8000 GitHub - itiligent/RSYNC-ESXi: ESXi rsync build script | prebuilt executable download
Nothing Special   »   [go: up one dir, main page]

Skip to content

itiligent/RSYNC-ESXi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation


RSYNC for VMware ESXi

Rsync is a lightweight, proven tool for reliable file replication, migration, and backup. It is also a staple on Linux systems, but sadly VMware never included it with ESXi, perhaps favoring commercial backup solutions.

This project restores essential Linux functionality on VMware ESXi by providing a fully static and portable rsync build, enabling reliable host-to-host and datastore-to-datastore file replication.


Prebuilt Rsync Binaries:

If you dont wan't to build your own, download here:


🔨 Rsync Build Script Supported Platforms

Debian 13 | Ubuntu 24 | RHEL 9 & 10 | CentOS 9 & 10 | Fedora 42 & 43


Building Your ESXi Compatible Rsync Binary

All build files are created in $HOME/build-static

RedHat specific Notes:

  • The build script will first try to install the distro package glibc-static.
  • If glibc-static is unavailable in the OS repo, the script automatically builds glibc-static and extracts it to $HOME/build-static.
  1. On a fresh supported system, run the build script (not as root or sudo):

    ./rsync-esxi-builder-multiOS.sh
  2. Copy the compiled rsync binary from $HOME/build-static/rsync/bin to all ESXi hosts.

  3. On each ESXi host, set execute permissions on the new rsync executable:

    chmod 755 /path/to/rsync
  4. From ESXi 8 onwards you must manually permit execution of non-native binaries:

    esxcli system settings advanced set -o /User/execInstalledOnly -i 0
  5. Configure destination RSA SSH keys for passwordless host-to-host authentication.

    (Note: VMware ESXi 8 does not yet support Ed25519 keys for ESXi host-to-host sessions.)


💻 Companion Host-2-Host Robust Replication Script

This replication script is written in POSIX-compliant shell and supports replication between ESXi, BusyBox, and GNU/Linux systems.

The script provides:

  • Reliable ESXi-to-ESXi or Linux-to-ESXi replication
  • Fast/Safe copy modes for optimized transfer or reliability
  • Automatic failover and retries on network or file errors
  • Checksum verification for end-to-end data integrity
  • Detailed logging for auditing and troubleshooting
  • Automatic cleanup of orphan rsync processes

🚀 Getting started with the replication script

  1. Ensure an rsync binary is installed on both source and destination ESXi hosts.

  2. Set up RSA SSH keys for passwordless ssh access from the source host to the destination host.

  3. Configure script options for source | destination | rsync binary paths | private key | excl 58EF udes (optional)

  4. Choose your replication mode:

    • FAST: --fast – quick copy for high bw, networked filesystems or CPU constrained (minimal verification)
    • SAFE: --safe – slower but highly resilient, verifies all transferred data, can resume copy
  5. Optional flags:

    • --dry-run → Test the replication without copying files
    • --checksum → Verify file integrity after transfer
    • --checksum-type=<algo> → Specify checksum algorithm (xxh3, md5, etc.)
    • --no-excludes → Copy all files regardless of exclude list
  6. Run the replication script:

    ./rsync-host2-host.sh --safe --checksum
  7. Monitor the logs for progress and errors. Logs are saved with timestamps in the configured log directory.

  8. Recover from failures:

    • FAST mode automatically falls back to SAFE mode on errors or a user configurable timeout
    • Script will retry indefinitely (with user configurable retry intervals) until successful

About

ESXi rsync build script | prebuilt executable download

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

0