Rsync Memory Allocation Error
Recently, I’ve been working to improve our data backups at home (stay tuned for a future article). Part of my backup strategy involves syncing our main data repository with a drive in another system. This is done using rsync, one of my favorite Linux utilities.
I’ve used rsync successfully for many years, but recently I started experiencing a “memory allocation error(12)” while syncing data between my Linux system and a Windows Vista system, with the Linux system as the source. Using the Vista system as the source did not result in this error.
I searched all over the web looking for a resolution, but information was minimal and the best answer I found was to try splitting the rsync command into smaller chunks. Unfortunately, that didn’t work.
I noticed when this error occurred, the shares on the Vista system became inaccessible with a reboot of Windows the only workaround. This led me to investigate the event logs on the Vista machine. Lo and behold, there in the system log I see this:
“The server was unable to allocate from the system nonpaged pool because the server reached the configured limit for nonpaged pool allocations.”
A quick online search for this error message indicated it was caused by a problem with SMBv2, which is the default version of SMB used in Windows Vista. However, you can force Vista to use SMBv1 by making a simple registry change.
HKEY_LOCAL_MACHINE ->SYSTEM ->CurrentControlSet ->Services ->LanmanServer -> Parameters and create a DWORD called SMB2 with a value of 0.
With the value set in the registry and a quick reboot of Vista, rsync was able to complete successfully.



