• No results found

Setting up Radmind For an OSX Public Lab

N/A
N/A
Protected

Academic year: 2021

Share "Setting up Radmind For an OSX Public Lab"

Copied!
7
0
0

Loading.... (view fulltext now)

Full text

(1)

Setting up Radmind

For an OSX Public Lab

Radmind consists of a set of about ten Unix Commands installed on both the client and server machines. A GUI application, called Radmind Assistant, provides a simplified interface for using these unix commands. As of now, Radmind Assistant does not yet support the initial setup of a Radmind Server so that this must be accomplished using the OSX Terminal utility to directly run radmind and other Unix commands. Once the Server is set up, Radmind Assistant can be used for the daily operation of Radmind.

Server

The Radmind Server can be any networked OSX machine. It will run the unix process, radmind, in the background. The server machine requires a large disk space to hold master copies of all the clients’ programs plus listings of these programs called “Transcripts”.

The client programs can be grouped in any way you want into loadsets. Usually, they are grouped according to function such as: CoreOSXSystem, MicrosoftOffice,

OfficeUpdatexx, FileMakerPro, etc. The file data for each loadset is stored on the server in a separate folder and it is stored with the same directory structure as the client. Each loadset has an associated “Transcript” (.T) file, which is just a listing of each file or directory found in the data folder for that group.

The Server also holds several Command (.K) files which are plain text files containing lists of Transcript file names in priority loading order. Finally, the Server holds one config file which is another plain text file associating client machines with specific Command files. The config file will connect a specific client IP number or group of IP numbers to a Command (.K) file so that the server knows what transcripts a specific client needs and in what order. With this setup the server can serve different client machines with different programs.

Client

The client is any OSX machine. It must be loaded with the 10 radmind unix commands. The Radmind Assistant is optional. The administrator has the option to run the radmind unix commands from scripts, without the aid of the Radmind Assistant. The client also holds copies of the transcript files used to update it.

(2)

When a client machine requires an update it starts by asking the server if there are any changes, additions, or subtractions to the transcripts it already has stored away. The transcripts are plain text listings of files so they do not get very large. If there are

changes it will download the new transcripts from the server. The server knows from its config file what command file to pull for this particular client. The command file then tells the server what Transcript files the client will be working from so it can send the right ones. The client then compares its actual files with those listed in the transcripts. A temporary file is built on the client listing all the differences and this is used to update the machine. Unlisted files are removed and new, or updated files, are downloaded from the server.

OSX Installation

The first step in building the lab is to load all the machines with the latest OSX system. Radmind needs an OSX system to run from. Here are the steps to set up OSX on all the client machines:

1. Install OSX on one client machine using the latest installation disks. Before installing the system, use the Disk Utility on the installation CD to partition the drive as you like. You may install as many of the iLife programs as you like, or add them later. What you install here will become the first Radmind Transcript called Core.T.

2. Run Software Update to make sure you have the latest updates to the system. 3. Download the application Carbon Copy Cloner from its website and install it on

the client machine.

4. Attach an external Firewire drive to the client and use Carbon Copy Cloner to clone your entire OSX system to the external drive.

5. Boot the other client machines from the Firewire drive and use the Disk Utility to partition the client drive as you like and then use Carbon Copy Cloner to load OSX onto the client’s drive.

Initial Radmind Server Setup

The Radmind Server must be loaded with the Radmind unix tools, a directory structure must be built to hold all the Radmind files, and a few control files must be built for the initial setup. Once this is done we can go back to one of the clients loaded with an OSX system and download it to the server along with a core.T transcript. All this is done with unix commands from the Mac OSX Terminal program. Once this initial setup is

completed, you can operate the Radmind either through the GUI, Radmind Assistant, or continue to operate directly through the radmind unix commands. Here are the initial server setup steps:

(3)

1. Download the Radmind Tools and Radmind Assistant from the Radmind website and install them onto the server. (The Radmind Assistant includes the Tools and a utility for installing them).

2. Open the OSX Terminal utility. Root access is necessary for operating the radmind unix commands. Type sudo –s followed by an administrator password to get root access. Be extremely careful from now on – you can do lots of damage with root access.

3. Check out where the Radmind Tools have been installed. The tools are located at

/usr/local/bin and the one “radmind” program is at /usr/local/sbin. There should be a new directory, /var/radmind (or /private/var/radmind). This is where all the radmind control and data files are normally kept. Note that /var and

/private/var are the same location because they are linked. Here are some commands you can use to look around - cd /usr/local/bin to change directory, ls –l to look at the contents of the current directory.

4. The directory /var/radmind (or /private/var/radmind) is normally where all the radmind files and data are kept, which includes the various configuration files, transcripts and loadsets of data. This can be an inconvenient location if you are using the server for other functions. This directory can grow very large since it will hold all the data from your client machines. You can relocate the radmind server files to drives other than the startup disk by setting up a symbolic link. Here is how you do it:

1. rmdir -r /var/radmind

2. mkdir /Volumes/DriveName/radmind

3. ln -s /Volumes/DriveName/radmind

/private/var/radmind

The first line removes the radmind directory from the main drive. The second line creates a radmind directory on a separate drive of your choice – replace “DriveName” with the name of the drive or partition you want to use. Note that the OSX unix system denotes other drives on your machine (other than the main root drive) as /Volumes/xxx. The third line creates a symbolic link so that whenever anything is suppose to happen in the directory /private/var/radmind

(or equivalently, /var/radmind) it is linked over to the radmind directory on “DriveName” instead. One caveat of linking to another drive is that you can now view all the radmind files from the OSX finder.

5. Next, various control files are created in the linked radmind directory just created.

1. mkdir /var/radmind/command

(4)

3. pico /var/radmind/config

The first line creates a directory that will hold all the .K command files. Note that the actual location of the directory will be on the linked drive as described above. The second line creates an empty .K command file. Give it a name of your choice. The third line uses pico to create a configuration file. You could also use any plain text editor. Enter a single command line into the file such as

166.166.166.<52-59> CommandFileName.K”. The numbers specify the

IP addresses of your client machines. The CommandFileName is a name you choose for the empty command file just created in step 2.

6. All the initial control files and directories have now been set up on the server. The next step is to go to the client machine and set it up to send a core transcript and its associated loadset data to the server. The server program that acts as a traffic controller for client data is /usr/local/sbin/radmind. This is a process that runs in the background on the server machine and can be started from the Terminal with the command:

sudo /usr/local/sbin/radmind

Initial Radmind Client Setup

The Radmind Server receives all its transcripts and data loadsets from a client machine. At this point, the client machines have been loaded with a clean core of OSX. Here are the steps needed to create a core transcript and upload it and the data to the server.

1. Download the Radmind Tools and Radmind Assistant from the Radmind website and install them onto one of the client machines. (The Radmind Assistant

includes the Tools). The Radmind Assistant can be placed in an administrative account so that it is hidden from the regular users.

2. The directory /private/var/radmind should now exist on the client. Open up the Terminal Utility Program and enable root access with the sudo –s command. Check that /private/var/radmind exists and then run the following command to keep this directory out of sight from the regular users.

chmod 700 /private/var/radmind

3. Build a client directory with:

mkdir /private/var/radmind/client

4. Next step is to create a negative transcript. A negative transcript lists those files which should exist on each client machine but not necessarily be identical on each

(5)

client. These are files that the server is told to ignore except for confirming their existence on the client. No loadset data is stored for these listed files.

The Radmind website offers a sample negative transcript for the latest OSX system. Download this transcript and place it in your Documents folder. Use TextEdit to view it.

It is suggested in the documentation that the /User directory be part of the negative transcript. The /Users data sets up user preferences, elements in the Dock, and files appearing on the desktop. In a lab setting, all of this should be controlled by the Radmind server. I would suggest the following approach: Keep the /Users line active in the negative transcript while setting up the core loadset. However, after the core loadset is uploaded, comment out the /Users line from the negative transcript, then build a separate Users.T loadset from just the /Users data. In future loadsets it is easy to edit out any /Users transcript lines, saving them to update the Users.T transcript.

In the negative transcript, the data following the file names can be checked and corrected by running a unix command for each file name. In this way also, additional lines can be added to the negative.T. The entries must be in Unix alphabetical order; that is, all the uppercase letters in alphabetical order followed by all the lowercase letters.

/usr/local/bin/fsdiff –1 –c sha1 [filename or directory]

(note the “1” in “-1” and “sha1” is the numeral 1)

After checking and editing the negative.T file, move it to the radmind client directory.

mv Documents/negative.T /private/var/radmind/client

The transcript can also be viewed and edited using the Radmind Transcript Editor found in the Radmind Assistant GUI.

5. The next step is to create a .K command file with the negative.T file as an entry. 1. touch /var/radmind/client/command.K

2. pico /var/radmind/client/command.K

3. cat /var/radmind/client/command.K

The first step creates an empty command.K file. Use pico to enter the one line “n negative.T” in the command.K file. Use cat to check your results.

6. Create a base.T transcript with the following line. It should take some time to run.

(6)

usr/local/bin/fsdiff -C -c sha1 -o /var/radmind/client/base.T

7. We are now ready to upload the base.T loadset to the server. You will need to know the IP address of the server.

/usr/local/bin/lcreate -h [server IP address] /var/radmind/client/base.T

This will be very verbose, listing every file that is uploaded to the server. If there is a “checksum does not match” error for a specific file, you must either delete the file, add it to the negative transcript, or keep it and rerun the fsdiff command in the previous step after deleting the /tmp/.file/* and /tmp/transcript/* files in the radmind folder on the server.

8. If the last step completed successfully, you should now be able to see the core.T transcript and all its actual data on the server, in the radmind folder, in the “tmp” folder. We also need to transfer the negative.T transcript to the server with the following command:

/usr/local/bin/lcreate -N -h [server IP address] /var/radmind/client/negative.T

In this case, only the transcript file is uploaded. No data from the files is sent since this is a negative type transcript.

Server Setup from Radmind Assistant

From this point on it is easier to use the Radmind Assistant

GUI application to finish the server’s initial setup. Read through the documentation on the Radmind Assistant to get more information on the following procedures.

The Radmind Assistant includes a Server Manager in one of its menus. Open the Server manager. Three windows will appear after you give your administrator password: A listing of the config file built in step 5 of the server section; a double paned window listing .K Command files and their associated lists of transcripts (the command file you created in step 5 should appear without any listed transcripts); and finally, a window listing all the various transcripts. This last window should be empty except for a bottom section called the Loadset Drawer containing the recently uploaded core.T and negative.T transcript files. These two transcripts need to be Verified (or Updated) before being placed in the upper part of the window as available transcripts. This operation also moves the actual files out of the /radmind/tmp location to transcript and data directories in the radmind folder.

(7)

Select the Command file in the second window and drag the core.T and negative.T files from the third window onto the right pane of this second window. Save the result. This will add the names of the two transcripts to the Command file.

Transcript files from the transcript window can be editied from the Radmind Assistant by bringing up the Transcript Editor. Do this by Control clicking on a transcript and

selecting Editor from the menu that appears.

At this point you may want to edit the negative.T transcript and comment out the /Users line as previously discussed. You would then go back to the client machine and run the Radmind Assistant Update routine to create a Users.T transcript and loadset. Be sure and look at the resulting transcript before uploading it to edit out any lines that are not /Users. This same process is repeated each time you add a new program or set of programs to a client machine.

John Talbert

TIMARA Department Oberlin Conservatory August 31. 2004

References

Related documents

In this case, a Catholic priest is able to establish religious authority with new contacts in a new media environment and maintain religious authority by using Facebook to

This research study examined the effectiveness of the Sistas Accessing HIV/AIDS Resources At a click (SAHARA) computer-based, behavioral prevention intervention with a population

incident management, change management, release management, problem man- agement, and asset management can all make use of key information tracked by configuration management.. As

EXHIBITOR MANUAL  

I understand and agree that the granting of this license requires my compliance with all applicable City of Birmingham Tax Code provisions, and state laws, as well as with

An analysis of the economic contribution of the software industry examined the effect of software activity on the Lebanese economy by measuring it in terms of output and value

• CCAR 2011, has been followed with CCAR 2012 and CCAR 2013 – in alignment with the Dodd Frank Act’s requirements for annual capital adequacy assessment and stress

Exercise is Medicine® Australia Locked Bag 102, Albion DC QLD 4010 Phone: 07 3862 4122 | Fax: 07 3862 3588 | Email: info@exerciseismedicine.org.au Role of an AEP The most