I have a 8 CPU VmWare ESX server (3.5) with 4 HDD drives in RAID that is not loaded at all. I enabled SSH and installed mc (midnight commander) in order to be able to copy(clone) virtual machines but I observed that if does copy the files very slow - around 3.5mb/s on local drive.
Why is this happening and how should I solve the issue?
As the others have mentioned the ESX Service Console user environment is not really optimized for performance so apps that are not specifically designed to interface with ESX tend to perform very poorly. Veeam FastSCP generally outperforms anything else that I've tried for copying data directly to\from\between ESX and ESXi hosts and it's worth trying that if you are dealing with multiple ESX(i) systems but if you are moving stuff around (or copying) within the one ESX host then the VI Client or the native console interface\remote CLI tools are what you should be using.
vmkfstools -i (import) is the recommended way to do this from the command line, you can find some details on the syntax here but use man vmkfstools from the ESX console for accurate syntax.
The ESX userland software is in reality a virtual machine, with limited hardware resources. The vmkernel is the OS with the actual resources aviable (wich distributes it to virtual machines). Doing anything against a ESX server via SSH/FTP/etc is considered to be generally slow.
Since you don't provide any info about your RAID hardware I can only guess that you have a low-end RAID-card, with limited cache on it and a 4-disk RAID5 setup. This generally kills I/O performance when copying from/to the same array.
Also, why are you trying to clone virtual machines with midnight commander? The vSphere Client is the tool to clone virtual machines (right click it).
The vmware service console is rate-limited for network and disk throughput. I do believe the client would run the process faster than performing the operation from the service console.
Calling the service console "rate-limited" is an understatement. It took me about 15 minutes to copy 87 kB (that's KILObytes) spread across seven files from an in-chassis datastore (a 15k 300GB drive, no raid) to an iSCSI datastore (clocked at 117 MB/s sequential write before formatting it as VMFS). During this time, there were no VMs running, and the SAN network was under no load except that which this machine was putting on it.
On the other hand, it took me only two hours to copy 40 GB between the same two datastores later in the day... even if it should have taken at most 20 minutes.