Logs

Hey Guys,
i am new into shell programming and i have to do one script which have to record all the commands entered by a specific user.
Example of that, i have a system running on unix, several users are using this system, i have to create like a databse which will record every user entered that system as well as recording all the commands being entered by that user.
Can u help me in such case???
Thanks for your help....

you can monitor for the changing time-stamps of history file of all the users and update your file or database with the changes alone from the history

(or)

have a script command included in every user's profile to take a snapshot of all the commands, output and filter out for the commands alone from output of script command

Thanks alot,
i would like to choose the second option, but i really dont know how to perform that, can u help in this?

Thanks in advance

have the following command in the .profile of every user

script -a $LOGNAME

the above would generate all the output and commands entered in the file named $LOGNAME

and while disconnecting from the session,
the user has to specifically issue exit or ctrl-D twice
to quit from script process
and from the current shell

where process script is spawned over the current shell
later check for the file content redirected through script command and modify according to ur needs.

And,

to retrieve a copy of all the commands or characters entered by the user (including the control characters ) there should be a way to duplicate the output descriptor of the shell to redirect to STDOUT and the required filename.

May be the Gurus would help regarding this !!!

Hi again and thanks for your help.

lets say i have a username of "charbel" and the default home directory of that user is "server/logs" from where he can get information by using the "grep" command on any file hw would like to look in in that specific home directory. Now what i have understand from you is that i have to create a .profile for each user and in that profile i have to include the command that u have just gave me in the above reply, right?!!
Can you provide me with a sample of how would the script file look like ( the .profile and where shall that .profile to be located???...)
i know i am asking for too much but i need it on urgent basis and sometimes i have the feeling i will not be able to do it and finish it early as required.

Thanks again for your help.

Hello there,
ihave the following command in the .profle "script -a $LOGNAME"
once the user logged out, the following file is created "typescript" which contains all the commands the user have entered and the output of those commands.
Now i want to ask something, the user can access the output file "typescript" and modify it or even delete it,right??!!

How can i prevent him from doig so, or can i copy the output file "typescript" to the root user and this file will be updated accordingly??

Hope to hear from u soon since this is mandatory to my job.....
Thanks alot.....