|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]


Reply via email to