Common HEP UNIX User Environment - System Wrappers


Definition of an HEPiX wrapper

When an interface (shell, X11, etc.) starts, it reads system level files in order to get its system configuration.

When the HEPiX Startup Scripts are installed in enforced mode (see install-modes) on a system, then it is required to replace these configuration system files in order to change the default for any user session on the service.

The files which are going to replace the vendor ones are called wrappers in the HEPiX Startup Scripts project.


Definition and role of an '.std' file

In the installation process, the vendor system files are not deleted but they are saved with the extension '.std'.

Indeed HEPiX Startup Scripts need these files to provide an environment for special users who have or want to skip HEPiX, who want to make sure that they have the original vendor provided user environment. Therefore they should not be deleted from the system.

Examples or such users are: root, all users with a user id less than 100 (CERN convention) all users in a rejection file called /etc/hepix/list-.

See list- or is-hepix for more information.


Definition of an HEPiX rejection file

The HEPiX scripts are meant mainly to help the interactive usage of services. However, the cost to pay is some relative slowness at the beginning and a quite complete setup which maybe judged as being heavy by some people. In order ot give a possibility for some accounts to skip the HEPiX scripts, an HEPiX rejection file was introduced under the name

	list-
and the default location
	/etc/hepix
Which is the default directory which hosts the HEPiX system level modifications (read federal for more information).

This file is a simple flat file wchich consists of the account names which should skip the HEPiX startup scripts.

Example:

	iss
	wgsmonit
	dciops
	rtb
	rainer
	printsp
	afssp
This example shows that special users like iss (which is a non-human being account used for loadbalancing sessions on a cluster) or wgsmonit (a non-human being account used for getting system statistics) should definitely NOT use HEPiX as they need to login thousands of times per day on the systems.

Another account like dciops (an account for the operators) should skip HEPiX because if operators have to do something on the system while the disks where the HEPiX scripts is not mounted for any reason, and they are forced to use HEPiX, it is not sure if they manage to login!


Role of an HEPiX wrapper

An HEPiX wrapper are responsible of deciding which user account should start or not the HEPiX or the vendor startup scripts.

The algorithm is the following:

	IF 
		CONDITION = (user is root OR
		             user id is less than 100 OR
		             user is in the file /etc/hepix/list-)
	THEN
		use the vendor scripts (.std file)
	ELSE
		use the HEPiX scripts
	ENDIF
The CONDITION is calculated with a tool called is_hepix which is a C program which checks if an account fullfills or not the condition. It was necessary to write such a program has it has:
Arnaud Taddei, 27-Jun-1996