On Sun, Sep 25, 2011 at 12:55 PM, Ole Tange <[email protected]> wrote:

> >  my question is about the remote portion which i'm excited about
> > using as well.
> > the catch is in the environment that i'll be using parallel:
> > 1) parallel will be available with the same path on every machine (ie
> > /foo/bar/parallel) , but /foo/bar/parallel will not be in the $PATH.
> right
> > now parallel just sshes to the remote boxes and then it fails because
> > 'parallel' is not found.
>
> You do not need GNU Parallel installed on the remote machines. It is
> used for figuring out the number of CPUs, which you can pass to it
> using the '/' notation. This command will not call parallel on
> my4coremachine:
>
> parallel -S 4/my4coremachine.example.net echo ::: bar


thanks Ole, that does work.  but can this remote path for parallel be
configured so that I don't have to specify the CPUs for each host?  where
would this be done in the code if not?


> > 2) the user that parallel runs as will have a read-only homedir.
>
> Since you do not need to call GNU Parallel on the remote machines I
> reckon this will not be an issue.


you're right, it seems to work just fine.

one more question for you, to get parallel ssh to work seamlessly I needed
to reconfigure the ssh parameters as follows.  I didn't want to modify the
ssh preferences for the user.  is there any way this can be configurable?

--- parallel    2011-09-25 13:16:47.429253000 -0400
+++ parallel.bak        2011-09-23 11:22:36.879041000 -0400
@@ -2641,9 +2641,9 @@
         if($::opt_controlmaster) {
             # Use control_path to make ssh faster
             my $control_path = $self->control_path_dir()."/ssh-%r@%h:%p";
-            $sshcmd = "ssh -n -o UserKnownHostsFile=/dev/null -o
StrictHostKeyChecking=no -S ".$control_path;
+            $sshcmd = "ssh -S ".$control_path;
             $serverlogin = $self->{'string'};
-            my $master = "ssh -n -o UserKnownHostsFile=/dev/null -o
StrictHostKeyChecking=no -MTS $control_path $serverlogin sleep 1";
+            my $master = "ssh -MTS $control_path $serverlogin sleep 1";
             if(not $self->{'control_path'}{$control_path}++) {
                 # Master is not running for this control_path
                 # Start it
@@ -2657,7 +2657,7 @@
                 }
             }
         } else {
-            $sshcmd = "ssh -n -o UserKnownHostsFile=/dev/null -o
StrictHostKeyChecking=no"; $serverlogin = $self->{'string'};
+            $sshcmd = "ssh"; $serverlogin = $self->{'string'};
         }
     }
     $self->{'sshcommand'} = $sshcmd;

thanks
Chris

Reply via email to