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 |