The @sys variable is expanded to the name of a CPU/OS type. The cm sysname command sets and displays the current value of the @sys variable. The following examples show how the Cache Manager interprets the same pathname differently, depending on the value of @sys.
On a machine running OSF/1:
$ cm sysname
Current sysname is `pmax_osf1'
$ cd /.../abc.com/fs/@sys
$ pwd
/.../abc.com/fs/pmax_osf1
On a machine running AIX 3.2:
$ cm sysname
Current sysname is `rs_aix32'
$ cd /.../abc.com/fs/@sys
$ pwd
/.../abc.com/fs/rs_aix32
The @sys variable is commonly used in symbolic links from a DFS client machine to a fileset in the DFS filespace. A single copy of a binary file for each system type is stored on a single File Server machine in DFS instead of on the local disk of each client machine. Links are then created from client machines to the central copy of the binary file, eliminating the need to store the same binary file on each client machine. Accessing binary files this way saves disk space on client machines and ensures that users on all client machines are using the same version of the binary file. It also eases system administration by allowing administrators to update central copies of binary files, rather than requiring them to update the copies stored on each client machine.
A link that includes the @sys variable can be created on each client machine. The Cache Manager on each machine interprets the @sys variable, so each machine accesses the binary file for its system type from the global namespace. Symbolic links that include the @sys variable are commonly used to access binary files for programs such as make and emacs.
The following examples create a symbolic link used to access the proper binary files for programs traditionally stored in /usr/local. In the examples, the Cache Managers on two machines interpret the link differently, depending on their respective values of @sys.
On a machine running OSF/1:
$ ln -s /.../abc.com/fs/@sys/usr/local /usr/local
$ ls -l /usr/local
lrwxrwxrwx 1 root 34 Nov 22 1991 /usr/local ->
/.../abc.com/fs/@sys/usr/local
$ cd /usr/local
$ pwd
/.../abc.com/fs/pmax_osf1/usr/local
On a machine running AIX 3.2:
$ ln -s /.../abc.com/fs/@sys/usr/local /usr/local
$ ls -l /usr/local
lrwxrwxrwx 1 root 32 Aug 1 06:44 /usr/local ->
/.../abc.com/fs/@sys/usr/local
$ cd /usr/local
$ pwd
/.../abc.com/fs/rs_aix32/usr/local
When creating links on server machines, do not use links to access binary files for DFS server processes. These files must reside on the local disk of each server machine to avoid bootstrapping problems.
(See Part 2 of this guide and reference for more information about the cm sysname command.)