Is there a way to extract a file from backup sets permanently? I don't want to be able to recover the file ever but can't lose the older backups.
There is no way of deleting a file from a backup set. This is per a legal order? Even if this were possible, I would be careful about the legal ramifications involved in removing information.
The only workaround I know would be to do a re-directed restore of your data files in that backup set. Then delete the desired file, or create a backup job with the proper exclusion, and then re-backup all the files. Of course, this will now appear to be a much newer backup than the original. Then the original backup could be destroyed or the tape overwritten...
For a small number of backups, this might be worth doing. If you have a large number of backups to clean, this would be very time consuming.
You should figure out from your legal team, what are the true reasons for WHY you retain all of your backups. More often than not, people confuse backup with archive. Of which, BackupExec is for one, and not the other.
The fact that you retain your backups for a long period of time, means you're keeping an archive. You should find out the real reasons for this, and use the appropriate applications for it.