Hi,

we are currently deploying OpenAFS here at the university and also are stuck with TSM for backups. Currently there doesn't seems to exist any good AFS backup client for TSM, and just storing volume dumps is not too appealing, both due to backup storage space and
simpleness in restoring single files.

So I have written a client that uses the TSM API for backup. It reads the data directly out of a volume and store all files in TSM as objects, while preserving ACLs, mountpoints etc. Doing it this way will let AFS backups use the policies for objects, and also restores can
be performed via dsmc if necessary.

There are a few nits, though, that I haven't found a good way to handle. Any suggestions
are welcome :-)

First is the storage of AFS data inside of TSM. TSM has three identifiers for an object:
- filespace (typically mount point)
- High-level name (path inside mount point)
- Low-level name (filename)
Ideally the filespace should be the volume name, but TSM gets _really_ slow if there are too many (a few hundred) filespaces. Currently I just give it the cellname, and stores
the volume name in the HL name (like /volume/path-in-volume).  Other ideas?

Second is the storage of attributes and ACLs. There is a 255-byte space available for storing object attributes connected to each object. This is not enough to store the ACLs as clear-text, so I have to do pts lookups to translate them to their internal numbers and store as such in the attribute block. Any better ideas of how to do this?

So, if someone beside us need to use TSM for AFS and are interested in using this
client, feel free to give comments/ideas/whatever... :-)

-- ragge
_______________________________________________
OpenAFS-info mailing list
[email protected]
https://lists.openafs.org/mailman/listinfo/openafs-info

Reply via email to