|Here at UNC we have solaris machines running OS 5.7 in 32-bit mode
|and solaris machines running OS 5.7 in 64-bit mode, both with AFS 3.6. This
is
|causing problems because "fs sysname" returns the same string: "sun4x_57".
|Other applications (for example, lsf) use different binaries depending
|on whether they are being run on a 64-bit or a 32-bit machine. We use the
|@sys string to determine the correct version of the binaries to invoke.
|However, since the @sys name is the same for both machines we can't do that.
+--->8
Doesn't help anyway; for e.g. lsof we need finer granularity than even that on
some systypes. I use a wrapper script which uses uname -v/uname -r as
appropriate (based on bare uname).
The AFS sysname is ultimately only reliable for selecting AFS userspace
tools. Any viable use you get beyond that is a free bonus.
That said, it's useful enough that we have some tricks we use locally; see
below.
|Our initial thought was to set sysname ourself, using "sun4u_57" for
|64-bit machines and "sun4x_57" for 32-bit machines. Ah, but then what
|do you do about 64-bit machines running in 32-bit mode? And of
|course the AFS "sys" command will always return "sun4x_57"; we'd have to
modify
|that binary as well...
+--->8
#! /bin/sh
if [ -f /usr/vice/etc/sysname ]; then
exec cat /usr/vice/etc/sysname
else
exec /usr/afsws/bin/sys.afs
fi
Similar code in the AFS startup script.
As for identifying 64-bit systems in 32-bit mode, try "isainfo -v".
--
brandon s. allbery [os/2][linux][solaris][japh] [EMAIL PROTECTED]
system administrator [WAY too many hats] [EMAIL PROTECTED]
electrical and computer engineering KF8NH
carnegie mellon university ["better check the oblivious first" -ke6sls]