Maintenance Commands                                  BINTYPE(1M)



NAME

bintype - Evaluate binary compliance and service classes

SYNOPSIS

bintype [-0] [-all] [-1] [-base] [-b] [-2] [-release] [-r] [-3] [-isp] [-i] [-4] [-model] [-m] [-5] [-full] [-f] [-6] [-advanced] [-a] [-7] [-afs] [-sys] [-services] [-s] [-names] [-n] [-classes] [-c] [target]

DESCRIPTION

A bintype classification applies to a file giving informa- tion about his usefullness for a certain computer system or the possibility to execute it on a certain computer system. It also applies to a computer system to give information about the usefullness or executability of certain files. If the classification of both match a file and a computer com- ply to each other. A service class definition applies to a certain computer to give a name for the services it provides to a user or to other computers. A name class definition applies to a certain computer or a group of computers. Each computer has an individual host name and may belong to a cluster and to a site. The program bintype evaluates and displays the above infor- mation on the local computer. If no target is given on the command line it defaults to the local hosts. You can specify a target like: /path/:BINTYPE SERVICES All parts are optional. Specifying remote hosts is currently unsupported. If the classes option is given the output is a list of class strings. Otherwise you will get up to three line showing the bintype, service classes and name respectively. DESY/ZDV has setup this automatic classification algorithm which will be described in the following. SunOS 5.10 Last change: 1 Maintenance Commands BINTYPE(1M)

VERSION

Version of this file @(#)bintype.1 1.14.

WHAT FOR

There are several benefits from a standardised bintype classification: 1: If you offer site wide homedirectories for users, you have to set up a UNIX PATH variable which takes the current com- puter type in to account. Which a proper setup only binary are executable which comply to the local workstation. 2: If you want to distribute files to other computers you need information about the compliance of files and computers.

OPTIONS

-0 | -all Let bintype evaluate class 0. This is the string ALL. -1 | -base | -b Let bintype evaluate class 1. This is the name of the operating system. -2 | -release | -r Let bintype evaluate class 2. This is class 1 and the mayor number(s) of the operating system release. -3 | -isp | -i Let bintype evaluate class 3. This is class 1 and the name of the instruction set processor. -4 | -model | -m Let bintype evaluate class 4. This is class 1 and the name of the computer model. -5 | -full | -f Let bintype evaluate class 5. This are classes 1 to 4 merged together. -6 | -advanced | -a Let bintype evaluate class 6. This are classes 1 to 4 merged together but without any information stripped. -7 | -afs Let bintype evaluate class 7. This is the afs sys- type string derived either from /usr/afsws/bin/sys (if available) or it is constructed from the uname output SunOS 5.10 Last change: 2 Maintenance Commands BINTYPE(1M) -sys Let bintype evaluate also the afs systype. -services | -s Let bintype evaluate also the service classes. -names | -n Let bintype evaluate also the HOST, CLUSTER and SITE names. -classes | -c Show class list instead of bintype, service classes and names.

BINTYPE CLASSES

The classes used are defined as follows: Class 0: ALL A class for e.g. an ASCII config file or a shell script prepared to be system independent. Class 1: OS Something valid for a certain operating system. Class 2: OS + MAJOR_OS_LEVEL + MAJOR_OS_LEVEL.MINOR_OS_LEVEL Something valid for a certain operating system with a cer- tain mayor version number. Class 3: OS + HARDWARE_CLASS Something valid for a certain operating system with a cer- tain processor type. Class 4: OS + COMPUTER_CLASS Something valid for a certain operating system running on a certain computer serie. Class 5: CLASS 2 + HARDWARE_CLASS + Something valid for a certain operating system complying to class 2, 3 and 4. Class 6: OS + OS_LEVEL + HARDWARE_TYPE Something valid for a certain operating system of this spe- cial flavor. For use only in very rare cases.

SERVICE CLASSES

A service class definition applies to a certain computer and should reflect the services it provides for users or other computers. It is a freely defined naming scheme. DESY/ZDV uses or will use the following names: afs for machines which are afs clients SunOS 5.10 Last change: 3 Maintenance Commands BINTYPE(1M) xidle for machines with xidle logout adsm for ADSM client machines adsms for ADSM server machines mails for a mail server with local mail queue The service classes may be set up as a one line blank separated list in one of the files $HOME/.service_classes /etc/local/service_classes

NAME CLASSES

A name class definition applies to a certain computer or a group of computers. Each computer has an individual hostname and may belong to a cluster and/or to a site. If you run bintype on a computer which supports the DESY/ZDV version of the HEP login environment, these names will automatically set up the shell variables HOST, CLUSTER and SITE. Variable HOST will be set up by the program hostname. The other name classes may be set up in the files /etc/local/cluster /etc/local/site

AUTOMATIC CLASSIFICATION

Bintype is a class 0 shell script which does an automatic type to class mapping for all DESY/ZDV supported computer types. With no arguments it defaults to class 3 which will be used at our site for PATH definitions and for the bintype setting in the user environment. The tool will also used by the SALAD product distribution made by DESY/ZDV. Salad will use class 5 by default with automatic fallbacks to all lower classes. In SALAD version 2 you will only have to specify a host name and the OS to get a valid product installation. Even the OS type is redundant as a matter for the installa- tion. It is only used for grouping computers and as a con- venient naming algorithm. Please note that the order of arranging of different levels matters. From left to right you will get to more specific classes. This is essential when looking for fall backs to lower classes. You may override the default bintypelevel by setting up one of the files $HOME/.bintypelevel /etc/local/bintypelevel EXAMPLES OF DESY/ZDV COMPUTER CLASSES IBM l l l l. Class0: ALL Class1: AIX Class2: AIX_3_3.2 Class3: AIX_risc Class4: AIX_6000 SunOS 5.10 Last change: 4 Maintenance Commands BINTYPE(1M) Class5: AIX_3_3.2_risc_6000 Class6: AIX_3.2.5.0_risc_7012-320 APOLLO l l l l. Class0: ALL Class1: DomainOS Class2: DomainOS_10 Class3: DomainOS_m68k DomainOS_a88k Class4: DomainOS_400 DomainOS_DN10K DomainOS_DN Class5: DomainOS_10_m68k_400 Class6: DomainOS_10.4_m68k_433s HP l l l l. Class0: ALL Class1: HP-UX Class2: HP- UX_9_9.07 Class3: HP-UX_HP-PA HP-UX_m68k Class4: HP- UX_700 HP-UX_300 Class5: HP-UX_9_9.07_HP-PA_700 Class6: HP-UX_A.08.07_HP-PA_9000-730 SGI l l l l. Class0: ALL Class1: IRIX Class2: IRIX_5_5.3 IRIX_6_6.2 Class3: IRIX_mips IRIX_mips2 (IRIX_m68k) Class4: IRIX_challenge IRIX_iris IRIX_indigo Class5: IRIX_4_mips_iris IRIX_6_6.3_mips4_64bit_challenge Class6: IRIX_4.0.5_mips_iris SunOS l l l l. Class0: ALL Class1: SunOS Class2: SunOS_4_4.1 Class3: SunOS_sparc Class4: SunOS_sun4m Class5: SunOS_4_4.1_sparc_sun4m Class6: SunOS_4.1.3_sparc_sun4m Solaris This is a provisional until a HEP agreement has been set up. l l l l. Class0: ALL Class1: Solaris Class2: Solaris_5_5.3 Class3: Solaris_sparc Class4: Solaris_sun4m Class5: Solaris_5_5.3_sparc_sun4m Class6: Solaris_5.5.1_sun4m DEC l l l l. Class0: ALL Class1: ULTRIX Class2: ULTRIX_4 Class3: ULTRIX_risc Class4: ULTRIX_X Class5: ULTRIX_4_risc_X Class6: ULTRIX_4.2_risc_X OSF1 l l l l. Class0: ALL Class1: OSF1 Class2: OSF1_3 Class3: OSF1_alpha Class4: OSF1_alpha SunOS 5.10 Last change: 5 Maintenance Commands BINTYPE(1M) Class5: OSF1_3_alpha Class6: OSF1_3.2.214_alpha Linux l l l l. Class0: ALL Class1: Linux Class2: Linux_2_2.0 Class3: Linux_intel Class4: Linux_?? Class5: Linux_2_2.0_intel Class6: Linux_2.0.?_i586 UNKNOWN l l l l. Class0: ALL Class1: UNKNOWN Class2: UNKNOWN_X Class3: UNKNOWN_X Class4: UNKNOWN_X Class5: UNKNOWN_X Class6: UNKNOWN_X

FILES

$HOME/.bintypelevel $HOME/.service_classes /etc/local/service_classes /etc/local/bintypelevel /etc/local/cluster /etc/local/site hostname /usr/afsws/bin/sys

AUTHOR

This tool is written by Thomas Finnern at DESY/Hamburg. Recommendations and questions may be send to finnern@desy.de

COPYRIGHT

Copyright 1993-1996, DESY/Hamburg This tool may be used freely within the HEP community. There will not be any warranty on the program itself nor on the products distributed with it.

SEE ALSO

Some standard UNIX tools like /bin/sh, uname, expr and host- name. salad hepenv SunOS 5.10 Last change: 6