Making an easy to refresh machine using GHOST, NT and Z.E.N.works
This Document is a work in progress. It is as accurate as I can make it without people having used the method to create a Lab Machine. If you use this document and you have any comments, both positive and negative, please let me know by mailing me.
This document is in two parts. This is the Z.E.N.works / NAL side of things, there is also an NT side to the story.
This document assumes that you're using the other half of this document. If not, read it so you know what I'm on about, then ignore it when you know better. If I made any mistakes, let me know by mailing me, otherwise I'll just sit here thinking I invented the best thing since sliced fruit bread in the morning.
The art of Z.E.N.
When a user logs in, their login script launches NAL in shell mode (NAL /S) so that when they quit the software, it logs them out, otherwise silly users will quit NAL with no applications and no obvious way of logging out.
The user's access is managed using ZEN policies. I use an NT workstation policy to setup the workstation (more about that later) and an NT user policy to lockup the workstation. The method for distributing these policies is NT Workstation Manager. The software hooks into NT and basically eliminates the need for managing anything within NT (as far as I know :-)
Using the workstation policy, you can create actions that happen when either events occur or when a time interval has happened. I use this method to log the user off when they lock the screen, or when the screen saver is activated (eg they weren't working on the machine) I also make the machines refresh at a set time each day.
Setting all this up is pretty straight forward. There seems to be only one catch. Workstation Manager needs to be initialised. Those six words have meant three months of work. However, I beleive that I have solved the problem. It's not pretty, but it works.
Before I tell you how, I need to tell you why.
The first question you may ask, is: "Onno, why don't you just make the image after workstation manager is initialised?". Because the workstation needs to be visible in the NDS tree, it needs to be unique (its own settings), thus the image that you so lovingly created needs to be tailored to each machine, no good.
The next question is: "Onno, why do you need workstation manager?". Because workstation manager and the novell schedular are the devices that run the actions that log the user off when they should be.
Then: "Onno, why don't you just lock the machines up tight as a drum and be done with it?". Because students will switch machines off mid-flight and kill any integrity NT hasn't already killed itself.
Then: "Onno, why don't you just ghost the machines off the net?". Because that works fine with 5 machines, but not with 500.
If you have more questions, ask me and I'll try to answer.
Ok, so now to the Workstation Manager initialisation. I have found that the only way to initialise the software is to login and logoff again. If you do it the official way it goes like this:
You can tell this is pretty tedious. So I did it this way:
I told you it wasn't pretty.
There are a few things that need to be done in order for this to work.
Modifications to this document:
7 July 1998 - Created the documentation for the ZEN side of things