Zypper error refreshing update - Malware???

I haven’t been able to get updates for 3 weeks now on 11.0. Every time I run zypper refresh, I get this error

'repo2solv.sh' '-o' '/var/cache/zypp/solv/http:__download.opensuse.org_update_11.0__1/solv' '/var/cache/zypp/raw/http:__download.opensuse.org_update_11.0__1'
/usr/bin/repo2solv.sh: line 28: cd: -o: invalid option
cd: usage: cd -L|-P] [dir]

When I open up repo2solv.sh, Line 28 does not show this invalid option

test_susetags() {
  if test -s content; then
    DESCR=`grep DESCRDIR content | cut -d ' ' -f 2`
    if test -z $DESCR; then
    test -d $DESCR
    return $?
    return 1

# this should signal an error if there is a problem
set -e 


cd "$dir" || exit 1               <- Line 28
if test -d repodata; then
  cd repodata || exit 2

  # This contains a primary.xml* and maybe patches
  for i in primary.xml*; do
    case $i in
      *.gz) cmd="gzip -dc" ;;
      *.bz2) cmd="bzip2 -dc" ;;
      *) cmd="cat" ;;
    # only check the first primary.xml*, in case there are more
  if test -n "$cmd"; then
    # we have some primary.xml*
    primfile=`mktemp` || exit 3
    $cmd $i | rpmmd2solv $parser_options > $primfile || exit 4

  # This contains a updateinfo.xml* and maybe patches
  if test -f updateinfo.xml || test -f updateinfo.xml.gz || test -f updateinfo.xml.bz2 ; then
      for i in updateinfo.xml*; do
          case $i in
              *.gz) cmd="gzip -dc" ;;
              *.bz2) cmd="bzip2 -dc" ;;
              *) cmd="cat" ;;
          # only check the first updateinfo.xml*, in case there are more
      if test -n "$cmd"; then
      # we have some updateinfo.xml*
          updateinfofile=`mktemp` || exit 3

What is going on, this is driving me nuts. I use OpenSuSe exclusively for SSL transactions. I do no trust anything M$ for secure transactions, as thats comparable to having "relations with a $2 lady of the evening without protection.

Can somebody please help.


As far as I can see at line 27 the script sets a variable ‘dir’ to be equal to the first command line switch literal. This is used as is in line 28, at the ‘cp’ command. On your first part of code, where you show us the error, this is ‘-o’, after the name of the script ‘repo2solv.sh’. That’s where this invalid option came from. This means that you have to find out who called repo2solv.sh with this command line switch. I wish I could help more. Perhaps if you provide us with the full command line that you enter before the error appears?

I get this error message after I try running zypper refresh as su. This started a couple weeks ago, for no reason. I get the caution triangle with the explanation point in my panel showing it cannot refresh the repo list. So I manually run zypper refresh. I’m getting really paranoid about using 11.0 for any secure transaction now, as I have no idea how many possible security updates I’ve missed because of this. I really don’t want to upgrade to 11.1, since Nforce Audio doesn’t work in 11.1, plus this has been my mainstay OS since it came out, and I have everything I need on it, including a complete working backup of my hosted site.

rpm -Qo /usr/bin/repo2solv.sh

Open up yast and reinstall what provides, or/and reinstall the all zypper, yast sw management bits.

But the real ? is, it really does seem strange, so that leads on to other things you say a full working backup. So does that mean it has services for the external network?

If so and this was me I would be more interested in checking it out to make sure any hosting services are securely managed, and web code is audited for exploits.

I’m left wondering why has something changed to using -o, now if it is a bug I’m not getting any hits.

When you say you manually update exactly what do you mean? It seems it works but if you do it one way and not another are you talking about the applet vs SW management/cli zypper?

If applet then perhaps its just the applet and reinstalling the applet will make it go away.