OpenCSW Bug Tracker


Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0004004 [sudo_common] upgrade minor sometimes 2009-11-10 17:11 2010-03-03 19:38
Reporter maciej View Status public  
Assigned To maciej
Priority normal Resolution fixed  
Status closed  
Summary 0004004: sudo symlink missing after upgrading CSWsudo{,common}
Description It happened on many machines now. The problem is that after upgrading sudo and sudo_common from the current (as of 2009-11-10) catalog, the sudo symlink is missing:

blizinski@galah:~$ which sudo
no sudo in /opt/csw/bin /opt/csw/sbin /usr/sbin /usr/bin /sbin /bin /usr/ccs/bin /usr/xpg4/bin /usr/xpg6/bin /usr/sfw/bin /opt/goog/bin /opt/goog/sbin /usr/local/bin /usr/local/sbin /usr/openwin/bin /opt/SUNWspro/bin /opt/SUNWjet/bin /opt/SUNWsscs/sbin

It can be fixed by reinstalling CSWsudo-common
Additional Information To work around the issue:

root@galah:/# pkgrm CSWsudo-common

The following package is currently installed:
   CSWsudo-common sudo_common - Common files for sudo
                   (sparc) 1.7.2,REV=2009.10.05_rev=p1

Do you want to remove this package? [y,n,?,q] y

## Removing installed package instance <CSWsudo-common>
## Verifying package <CSWsudo-common> dependencies in global zone
WARNING:
    The <CSWsudo> package depends on the package currently
    being removed.
Dependency checking failed.

Do you want to continue with the removal of this package [y,n,?,q] y
## Processing package information.
## Removing pathnames in class <none>
/opt/csw/share/man/man4/sudoers.4
/opt/csw/share/man/man4
/opt/csw/share/man/man1m/visudo.1m
/opt/csw/share/man/man1m/sudoedit.1m
/opt/csw/share/man/man1m/sudo.1m
/opt/csw/share/man/man1m <shared pathname not removed>
/opt/csw/sbin/visudo
/opt/csw/libexec/sudo_noexec.so
/opt/csw/libexec <shared pathname not removed>
/opt/csw/etc/sudoers.CSW
## Updating system information.

Removal of <CSWsudo-common> was successful.
root@galah:/# pkgutil -i sudo_common
Parsing catalog, may take a while...
Install NEW packages: CSWsudo-common-1.7.2,REV=2009.10.05_rev=p1
CURRENT packages: CSWcommon-1.4.7,REV=2009.09.20 CSWggettextrt-0.17,REV=2009.02.13 CSWiconv-1.13.1,REV=2009.07.31
Total size: 176.6 KB
Fetching CSWsudo-common-1.7.2,REV=2009.10.05_rev=p1 (1/1)...
--08:04:29-- http://opencsw.corp.google.com/current/sparc/5.10/sudo_common-1.7.2,REV=2009.10.05_rev=p1-SunOS5.9-sparc-CSW.pkg.gz [^]
           => `/var/opt/csw/pkgutil/packages/sudo_common-1.7.2,REV=2009.10.05_rev=p1-SunOS5.9-sparc-CSW.pkg.gz'
Resolving opencsw.corp.google.com... 172.24.171.32
Connecting to opencsw.corp.google.com|172.24.171.32|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 180,843 (177K) [text/plain]

100%[==================================================================================================================================================================================================================================================================================>] 180,843 306.39K/s

08:04:32 (305.39 KB/s) - `/var/opt/csw/pkgutil/packages/sudo_common-1.7.2,REV=2009.10.05_rev=p1-SunOS5.9-sparc-CSW.pkg.gz' saved [180843/180843]

MD5 for CSWsudo-common-1.7.2,REV=2009.10.05_rev=p1 matched.
=> Installing CSWsudo-common-1.7.2,REV=2009.10.05_rev=p1

Processing package instance <CSWsudo-common> from </var/opt/csw/pkgutil/packages/sudo_common-1.7.2,REV=2009.10.05_rev=p1-SunOS5.9-sparc-CSW.pkg>

sudo_common - Common files for sudo(sparc) 1.7.2,REV=2009.10.05_rev=p1
ftp://ftp.sudo.ws/pub/sudo/ [^] packaged for CSW by Mike Watters
## Processing package information.
## Processing system information.
   2 package pathnames are already properly installed.
## Verifying package dependencies.
## Verifying disk space requirements.
## Checking for conflicts with packages already installed.
## Checking for setuid/setgid programs.

The following files are being installed with setuid and/or setgid
permissions:
  /opt/csw/bin/sudoedit <setuid root>

Do you want to install these as setuid/setgid files [y,n,?,q] y

This package contains scripts which will be executed with super-user
permission during the process of installing this package.

Do you want to continue with the installation of <CSWsudo-common> [y,n,?] y

Installing sudo_common - Common files for sudo as <CSWsudo-common>

## Installing part 1 of 1.
/opt/csw/bin/sudo <symbolic link>
/opt/csw/bin/sudoedit
/opt/csw/etc/sudoers.CSW
/opt/csw/libexec/sudo_noexec.so
/opt/csw/sbin/visudo
/opt/csw/share/man/man1m/sudo.1m
/opt/csw/share/man/man1m/visudo.1m
/opt/csw/share/man/man4/sudoers.4
[ verifying class <none> ]
/opt/csw/share/man/man1m/sudoedit.1m <linked pathname>
## Executing postinstall script.
sudoers already exists. Not copying sudoers.CSW

Installation of <CSWsudo-common> was successful.
root@galah:/# which sudo
/opt/csw/bin/sudo



My theory about it is that it's caused by /opt/csw/bin/sudo being a symlink defined in sudo_common in the current catalog. It goes like this:

first, sudo_common is upgraded. First, CSWsudo-common removal. Then CSWsudo-common installation. The /opt/csw/bin/sudo symlink from new CSWsudo-common overwrites the binary from the not yet upgraded CSWsudo. Then CSWsudo removal. Since the old CSWsudo contains /opt/csw/bin/sudo, it removes it. But now it's not the binary from CSWsudo -- it has removed the symlink! Then, the new CSWsudo is installed, but it doesn't install anything in the /opt/csw/bin/sudo path.

End result: missing /opt/csw/bin/sudo.

There already is a commit which moves the symlink from CSWsudo-common to CSWsudo. Please build the package and release it.
Tags No tags attached.
Attached Files

- Relationships

-  Notes
(0007583)
maciej (manager)
2010-03-03 19:38

Updated packages with 1.7.2p5 use alternatives.


Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker