{"id":52641,"date":"2025-12-10T09:56:47","date_gmt":"2025-12-10T09:56:47","guid":{"rendered":"https:\/\/accuweb.cloud\/resource\/?post_type=faq&#038;p=52641"},"modified":"2026-02-17T11:44:51","modified_gmt":"2026-02-17T11:44:51","slug":"linux-real-time-file-sync-rsync-inotifywait","status":"publish","type":"faq","link":"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait","title":{"rendered":"How to Use inotifywait and rsync for Live File Sync Between Linux Servers"},"content":{"rendered":"<h2 class=\"ack-h2\">How to Use inotifywait and rsync for Live File Sync Between Linux Servers<\/h2>\n<p>When managing multiple Linux servers, keeping files synchronized in real time can be challenging. Manual syncing or running periodic cron jobs may not be efficient, especially if your files change often. Fortunately, you can automate this process using two powerful Linux tools: <b>inotifywait<\/b> and <b>rsync<\/b>.<\/p>\n<p>In this guide, we\u2019ll show you how to set up a <b>real-time file synchronization<\/b> system between two Linux servers, ensuring that whenever a file changes on the first server, it\u2019s instantly updated on the second one. This solution is lightweight, reliable, and easy to implement.<\/p>\n<h2 class=\"ack-h2\">What You&#8217;ll Need for This Setup<\/h2>\n<p>Before we dive into the steps, let\u2019s make sure you have everything ready.<\/p>\n<ul class=\"ack-ul\">\n<li><b>Two Linux Servers (VPS1 and VPS2)<\/b>: One server will be the source, where files will be modified or created, and the other will be the destination, where those changes will be synced.<\/li>\n<li><b>Root or Sudo Access<\/b>: You&#8217;ll need root permissions on both servers.<\/li>\n<li><b>SSH Access<\/b>: SSH must be set up between the servers to allow file syncing without passwords.<\/li>\n<\/ul>\n<h3 class=\"ack-h3\">Why inotifywait + rsync?<\/h3>\n<p>While tools like rsync alone are great for copying files, they don\u2019t \u201cwatch\u201d for changes. That\u2019s where inotifywait shines\u2014it monitors filesystem events. Pair the two, and you\u2019ve got an automatic, real-time sync setup without heavy software.<\/p>\n<h3 class=\"ack-h3\">Step 1 \u2013 Set up SSH keys so you don\u2019t need passwords<\/h3>\n<p>We want Server A to send files to Server B without typing a password every time.<\/p>\n<p><b>On Server A (source):<\/b><\/p>\n<p>1. Generate an SSH key pair if you don\u2019t already have one:<\/p>\n<pre><code class=\"language-javascript\"><b>ssh-keygen -t rsa<\/b><\/code><button class=\"copy-btn\">Copy<\/button><\/pre>\n<p>Just hit Enter through the prompts unless you want to change the default location.<\/p>\n<p>2. Copy the key to Server B:<\/p>\n<pre><code class=\"language-javascript\"><b>ssh-copy-id root@your_server_b_ip<\/b><\/code><button class=\"copy-btn\">Copy<\/button><\/pre>\n<p>You\u2019ll type the password for Server B one last time.<\/p>\n<p>3. Test it:<\/p>\n<pre><code class=\"language-javascript\"><b>ssh root@your_server_b_ip<\/b><\/code><button class=\"copy-btn\">Copy<\/button><\/pre>\n<p>If you log in without a password, you\u2019re good to go.<\/p>\n<h3 class=\"ack-h3\">Step 2 \u2013 Install inotify-tools on Server A<\/h3>\n<p>This package gives you the inotifywait command.<\/p>\n<ul class=\"ack-ul\">\n<li>For Ubuntu\/Debian:\n<pre><code class=\"language-javascript\">apt update &amp;&amp; apt install inotify-tools -y<\/code><button class=\"copy-btn\">Copy<\/button><\/pre>\n<\/li>\n<li>For CentOS\/RHEL\/AlmaLinux:\n<pre><code class=\"language-javascript\">yum install inotify-tools -y<\/code><button class=\"copy-btn\">Copy<\/button><\/pre>\n<\/li>\n<\/ul>\n<div class=\"article-space\"><\/div>\n\t\t<div data-elementor-type=\"section\" data-elementor-id=\"38668\" class=\"elementor elementor-38668\" data-elementor-settings=\"{&quot;ha_cmc_init_switcher&quot;:&quot;no&quot;}\" data-elementor-post-type=\"elementor_library\">\n\t\t\t        <section class=\"elementor-section elementor-top-section elementor-element elementor-element-882321f elementor-section-boxed elementor-section-height-default elementor-section-height-default ct-header-fixed-none ct-row-max-none\" data-id=\"882321f\" data-element_type=\"section\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n            \n                        <div class=\"elementor-container elementor-column-gap-default \">\n                    <div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7cc79cc\" data-id=\"7cc79cc\" data-element_type=\"column\">\n        <div class=\"elementor-widget-wrap elementor-element-populated\">\n                    \n        \t\t<div class=\"elementor-element elementor-element-e31b40f elementor-widget elementor-widget-shortcode\" data-id=\"e31b40f\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t            <\/div>\n        <\/div>\n                    <\/div>\n        <\/section>\n        \t\t<\/div>\n\t\t\n<div class=\"article-space\"><\/div>\n<h3 class=\"ack-h3\">Step 3 \u2013 Create the sync script<\/h3>\n<p>This script will watch a folder and run rsync whenever something changes.<\/p>\n<p><b>1. Create the script file:<\/b><\/p>\n<pre><code class=\"language-javascript\">nano \/usr\/local\/bin\/<a href=\"http:\/\/realtime-sync.sh\">realtime-sync.sh<\/a><\/code><button class=\"copy-btn\">Copy<\/button><\/pre>\n<p><b>2. Paste this inside:<\/b><\/p>\n<pre><code class=\"language-javascript\">#!\/bin\/bash\r\n\r\n# Folder to watch on Server A\r\nSOURCE=\"\/var\/www\/html\/\"\r\n\r\n# Destination on Server B (change the IP!)\r\nDEST=\"root@your_server_b_ip:\/var\/www\/html\/\"\r\n\r\n# Watch for changes and sync when they happen\r\nwhile inotifywait -r -e modify,create,delete,move \"$SOURCE\"; do\r\n\u00a0 \u00a0 rsync -az --delete \"$SOURCE\" \"$DEST\"\r\ndone<\/code><button class=\"copy-btn\">Copy<\/button><\/pre>\n<p><b>What\u2019s happening here?<\/b><\/p>\n<ul class=\"ack-ul\">\n<li>SOURCE is the folder you want to monitor (e.g., \/var\/www\/html).<\/li>\n<li>DEST is where files go on Server B (update the IP!).<\/li>\n<li>inotifywait watches for edits, new files, deletions, and moves.<\/li>\n<li>rsync -az &#8211;delete syncs with compression, preserves permissions, and removes files on Server B if they\u2019re deleted on Server A.<\/li>\n<\/ul>\n<p><b>3. Make it executable:<\/b><\/p>\n<pre><code class=\"language-javascript\">chmod +x \/usr\/local\/bin\/realtime-sync.sh<\/code><button class=\"copy-btn\">Copy<\/button><\/pre>\n<h3 class=\"ack-h3\">Step 4 \u2013 Run it as a service (so it survives reboots)<\/h3>\n<p>Let\u2019s create a systemd service to keep the script running.<\/p>\n<ul class=\"ack-ul\">\n<li><b>Create the service file:<\/b><\/li>\n<\/ul>\n<pre><code class=\"language-javascript\">nano \/etc\/systemd\/system\/realtime-sync.service<\/code><button class=\"copy-btn\">Copy<\/button><\/pre>\n<ul class=\"ack-ul\">\n<li><b>Add this:<\/b><\/li>\n<\/ul>\n<pre><code class=\"language-javascript\">[Unit]\r\nDescription=Real-Time File Sync from Server A to Server B\r\nAfter=network.target\r\n\r\n[Service]\r\nExecStart=\/usr\/local\/bin\/realtime-sync.sh\r\nRestart=always\r\nUser=root\r\n\r\n[Install]\r\nWantedBy=multi-user.target<\/code><button class=\"copy-btn\">Copy<\/button><\/pre>\n<p>\u00a0\u00a0<\/p>\n<ul class=\"ack-ul\">\n<li><b>Start and enable it:<\/b><\/li>\n<\/ul>\n<pre><code class=\"language-javascript\">systemctl daemon-reload<\/code><button class=\"copy-btn\">Copy<\/button><\/pre>\n<pre><code class=\"language-javascript\">systemctl enable realtime-sync<\/code><button class=\"copy-btn\">Copy<\/button><\/pre>\n<pre><code class=\"language-javascript\">systemctl start realtime-sync<\/code><button class=\"copy-btn\">Copy<\/button><\/pre>\n<ul class=\"ack-ul\">\n<li><b>Check if it\u2019s running:<\/b><\/li>\n<\/ul>\n<pre><code class=\"language-javascript\">systemctl status realtime-sync<\/code><button class=\"copy-btn\">Copy<\/button><\/pre>\n<p>You should see active (running).<\/p>\n<h3 class=\"ack-h3\">Step 5 \u2013 Test it!<\/h3>\n<p>On Server A, create a test file:<\/p>\n<ul class=\"ack-ul\">\n<li>echo &#8220;Hello from Server A!&#8221; &gt; \/var\/www\/html\/test.txt<\/li>\n<\/ul>\n<p>Now hop over to Server B and check the same folder:<\/p>\n<ul class=\"ack-ul\">\n<li>ls \/var\/www\/html\/<\/li>\n<\/ul>\n<p>You should see test.txt there almost immediately.<\/p>\n<div class=\"article-space\"><\/div>\n\t\t<div data-elementor-type=\"section\" data-elementor-id=\"38668\" class=\"elementor elementor-38668\" data-elementor-settings=\"{&quot;ha_cmc_init_switcher&quot;:&quot;no&quot;}\" data-elementor-post-type=\"elementor_library\">\n\t\t\t        <section class=\"elementor-section elementor-top-section elementor-element elementor-element-882321f elementor-section-boxed elementor-section-height-default elementor-section-height-default ct-header-fixed-none ct-row-max-none\" data-id=\"882321f\" data-element_type=\"section\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n            \n                        <div class=\"elementor-container elementor-column-gap-default \">\n                    <div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7cc79cc\" data-id=\"7cc79cc\" data-element_type=\"column\">\n        <div class=\"elementor-widget-wrap elementor-element-populated\">\n                    \n        \t\t<div class=\"elementor-element elementor-element-e31b40f elementor-widget elementor-widget-shortcode\" data-id=\"e31b40f\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t            <\/div>\n        <\/div>\n                    <\/div>\n        <\/section>\n        \t\t<\/div>\n\t\t\n<div class=\"article-space\"><\/div>\n<h3 class=\"ack-h3\">How it all works under the hood<\/h3>\n<ul class=\"ack-ul\">\n<li>inotifywait sits and watches your source folder.<\/li>\n<li>The moment a change happens, it triggers the rsync command.<\/li>\n<li>rsync copies only what\u2019s changed (efficiently).<\/li>\n<li>The systemd service keeps the script running 24\/7, and it restarts if anything goes wrong.<\/li>\n<\/ul>\n<p><b>Wrapping up<\/b><\/p>\n<p>And that\u2019s it! You\u2019ve now got a real-time, light-weight sync running between your Linux servers. No more manual updates or waiting for cron jobs\u2014it just works.<\/p>\n<h3 class=\"ack-h3\">Want to customize it further? You could:<\/h3>\n<ul class=\"ack-ul\">\n<li>Exclude certain files or folders (like cache\/ or *.log).<\/li>\n<li>Add two-way sync (by setting up a similar process in reverse).<\/li>\n<li>Log changes to a file for auditing.<\/li>\n<li>Watch multiple directories.<\/li>\n<\/ul>\n<div class=\"main-tooltip-btn\"><a class=\"tooltip-link\" href=\"https:\/\/accuweb.cloud\/compute\/cloud-vps\" target=\"_blank\" rel=\"noopener\"><button class=\"tooltip-btn\">Deploy Linux VPS Now <i class=\"fa-solid fa-arrow-right-long\"><\/i><br \/>\n<\/button><\/a><\/div>\n<p style=\"text-align: center;\">Ideal for rsync, backups, automation, and real-time sync workloads.<\/p>\n","protected":false},"author":1,"featured_media":52879,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","class_list":["post-52641","faq","type-faq","status-publish","has-post-thumbnail","hentry","faq_topics-elastic-vps","faq_topics-kb","faq_topics-linux-file-sync-with-rsync-and-inotifywait","faq_topics-product-documentation"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.10 (Yoast SEO v24.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Set Up Real-Time Linux File Sync with rsync and inotifywait<\/title>\n<meta name=\"description\" content=\"Learn how to sync files instantly across Linux servers using rsync and inotifywait. Real-time mirroring without cron jobs or delays.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Use inotifywait and rsync for Live File Sync Between Linux Servers\" \/>\n<meta property=\"og:description\" content=\"Learn how to sync files instantly across Linux servers using rsync and inotifywait. Real-time mirroring without cron jobs or delays.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait\" \/>\n<meta property=\"og:site_name\" content=\"AccuWeb Cloud\" \/>\n<meta property=\"article:modified_time\" content=\"2026-02-17T11:44:51+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1280\" \/>\n\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait#article\",\"isPartOf\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait\"},\"author\":{\"name\":\"Jilesh Patadiya\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/#\/schema\/person\/a7a4cbe8405202b537509c757b588c58\"},\"headline\":\"How to Use inotifywait and rsync for Live File Sync Between Linux Servers\",\"datePublished\":\"2025-12-10T09:56:47+00:00\",\"dateModified\":\"2026-02-17T11:44:51+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait\"},\"wordCount\":650,\"publisher\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/#organization\"},\"image\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait#primaryimage\"},\"thumbnailUrl\":\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg\",\"inLanguage\":\"en-US\"},{\"@type\":[\"WebPage\",\"FAQPage\"],\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait\",\"url\":\"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait\",\"name\":\"Set Up Real-Time Linux File Sync with rsync and inotifywait\",\"isPartOf\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait#primaryimage\"},\"image\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait#primaryimage\"},\"thumbnailUrl\":\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg\",\"datePublished\":\"2025-12-10T09:56:47+00:00\",\"dateModified\":\"2026-02-17T11:44:51+00:00\",\"description\":\"Learn how to sync files instantly across Linux servers using rsync and inotifywait. Real-time mirroring without cron jobs or delays.\",\"breadcrumb\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait#primaryimage\",\"url\":\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg\",\"contentUrl\":\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg\",\"width\":1280,\"height\":720},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/accuweb.cloud\/resource\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Use inotifywait and rsync for Live File Sync Between Linux Servers\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/#website\",\"url\":\"https:\/\/accuweb.cloud\/resource\/\",\"name\":\"AccuWeb Cloud\",\"description\":\"Cutting Edge Cloud Computing\",\"publisher\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/accuweb.cloud\/resource\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/#organization\",\"name\":\"AccuWeb.Cloud\",\"url\":\"https:\/\/accuweb.cloud\/resource\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/accuwebcloud_logo_black_tagline.jpg\",\"contentUrl\":\"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/accuwebcloud_logo_black_tagline.jpg\",\"width\":156,\"height\":87,\"caption\":\"AccuWeb.Cloud\"},\"image\":{\"@id\":\"https:\/\/accuweb.cloud\/resource\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/#\/schema\/person\/a7a4cbe8405202b537509c757b588c58\",\"name\":\"Jilesh Patadiya\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/accuweb.cloud\/resource\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/2cea2bdb5bbabb771ee67e96acad7396f25cb1a0c360b9bc4a9ac40cea9cd8b2?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/2cea2bdb5bbabb771ee67e96acad7396f25cb1a0c360b9bc4a9ac40cea9cd8b2?s=96&d=mm&r=g\",\"caption\":\"Jilesh Patadiya\"},\"description\":\"Jilesh Patadiya, the visionary Co-Founder and Chief Technology Officer (CTO) behind AccuWeb.Cloud. Founder &amp; CTO at AccuWebHosting.com. He shares his web hosting insights on the AccuWeb.Cloud blog. He mostly writes on the latest web hosting trends, WordPress, storage technologies, and Windows and Linux hosting platforms.\",\"sameAs\":[\"https:\/\/accuweb.cloud\/resource\",\"https:\/\/www.facebook.com\/accuwebhosting\",\"https:\/\/www.instagram.com\/accuwebhosting\/\",\"https:\/\/www.linkedin.com\/company\/accuwebhosting\/\",\"https:\/\/x.com\/accuwebhosting\",\"https:\/\/www.youtube.com\/c\/Accuwebhosting\"],\"url\":\"https:\/\/accuweb.cloud\/resource\/author\/accuwebadmin\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Set Up Real-Time Linux File Sync with rsync and inotifywait","description":"Learn how to sync files instantly across Linux servers using rsync and inotifywait. Real-time mirroring without cron jobs or delays.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait","og_locale":"en_US","og_type":"article","og_title":"How to Use inotifywait and rsync for Live File Sync Between Linux Servers","og_description":"Learn how to sync files instantly across Linux servers using rsync and inotifywait. Real-time mirroring without cron jobs or delays.","og_url":"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait","og_site_name":"AccuWeb Cloud","article_modified_time":"2026-02-17T11:44:51+00:00","og_image":[{"width":1280,"height":720,"url":"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait#article","isPartOf":{"@id":"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait"},"author":{"name":"Jilesh Patadiya","@id":"https:\/\/accuweb.cloud\/resource\/#\/schema\/person\/a7a4cbe8405202b537509c757b588c58"},"headline":"How to Use inotifywait and rsync for Live File Sync Between Linux Servers","datePublished":"2025-12-10T09:56:47+00:00","dateModified":"2026-02-17T11:44:51+00:00","mainEntityOfPage":{"@id":"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait"},"wordCount":650,"publisher":{"@id":"https:\/\/accuweb.cloud\/resource\/#organization"},"image":{"@id":"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait#primaryimage"},"thumbnailUrl":"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg","inLanguage":"en-US"},{"@type":["WebPage","FAQPage"],"@id":"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait","url":"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait","name":"Set Up Real-Time Linux File Sync with rsync and inotifywait","isPartOf":{"@id":"https:\/\/accuweb.cloud\/resource\/#website"},"primaryImageOfPage":{"@id":"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait#primaryimage"},"image":{"@id":"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait#primaryimage"},"thumbnailUrl":"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg","datePublished":"2025-12-10T09:56:47+00:00","dateModified":"2026-02-17T11:44:51+00:00","description":"Learn how to sync files instantly across Linux servers using rsync and inotifywait. Real-time mirroring without cron jobs or delays.","breadcrumb":{"@id":"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait#primaryimage","url":"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg","contentUrl":"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/07\/NEW-OG-IMAGE-URL.jpg","width":1280,"height":720},{"@type":"BreadcrumbList","@id":"https:\/\/accuweb.cloud\/resource\/articles\/linux-real-time-file-sync-rsync-inotifywait#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/accuweb.cloud\/resource\/"},{"@type":"ListItem","position":2,"name":"How to Use inotifywait and rsync for Live File Sync Between Linux Servers"}]},{"@type":"WebSite","@id":"https:\/\/accuweb.cloud\/resource\/#website","url":"https:\/\/accuweb.cloud\/resource\/","name":"AccuWeb Cloud","description":"Cutting Edge Cloud Computing","publisher":{"@id":"https:\/\/accuweb.cloud\/resource\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/accuweb.cloud\/resource\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/accuweb.cloud\/resource\/#organization","name":"AccuWeb.Cloud","url":"https:\/\/accuweb.cloud\/resource\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/accuweb.cloud\/resource\/#\/schema\/logo\/image\/","url":"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/accuwebcloud_logo_black_tagline.jpg","contentUrl":"https:\/\/accuweb.cloud\/resource\/wp-content\/uploads\/2024\/04\/accuwebcloud_logo_black_tagline.jpg","width":156,"height":87,"caption":"AccuWeb.Cloud"},"image":{"@id":"https:\/\/accuweb.cloud\/resource\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/accuweb.cloud\/resource\/#\/schema\/person\/a7a4cbe8405202b537509c757b588c58","name":"Jilesh Patadiya","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/accuweb.cloud\/resource\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/2cea2bdb5bbabb771ee67e96acad7396f25cb1a0c360b9bc4a9ac40cea9cd8b2?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2cea2bdb5bbabb771ee67e96acad7396f25cb1a0c360b9bc4a9ac40cea9cd8b2?s=96&d=mm&r=g","caption":"Jilesh Patadiya"},"description":"Jilesh Patadiya, the visionary Co-Founder and Chief Technology Officer (CTO) behind AccuWeb.Cloud. Founder &amp; CTO at AccuWebHosting.com. He shares his web hosting insights on the AccuWeb.Cloud blog. He mostly writes on the latest web hosting trends, WordPress, storage technologies, and Windows and Linux hosting platforms.","sameAs":["https:\/\/accuweb.cloud\/resource","https:\/\/www.facebook.com\/accuwebhosting","https:\/\/www.instagram.com\/accuwebhosting\/","https:\/\/www.linkedin.com\/company\/accuwebhosting\/","https:\/\/x.com\/accuwebhosting","https:\/\/www.youtube.com\/c\/Accuwebhosting"],"url":"https:\/\/accuweb.cloud\/resource\/author\/accuwebadmin"}]}},"_links":{"self":[{"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/faq\/52641","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/faq"}],"about":[{"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/types\/faq"}],"author":[{"embeddable":true,"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/comments?post=52641"}],"version-history":[{"count":9,"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/faq\/52641\/revisions"}],"predecessor-version":[{"id":52910,"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/faq\/52641\/revisions\/52910"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/media\/52879"}],"wp:attachment":[{"href":"https:\/\/accuweb.cloud\/resource\/wp-json\/wp\/v2\/media?parent=52641"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}