Bacman is a program package created to automize the cleaning of the disks. The expression 'automize cleaning' does not sound so desirable to have on a cluster system. But as the disks get full and old things have to be cleaned away, this is necessary if a number of different users all shall work under the same user-name 'VSAT'. In order to assure that no file gets deleted by mistake, the program has a number of safety latches to pass before a file is erased:
The general procedure of cleaning a disk first involves to make a backup of it. Then a list is generated of all files that have been backed up. This list should then be shown to all users so that they can mark which files or directory they want to save. There also exists a permanent protection file that contains names of files that never should be deleted. To clean the disk the exabyte tape corresponding to the backup list has to be inserted in the exabyte station.
Then BACMAN starts a full restore of the tape onto a scratch area. If and only if a file is successfully restored and exists and is NOT marked in the backup list it will be deleted from the directory tree. A person then has to do many mistakes before anything unwanted should be erased. Even if this should happen it is easy to restore it again with the program Sackman.
Backup and cleaning of a disk should only be done when it is 95% full and at most twice per year. When it is time for cleaning all VSAT personnel should be informed two weeks ahead, so they have some time to mark the files or directories they want to save. They should also receive a full directory tree of the disk, with information about the size and number of files of each subdirectory. They should be given a copy of the permanent protection file, so there is no need to mark things that are already protected.
The permanent protection files and the files for marking are all located in the input directory. The permanent files should be altered only by the VSAT shifter whereas the others should be open for anyone to mark. To make all this easy for the shifter he will receive mails from THOR on exactly what to do and the information that is needed. Bacman consists of a number of small programs as well as a number of input and output files. Most of these are hidden from the shifter and he should not need to worry about them, but a short review is given here. A description of the input an output files can be found in APP A.2.
The program Conv.exe simply converts the format of the input protection files to a proper one. It generates two output files - Protect.txt and Permanent.txt. These files are then read by Ghost.exe, which automatically marks the files in Protect.txt which exist in Permanent.txt. It also sorts the Permanent.txt so that the files appear in the right order.
Then Bacman executes a program called Sep.exe, which first separates the filenames from the directory names. It also marks all files in a directory if the directory itself has been marked. Two new files are generated from this program - lfile.tmp and sfile.tmp. Sfile just contains the filenames(without directory path) of all the files in the backup list. In Lfile the files exist with their full directory names and have the prefix 'PROTECT:' if they are marked for protection.
Before Bacman starts cleaning away the unprotected files, it starts a full restore of the tape that is inserted in the tape station. This is done by Full-restore.com which is run in batch mode at the same time as Bacman. Once a file has been restored successfully it is automatically removed again by Bacman. This is done just to check that nothing has gone wrong with the backup. When Bacman is finished it also searches for empty directories which are deleted. A log file is generated which THOR then mails to the shifter, so he can follow that nothing has gone wrong.