Solution: bash: /usr/local/bin/rsync: Argument list too long

Complicated things possible

This issue came from Unix limitation of command argument memory maximum size. And the solution is straightforward: don’t use <directory>/*, use <directory> instead. Here I show you how the issue came out and how I make it work again.

Issue

oracle@stbyserver ~]$ rsync -n -u -r -vz oracle@prodserver:/archive/prod/* /archive/stby/
bash: /usr/bin/rsync: Argument list too long
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: remote command could not be run (code 126) at io.c(463) [receiver=2.6.8]
Well, it hit the same wall as command ls does:
[oracle@prodserver ~]$ ls /archive/prod/*
-bash: /bin/ls: Argument list too long
 

Solution

[oracle@stbyserver ~]$ rsync -n -u -r -vz oracle@prodserver:/archive/prod /archive/
receiving file list ... done
prod/1_878494_893489722.dbf
...
sent 48 bytes  received 95579 bytes  27322.00 bytes/sec
total size is 10151739904  speedup is 106159.77
It is time to rsync again:
[oracle@stbyserver ~]$ rsync -avz oracle@prodserver:/archive/prod /archive/

Reason

Well, this limitation came from Unix…

View original post 63 more words

Fun with PXE boot Centos 6.3 and SuperMicro

Recently at work we decided to upgrade our Hadoop capacity by adding new machines, the new machines bought were Supermicro X9DRL-7F.

I thought it would be pretty simple task to install OS on it as we already have the DHCP+TFTP setup followed by the Ansible role ( so piece of cake to install and provision machines ) and that too in production and in use for a while now.

 

To my surprise the new machine were able to get the the DHCP lease ip but kickstart was not able to download, and that started a a funny troubleshooting journey.

To cut story short eventually it turns out that

The  Supermicro –  X9DRL-7F is not compatible with Centos 6.3 , because the igb driver is pretty old in centos 6.3 kernel . ( surprisingly their OS compatibility chart doesn’t have this info )

To fix the issue I have to

Add the igb-4.3.0-1 support in the initial ramdisk of centos 6.3

That fixed the PXE issue, except during PXE installation it flags the unsupported hardware detected warning  but the server was  provisioned using PXE.

But .. after the OS load and reboot the server didn’t had the networking 😦

I have fixed that only in ramdisk only actual kernel that’s installed still had older version of igb ( 3.2.10-k ). So I decided to recompile the kernel with this new igb driver.

But .. then I realized that I can create a RPM out of  igb 4.3.0 source. I quickly created a RPM out of it tested on one of the centos 6.3 machine and added that RPM to our repo.

Finally I fixed thee kickstart of Centos 6.3 and added a section to install igb-4.3.0 rpm as a final step.

viola that worked like a charm

quite a work by the way.

 

So if you are planning or have Supermicro X9DRL and facing issues with networking you know its igb driver that’s playing naughty there.

 

Edit :

I didn’t faced the issue during our older hadoop deploy since the older hardware was different ( SuperMicro X8DTL ) so do the network driver.