Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Re^2: Net::OpenSSH rsync_get/rsync_put

by shivangi (Initiate)
on Nov 28, 2013 at 08:39 UTC ( [id://1064768]=note: print w/replies, xml ) Need Help??


in reply to Re: Net::OpenSSH rsync_get/rsync_put
in thread Net::OpenSSH rsync_get/rsync_put

Hello Salva, The file gets successfully transferred by rsync_put but i am not able to see its progress. I had set the progress atrribute to 1, still the transfer progress of file isn't visible. Is there any way through which it can be shown ??? The transfer progress ????

Replies are listed 'Best First'.
Re^3: Net::OpenSSH rsync_get/rsync_put
by salva (Canon) on Nov 28, 2013 at 08:47 UTC
    Post the code where you call Net::OpenSSH constructor.

    Also, enable the module debugging mode and post the output here:

    $Net::OpenSSH::debug = -1;

      Hi Salva, thanks for the quick replies. PFB the output + constructor code.

      .... .... ....... for my $_entry (@_hosts) { eval { $_ssh{$_entry} = Net::OpenSSH->new($_entry, us +er=>$config{_ssh_user}, password=>$config{_ssh_passwd}, async => 1, master_opts => [-o => "St +rictHostKeyChecking=no"]); if($_ssh{$_entry}->error) { die CLI::Exception::SSHConnectExceptio +n->new() ; } else { $logger->debug("Successfully establis +hed SSH connection with ", $_entry); } }; if(catch my $_e) { if ($_e->isa('CLI::Exception')) { $logger->error($_e->description, " wit +h ", $_entry); print $_e->description." with $_entry +\n"; } } } if($_command eq "getfile") { for my $_entry (@_hosts) { $_pid{$_entry} = $_ssh{$_entry}->rsync_get({as +ync => 1, stderr_fh=>$fh, progress=> 1, recursive => 1}, "/home/shagu +n/check.c", "/home/shivangi/") or ($logger->error("rsync_get to $_entry failed") + and print "rsync_get to $_entry failed\n"); } } elsif($_command eq "putfile") { for my $_entry (@_hosts) { $_pid{$_entry} = $_ssh{$_entry}->rsync_put({as +ync => 1, stderr_fh=>$fh, recursive => 1, progress => 1 }, "/home/shi +vangi/shwetabh.img", "/home/shagun/") .... ... ... .. When i execute the code with debug mode enabled, output is: garfield:/home/shivangi/CLI_14/lib1 # ./Application.pl garfield>putfile region-group groupB # open_ex: ['ssh','-O','check','-T','-S','/root/.libnet-openssh-perl/r +oot-10.112.35.43-3848-813787','-l','root','10.112.35.43','--'] # _waitpid(3981) => pid: 3981, rc: # open_ex: ['rsync','-e','ssh -S /root/.libnet-openssh-perl/root-10.11 +2.35.43-3848-813787','--blocking-io','-q','--recursive','--progress', +'--','/home/shivangi/shwetabh.img','root@10.112.35.43:/home/shagun/'] # open_ex: ['ssh','-O','check','-T','-S','/root/.libnet-openssh-perl/r +oot-10.112.32.56-3848-476728','-l','root','10.112.32.56','--'] # _waitpid(3984) => pid: 3984, rc: # open_ex: ['rsync','-e','ssh -S /root/.libnet-openssh-perl/root-10.11 +2.32.56-3848-476728','--blocking-io','-q','--recursive','--progress', +'--','/home/shivangi/shwetabh.img','root@10.112.32.56:/home/shagun/'] # open_ex: ['ssh','-O','exit','-T','-S','/root/.libnet-openssh-perl/ro +ot-10.112.35.43-3848-813787','-l','root','10.112.35.43','--'] # _waitpid(4236) => pid: 4236, rc: # open_ex: ['ssh','-O','exit','-T','-S','/root/.libnet-openssh-perl/ro +ot-10.112.32.56-3848-476728','-l','root','10.112.32.56','--'] # _waitpid(4237) => pid: 4237, rc:
        May STDOUT had been previously redirected in your script to some other place? I can not imagine any other reason causing that behavior.

        In Linux you can add the following perl code to discover where STDOUT is going:

        system 'ls -l /proc/$$/fd/1';

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1064768]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others meditating upon the Monastery: (6)
As of 2024-04-23 11:17 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found