|
From: Craig B. <cr...@at...> - 2003-01-12 00:34:42
|
> Running: /usr/bin/ssh -q -n -l root linus $tarPath -c -v -f - -C / --
> totals --exclude=./tmp --exclude=./proc .
> bash: line 1: -c: command not found
> Tar exited with error 32512 () status
> tarExtract: Unexpected end of tar archive (tot = 512, num = , posn =
> )
> tarExtract: Done: 1 errors, 0 filesExist, 0 sizeExist, 0 sizeExistCom
> p, 0 filesTotal, 0 sizeTotal
>
> Here's the $Conf{TarClientCmd} statement in linus.config.pl:
>
> $Conf{TarClientCmd} = '$sshPath -q -n -l root $host'
> . ' $tarPath -c -v -f -C $shareName+'
> . ' --totals';
>
> I'm fairly sure I've got ssh set up correctly; bash's complaint that it
> couldn't find the command "-c" suggested to me that the $tarPath substitution
> wasn't working, thus causing bash to ignore it and construe the -c argument
> to tar as a program, so I double checked the $Conf{TarClientPath} statement
> in the config file for linus, but that, too, seems to be correct:
>
> $Conf{TarClientPath} = '/bin/tar';
Yes, you're right: the $tarPath substitution isn't working. I don't
know why, since the other substitutions happen correctly.
The only remote possibilities I can think of are:
- that the whitespace before $tarPath in $Conf{TarClientCmd} somehow
became a tab rather than a space, or
- somewhere in the config file (either the main one or the pc-specific
one) $Conf{TarClientPath} is set to undef.
As a workaround, you could just replace $tarPath in $Conf{TarClientCmd}
with /bin/tar. Do the same for the tar restore command.
Craig
|