Cyclone About

Please contact me if you are using/interested in using it! cyclone@ 

=What is it=

Cyclone is a high speed imaging system, made up of several parts. Click the link to find out more details about each part.
 * The server hosting the images / drivers / web server / logging
 * The client imaging OS (tiny linux) that gets booted on the target machine wanting to be imaged with its final OS
 * The final OS images
 * The scripts that run on the client running the imaging process
 * The drivers (from driverpacks.net) inserted into the final OS to match it's hardware, if running in that mode
 * The scripts that run on the client in the final operating system to tweak it as desired

Design Goals

 * As automated as possible, in every way.
 * Run at the maximum wire speed available to it, (but it could very easily be throttled if you wished from the client or server end)
 * Highly configurable. Every aspect of it is changeable/customisable
 * Run over the internet
 * Simple to rework/customise
 * Quick and simple to update drivers

Features

 * It will run across the internet using only HTTP traffic (port 80). You could image a pc, in a remote location, with no user interaction.


 * Secure, the server only needs web traffic allowed as if it was a normal run-of-the-mill web server.


 * It runs on Linux and is completely free


 * The server can be anything you already have, needs minimal hardware - it could even be an old laptop.


 * The syslinux menu system is auto generated from the database


 * To add new images or schemas is done via the database so you dont need to worry about breaking the script editing thing


 * It is currently designed to image machines with Windows XP or Windows 7 but could just as easily do anything else.


 * It images the machine with a final operating system either using a
 * universal image - drivers are automatically pulled down that match the client machines hardware, on the fly, without any prior knowledge as to the client machines hardware.
 * automatically matching a pre-made machine image to a machines hardware
 * forcibly specified.


 * Client runs using simple to edit bash script, the post OS (Windows) simple to edit batch scripts.

Auto Label Printing
A Dymo labelwriter printer is hooked up to the server via USB and running though CUPS. The client sends out a little LPR job during the imaging process to it which prints a custom label with machine identification, MAC address etc and a QR barcode encoding all the details (for quick physical auditing in the future). (This is the only feature not using HTTP port 80, but printing a label is only used locally to the server so I did not change it. Ways around this - The logging could be modified to do this so the print job is generated on the server from some PHP. Alternatively the client could send the print job to a specified local printer)

Future Additions
Security tagging - write original machine ID, company address or special code to the space between the first sector and the first partition & the final sector of the disk which will be unused and unlikely to be erased even on a repartition and reformat. It could then be easily proven that the property belonged to you. This could be easily achieved by adding a few lines to the script...