How to create a Special File Overload

By: Richard Glaser - Revised: 2006-09-18 richard

Introduction

A special file is a file system object that is host specific like a license file for an application, etc. that is tied to a specific machine. To create a special file overload, the client side process is identical to creating a single file positive overload.

Create Overload of Single File

You can use the radmind command line or Radmind Transcript Editor to create a transcript of a single file.

Using fsdiff command...

fsdiff -c sha1 -1 /path/to/file > /path/to/transcript.T

The "-1" option outputs a single transcript line for a given file.

Using Radmind Transcript Editor:

Again, you simply drag the file to the Radmind Transcript Editor window.

Radmind Transcript Editor - Add Single File

Upload Overload
Then upload this single file overload to the radmind server, again you can use the Radmind Assistant or command line tools.

Using lcreate command...

lcreate -c sha1 -h my.radmind.server.edu /path/to/transcript.T

Using Radmind Assistant...

First, Select Create New Radmind Loadset...

Radmind Assistant - Create New Loadset

Next, click "Continue" button...

Radmind Assistant - Prepare New Loadset

Next, click "Continue" button...

Radmind Assistant - Create New Loadset #2

Next, click "Skip" button...

Radmind Assistant - Upload New Loadset

Next, click the "Choose Transcript..." button and select your transcript you created above using the Radmind Transcript Editor, which contains the single file. Then click "Continue" button.

Unless you have errors, this overload should be uploaded to your radmind server.

Special File - Server Steps

Currently, the Radmind Server Assistant doesn't have support for handling special files. So, until it is updated, you will need to do the rest of the process from command line.

On your Radmind Server...
Depending on how you are identifying your clients, certificate, hostname or IP address, you will need to create the following path for your client for the special file.

If you are using certificates...
mkdir -p /var/radmind/special/certificate_name

If you are using hostnames...
mkdir -p /var/radmind/special/hostname

Or if you are using IP Addresses...
mkdir -p /var/radmind/special/IP_address

Next, you need to create the path to your special file. For example, if I was create an overload for the "Adobe Registration Database" the path would be:

/Library/Application Support/Adobe/

So, for example, if I was using IP Addresses to identify clients, I would have the following path...

/var/radmind/special/[IP Address]/Library/Application Support/Adobe/

Next, move the uploaded special file transcript into this directory...
 
mv /var/radmind/tmp/transcript/special.T /var/radmind/special/[IP Address]/path/to/special/file/

Next move the associated special file into this directory...

mv /var/radmind/tmp/file/special.T/path/to/special/file /var/radmind/special/[IP Address]/path/to/special/file/

Note, the special transcript name should use the same name but with the extension ".T". Without this transcript, the special file will get the default owner, group and permissions (i.e. root, wheel and 0444) when distributed to your client.

Lastly, you need to add a special file entry to the clients command file...

p base.T
n neg.T
s /path/to/special/file

Note, the special entry in the  command file can go anywhere in the command file, but it always gets highest precedence.