Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations gkittelson on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Confused by pkgadd error 3

Status
Not open for further replies.

JMCraig

Programmer
Feb 20, 2002
217
US
Hi Folks,

OK, simple problem (except for a Solaris newbie like me!). I am installing OpenSSH on a pair of servers. The first server went fine. Now I'm trying to do it on the second one: it won't add the packages.

FTP'd the packages from freeware.sun.com (it has a number of different packages which are required, but the behavior's the same on all of them so here's a representative sample):

get openssh-4.3p2-sol8-sparc-local.gz

Unzipped it:

# gunzip openssh-4.3p2-sol8-sparc-local.gz

I only got one file and I thought I would get a directory tree, but maybe I just saw that stuff going by during the pkgadd process on the prior server, so I'm unconcerned. Then when I do the pkgadd command it complains strangely:

# pkgadd -d openssh-4.3p2-sol8-sparc-local
pkgadd: ERROR: no packages were found in </var/tmp/dstreAAAXBaObN>

Is this a way of saying the the file is corrupted somehow so that the tmp file it tried to use in the process didn't work right or what? I tried redoing the download in a different way and the byte counts are identical to the original. gzip doesn't complain about the zip file being bad or anything. What should I try next?

Any suggestions welcomed most heartily!

John

John Craig
Alpha-G Consulting, LLC
 
Try:

pkgadd -d /path/to/package/openssh-4.3p2-sol8-sparc-local
pkgadd . openssh-4.3p2-sol8-sparc-local
 
I'd actually tried the first option you suggested, but here's the results of both of them:

# pkgadd -d /var/downloads/openssh-4.3p2-sol8-sparc-local
pkgadd: ERROR: no packages were found in </var/tmp/dstreAAAo6ayYZ>
# pkgadd . openssh-4.3p2-sol8-sparc-local
pkgadd: ERROR: no packages were found in </var/spool/pkg>

I did try moving the package file to /var/spool/pkg; the response there was that there were no packages.

I did notice late yesterday that the OS's on the two boxes in question seem to be at different patch levels. So, my next step is going to be to get this reluctant one more current and see if that helps.

Thanks,

John

John Craig
Alpha-G Consulting, LLC
 
John - I assume you did the ftp in binary mode. Thinking about it, if you hadn't gzip probably wouldn't like it either.
 
When you run 'pkgadd . file' are you in the directory where the file exists?

Also try 'pkgadd -d . file'
 
seems to be an invalid URL. Do you mean sunfreeware.com?

What's the cksum of the file? Try comparing it to the one I just downloaded from sunfreeware.com:

[tt]# ls -l openssh*
-rw-r--r-- 1 root other 822657 May 23 15:22 openssh-4.3p2-sol8-sparc-local.gz
# cksum openssh*
420285056 822657 openssh-4.3p2-sol8-sparc-local.gz
# gunzip openssh*
# cksum openssh*
2493195883 2643456 openssh-4.3p2-sol8-sparc-local
# ls -l openssh*
-rw-r--r-- 1 root other 2643456 May 23 15:22 openssh-4.3p2-sol8-sparc-local
# pkgadd -d openssh*

The following packages are available:
1 SMCossh432 openssh
(sparc) 4.3p2

Select package(s) you wish to process (or 'all' to process
all packages). (default: all) [?,??,q]:[/tt]

Annihilannic.
 
Thanks, all, for the suggestions.

Ken, ftp was in binary mode (and file size is identical to what ftp sees on the sunfreeware.com site). I had the same idea about gzip--presumably wouldn't have worked if in ASCII mode.

kHz, yes, I've cd'd to the directory where the file is.
# pkgadd -d . openssh-4.3p2-sol8-sparc-local
ksh: /var/tmp/baaKJayP5: cannot open

An interesting variation....

Annihilaanic
(Cool handle, BTW.)
Yes, that's the site I meant. My checksum on the unzipped package matches yours:

# cksum openssh*
2493195883 2643456 openssh-4.3p2-sol8-sparc-local

mrn, pkgchk gives pretty much the same story as pkgadd:

# pkgchk -d openssh-4.3p2-sol8-sparc-local
pkgchk: ERROR: unable to complete package transfer
- no packages were selected from </var/tmp/baaKJayP5>

So, this really looks like it's a problem with the patches on the system being so incredibly out of date. Is there an easy way to find out for sure what the most recent patches are?

Thanks!

John

John Craig
Alpha-G Consulting, LLC
 
Run 'uname -a' and you will see the kernel patch. I would suggest downloading the lastest recommended cluster. Although I can't see patches limiting a package installation. Can you try installing another package and see if they install?

What directory are you trying to install this package from (e.g., /var, /var/tmp, etc.)? Also, what are the permissions on the directory? Because the pkgadd -d path or pkgadd . should work. I have only had pkgadd fail when I wasn't in the right directory or didn't specify the right path.
 
There have been some patches for patchadd/patchrm quite recently, might be worth locating and installing them first. If you install the latest recommended bundle it will be one of the first patches installed.

Annihilannic.
 
Hi kHz,

uname -a returns:
SunOS <snip> 5.8 Generic_108528-03 sun4u sparc SUNW,Ultra-250
<host name removed above>. I think this is one of only a few Solaris boxes on the client's rather extensive campus and I don't think they have any Solaris weenies on staff any more. They have not been kept anything like up to date. I'm just trying to set up some moderate security for them, but I think the OS is so out of date, it's going to need a bunch of patches anyway, so I thought I'd try that.

The directory I'm trying to add the package from is:
/var/downloads
The permissions are:
drwxr-xr-x 4 root other
I'm logged in as root, so that presumably isn't the issue. I'm sitting in the directory itself so my assumption is that the -d <filename> format should work, right?

It's possible, of course, that I'm entering the command incorrectly, but I do have a track record of doing it right on the other box I was installing on.... Puzzling. I thought perhaps the version of pkgadd was not compatible with the package itself because the OS hasn't been kept up to date at all...

Hi Anaihilannic,

Thanks. The patch numbering/dating that I find at this site is rather obscure:


Is there a simple secret to finding what comes next? It looks to me like I should start with (perhaps) 108528-29
I'm rather nervous about rendering the system unusable...

(Sheesh. This was supposed to be a lot simpler than it's been.... Thanks awfully for your continuing to hang in there with me.)

John

John Craig
Alpha-G Consulting, LLC
 
If the server has an OBP you need to make sure it is at a compatible level with the kernel (108528-29). I am having a problem on a server and a case is opened with Sun because when I installed 108528-29 on my test server, upon a reconfigure reboot it generates constant picld errors. Adding the OBP patch to bring it current hasn't fixed the problem. Sun has had it for two weeks and they have backline engineers looking at it but nothing so far.

Also, if you apply patches for the kernel, make sure you just run patchadd 108528-29 and don't specify -d otherwise you won't be able to back out the patch.

Do you also have openssl-0.9.8b, libgcc-3.3 or gcc-3.3.2, and zlib installed? They are required packages.

I downloaded the package from sunfreeware and tried the package install on Sol10 and Sol8. I tried all combinations of pkgadd and created a directory /var/downloads with root:eek:ther and 755 permissions. The results (with working directory as /var/downloads):
pkgadd -d openssh... <SUCCESS>
pkgadd -d /var/downloads/open... <SUCCESS>
pkgadd -d . open... <FAILED> no packages were found in /var/downloads
pkgadd . open... <FAILED> no packages were found in /var/spool/pkg
pkgadd open... <FAILED> no packages were found in /var/spool/pkg

Move the openssh package to /var/tmp and run pkgadd -d /var/tmp/open.. or pkgadd -d open... while in /var/tmp. Before doing that though, make sure you delete any openssh package in /var/downloads or anywhere else. Also run a pkginfo | grep -i ssh and make sure there isn't any openssh package already installed and in some wierd state.
 
Hi Ken,

The results of

pkgadd -d . filename

Are in my post from the 23rd at 16:43:
[tt]
# pkgadd -d . openssh-4.3p2-sol8-sparc-local
ksh: /var/tmp/baaKJayP5: cannot open
[/tt]

Hi kHz,

Given your experience, I guess I'll recommend my clients not try upgrading the OS!

Your results:
pkgadd -d openssh... <SUCCESS>
pkgadd -d /var/downloads/open... <SUCCESS>
pkgadd -d . open... <FAILED> no packages were found in /var/downloads
pkgadd . open... <FAILED> no packages were found in /var/spool/pkg
pkgadd open... <FAILED> no packages were found in /var/spool/pkg

are exactly what would be expected. I don't see how moving the package to another directory is going to stop it from looking for something in a non-existent /tmp directory, but I will give it a try (note that pkginfo | grep ssh returns nothing):
[tt]
# pkginfo | grep ssh
# mv /var/downloads/openssh* /var/tmp/
# ls /var/downloads
112438-03 openssl-0.9.8b-sol8-sparc-local.gz
112438-03.zip sshd.sh
112438-03noReboot.sh zlib-1.2.3-sol8-sparc-local.gz
# ls /var/tmp
aaaGjayN5
aaaJJayP5 openssh-4.3p2-sol8-sparc-local
# cd /var/tmp
# pkgadd -d openssh-4.3p2-sol8-sparc-local
pkgadd: ERROR: no packages were found in </var/tmp/dstreAAAxSayXC>

# ls
aaaGjayN5 openssh-4.3p2-sol8-sparc-local
aaaJJayP5
#
[/tt]

Nope. Rats. The /dstreAAAxSayXC file/directory mentioned isn't there when it ends (no suprise, but I thought I'd check). With regard to the other required packages, I've tried each of them. They all fail with the same pattern. Here's the ssl package for instance (which is what I installed first on the other box):

[tt]
# gunzip openssl-0.9.8b-sol8-sparc-local.gz
# pkgadd -d openssl-0.9.8b-sol8-sparc-local
pkgadd: ERROR: no packages were found in </var/tmp/dstreAAAFfaG6C>
#
[/tt]

Note that I have tried what worked for you multiple times. And it worked just fine on the other Solaris box at the same site--and the only difference I can see between the two machines (other than being different processors) is the OS version information values on the two.

Working (and yes, it does show two lines right after you log in):
[tt]
Sun Microsystems Inc. SunOS 5.8 Generic Patch October 2001
Sun Microsystems Inc. SunOS 5.8 Generic Patch October 2001
# uname -a
SunOS chicolibsql 5.8 Generic_108528-15 sun4u sparc SUNW,Ultra-4
[/tt]

Not working:
[tt]
Sun Microsystems Inc. SunOS 5.8 Generic February 2000
# uname -a
SunOS chicoipac 5.8 Generic_108528-03 sun4u sparc SUNW,Ultra-250
[/tt]

If I'm reading this correctly, the Ultra-4 box has had patch 108528-15 applied and the 250's back at 108528-03. Is that right?

The dates/sizes on pkgadd itself are different too (unsurprisingly):

Working:
[tt]
# ls -lR /usr | grep pkgadd
-r-xr-xr-x 2 root sys 109320 Jun 14 2002 pkgadd
[/tt]

Not working:
[tt]
# ls -lR /usr | grep pkgadd
-r-xr-xr-x 2 root sys 105196 Jan 5 2000 pkgadd
[/tt]

It seems to me that there's got to be either a discrepency with the pkgadd program and the package file or, maybe, a problem with the pkgadd program itself. At any rate, the entire environment is so out of date, it seems like it's suspect, but attempting to update it sounds hazardous.

(The more I fiddle with this 250 box, the more it seems rather startling that the work on the other one was so simple!)

John

John Craig
Alpha-G Consulting, LLC
 
Besides upgrading to 108528-21 which is what I have on my web servers along with OBP 4.7.5 may work for you. Solaris 8 is pretty much junk anyway, so it may be that 108528-03 won't install with packages because they weren't built that far back, and the OS is missing libraries or something.

Unless you can get Sun involved to solve the problem, I would say to upgrade to 108528-21 (but make sure the OBP matches the kernel). I am not sure if the 250 has an OBP or not. Have never seen one or used one.

Otherwise I would say they are out using openssh. Another possibility would be to maybe look at SARA. I think it patches telnet and a patched telnet may be an acceptable replacement to ssh (or not - just a suggestion).
 
kHz, thanks much!

How do I tell if I have an OBP? Getting Sun involved is rather unlikely. They're just trying to get some holes patched in this thing so it will last a bit longer.

Thanks again!

John



John Craig
Alpha-G Consulting, LLC
 
prtconf -V or can you get to the ok> prompt? This would be the openboot prom. I just don't know what the 250 is and if it has an OBP. For comparison when I run prtconf -V on my V20z it returns DevConf 1.0 whereas prtconf -V on sparc returns OBP 5.17.1 05/10/04 14:56 (this is on an E2900 so the OBP is newer than what I listed previously).
 
It appears the ultra-250 is sparc-based and does have an openboot prom. My prod db server is Solaris 8 2/02 and has 108528-21 with an OBP of 4.7.5 2003/01/08.
 
I did a google on the ultra-250. Do not take the last post as an Ultra-250. My prod db server is a V480.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top