There are few other KB's (applicable since NS 6 version) which are still applicable including:
- 178503 "How does a Package Server determine when to delete a package?"
- 181146 "What is the option “Delete package files if unused on the Altiris Agent” for?"
- 181052 "What does the “Delete Package files if unused on the Package Server” setting do?"
How are packages distributed to a Package Server (PS)?
Each package is automatically distributed to package servers as you define them. The distribution options are configured on a per-package basis with the following options (or you can select no distribution at all):
A) Automatically distribute to all Package Servers (default)
B) Distribute to manually selected Package Servers.
C) Auto-distribution with manual prestaging.
When are packages sent to Package Servers?
Packages are not actually "always" sent to package servers, but are only sent when needed. This saves space on the PS as well as reduces the use of bandwidth. A package is auto-assigned and then sent to a PS in the following situations:
1) The package is used by a legacy SWD policy assigned to a client located at the same site where the PS is present.
2) The package is requested by a client from the same site and no suitable codebases are located for this package. (This case should cover situation when any task (eg DS) is making Altiris Agent request a package.)
After this, the following settings begin to take effect:
The first option (Remove automatic site assignments if they are unused for) specifies how long the package is assigned to the Site Server, and it is OFF by default.
The second option (Delete package files if they are unused for) specifies how long the package actually remains on the package server. Once no policies are assigned, and/or no tasks assigned, the clock "begins" for removal of a package. Any assignment resets this clock. After the specified time, the package will be removed from the package server until requested again (scenario #2 above).
In addition to the auto-assign scenarios above, Option 1 can be triggered by any item which has the correct association with package and is enabled and is assigned to resources via a resource target where the assignment is registered in the normal fashion. Specifically, a software delivery task which is assigned to a resource target can trigger option 1 if the timing occurs correctly.
Unique Scenarios & Work-arounds:
There are a few situations that may require unique handling of packages that are worth mentioning:
- Some packages you may want to always be available on package servers. A great example of this are Deployment Solution images, which are very large, and you more than likely would not want to replicate in real-time over even moderately slow links. Especially not multiple times! In these scenarios, each package has it's own "override" the settings displayed above. You can set Deployment and "similar" packages to "Never Delete" in the package definition itself.
- Some packages may need to be prestaged long in advance for an unspecified time. One way to manage this is to build a policy for the package and schedule delivery out to a distant time, maybe a year in the future. This will ensure replication to the PS happens, and the package kept for a while. Then, when you're ready for the actual roll-out, create a new policy, or task. When you are finally done, cancel the long-term policy, and let it clear off of the package servers.