Bobcares

Rsync Error ode 12 – How we figure it out?

by | Oct 7, 2019

Backups and file transferring are important for server management. And Rsync is one of the best shots, but errors are always a setback.

Rsync error code 12 is a tricky error that occurs due to insufficient disk space, network errors and so on.

That is why at Bobcares, we often get requests to fix Rsync errors as a part of our Server Management Services.

Today, let’s see how our Support Engineers fix Rsync error code 12 for our customers.

Explaining Rsync error code 12

Rsync is one of the popular file synchronization tools. It is useful for both local and remote file transfer.

Explaining Rsync error code 12If the destination already contains the source file then the Rsync only copies the differences. This makes Rsync a faster file transfer option.

But, in many situations, the Rsync operation ends by showing the error message:

rsync error: error in rsync protocol data stream (code 12) at io.c(xxx).

So, why does the file transfer end by showing an error code 12?

Usually, the reason for this varies from insufficient disk space to network errors, improper destination, and so on.

Let’s now check on a few reasons and see how our Support Engineers fix them.

An Overview:

Impacts of Rsync Error Code 12

  • The error can stop ongoing file transfers, preventing the completion of synchronization tasks.
  • If backups are interrupted, they may result in partial data being saved, leading to potential data loss.
  • Regular backup processes are essential for server management; an error can disrupt these operations, affecting overall system performance.
  • Troubleshooting and resolving the error can lead to increased downtime, impacting business continuity.
  • Incomplete or failed transfers may compromise data integrity, making it difficult to restore systems reliably.
  • Errors can delay critical operations that rely on timely data synchronization or backup processes.
  • Continuous attempts to resolve the error can consume system resources, affecting other operations and potentially leading to further issues.

Causes and fixes for the Rsync error 12

Whenever a server operation ends up in error, the initial troubleshooting starts from the log file. In the case of Rsync, our Support Engineers always make sure to set up the log file right. As a result, the reason that leads to the error can be easily found out from the log file.

The most common reasons for the Rsync error code 12 are:

1. Insufficient Disk Space

The destination server may not have enough disk space to accommodate the incoming files.

Fix:

Before transferring large files, check available disk space by running:

df -h

Ensure that the free space exceeds the size of the largest file being transferred. If not, clear some space or increase the disk capacity.

2. Missing Rsync on Remote Server

If Rsync is not installed on the destination server, it will lead to this error.

Fix:

Verify that Rsync is installed on the remote server by executing:

rsync –version

If Rsync is not installed, install it using:
apt-get install rsync

3. Idle Connection

An idle connection can time out during long transfers, triggering error code 12.

Fix:

Use the –timeout option in your Rsync command to keep connections alive:

rsync --timeout=60 ...

Additionally, configure SSH settings to maintain connectivity by editing the SSH configuration file (usually located at /etc/ssh/sshd_config) to include:


ClientAliveInterval 60
ClientAliveCountMax 5

4. Network Errors

Interruptions in network connectivity can disrupt file transfers.

Fix:

Check your network connection to ensure both servers are reachable by using:

ping remote-server-ip

Use traceroute to diagnose network issues if necessary.

5. Mismatched Rsync Versions

Different versions of Rsync on the source and destination can lead to compatibility issues.

Fix:

Check the version of Rsync on both systems:

rsync –version

Ensure both systems are running compatible versions of Rsync and update if necessary.

6. File Permissions Issues

Lack of necessary permissions on files or directories can prevent successful transfers.

Fix:

Check permissions of the source and destination directories using:

ls -l /path/to/directory

We can modify permissions if needed with:

chmod -R 755 /path/to/directory

7. Large Number of Files

Transferring a very large number of small files can overwhelm system resources.

Fix:

Consider compressing files before transfer to reduce the number of individual files being sent.

tar -czf archive.tar.gz /path/to/files/

Alternatively, use Rsync’s –inplace option to reduce resource usage during transfer:

rsync --inplace ...

Prevention Strategies

  • Implement monitoring tools to alert administrators when disk space is low.
  • Regularly check for software updates and ensure all necessary tools are installed on both servers.
  • Test network stability before large transfers and consider using VPNs for secure connections.
  • Utilize options like –partial to allow resuming interrupted transfers without starting over.

[Having trouble in fixing Rsync errors? – We’ll help you.]

Conclusion

In short, Rsync error code 12 denotes ‘error in rsync protocol data stream’. Usually, this error occurs due to insufficient disk space, missing Rsync at the destination, idle connection timeout and so on. Today, we saw how our Support Engineers fix this error for our customers.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

GET STARTED

var google_conversion_label = "owonCMyG5nEQ0aD71QM";

5 Comments

  1. Victor Lee

    I restart rsync daemon process resolve this problem.

    Reply
  2. Daniel Doron

    Thanks. it was helpful. I was trying to rsync a docker running on AWS instance. the docker’s fingerprint changed and had to first ssh into the docker to have it updated.

    Reply
  3. Charles Roth

    Another cause for this problem is a mismatch between rsync and ssh. For example, on a Windows laptop with Cygwin, using the cygwin rsync with the Windows ssh will cause this error. A solution in that case is to make sure to install the cygwin ssh.

    Reply
    • Maheen Aboobakkar

      Thank you for the update Charles.

      Reply
  4. Sir Intellegence

    Another item you may want to add that I figured out since this was one of the top Google results. If you are on Windows, have Cygwin installed, and invoke rsync outside of a cygwin console, you will get a rsync 12 error since rsync is trying to use the wrong ssh. Apparently the window’s built in one doesn’t work with rsync and you need to use -e to pass the correct one.

    Reply

Submit a Comment

Your email address will not be published. Required fields are marked *

Never again lose customers to poor
server speed! Let us help you.

Privacy Preference Center

Necessary

Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

PHPSESSID - Preserves user session state across page requests.

gdpr[consent_types] - Used to store user consents.

gdpr[allowed_cookies] - Used to store user allowed cookies.

PHPSESSID, gdpr[consent_types], gdpr[allowed_cookies]
PHPSESSID
WHMCSpKDlPzh2chML

Statistics

Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.

_ga - Preserves user session state across page requests.

_gat - Used by Google Analytics to throttle request rate

_gid - Registers a unique ID that is used to generate statistical data on how you use the website.

smartlookCookie - Used to collect user device and location information of the site visitors to improve the websites User Experience.

_ga, _gat, _gid
_ga, _gat, _gid
smartlookCookie
_clck, _clsk, CLID, ANONCHK, MR, MUID, SM

Marketing

Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.

IDE - Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user.

test_cookie - Used to check if the user's browser supports cookies.

1P_JAR - Google cookie. These cookies are used to collect website statistics and track conversion rates.

NID - Registers a unique ID that identifies a returning user's device. The ID is used for serving ads that are most relevant to the user.

DV - Google ad personalisation

_reb2bgeo - The visitor's geographical location

_reb2bloaded - Whether or not the script loaded for the visitor

_reb2bref - The referring URL for the visit

_reb2bsessionID - The visitor's RB2B session ID

_reb2buid - The visitor's RB2B user ID

IDE, test_cookie, 1P_JAR, NID, DV, NID
IDE, test_cookie
1P_JAR, NID, DV
NID
hblid
_reb2bgeo, _reb2bloaded, _reb2bref, _reb2bsessionID, _reb2buid

Security

These are essential site cookies, used by the google reCAPTCHA. These cookies use an unique identifier to verify if a visitor is human or a bot.

SID, APISID, HSID, NID, PREF
SID, APISID, HSID, NID, PREF