Could you please tell me the reason for downloading files with checksum names ? for checking Sha1 there could be other way as well … I didn’t get the actual purpose of that … please let me know if you can help ?
Which statement in my action list actually copies it to the end point ? Or is it done itself ? I had a impression that download itself does that i.e it download and copies it to the endpoint
When Sha1 is matched of downloaded file ? After copying it to end point (on client machine ) or when it is cached in BES server ,but before copying it to the client ?
Where in my end point this file gets copied ?
I observed 2 locations for 2 different files :-
a) C:\Program Files\BigFix Enterprise\BES Client__BESData__Global__Download\Updates for Windows Applications\91\named\installer.exe
b) C:\Program Files\BigFix Enterprise\BES Client__BESData\actionsite__Download\installer name
In case a ) I run a fixlet which was pre-defined in patchmanagement domain
In case b) I run a custom action which only has download command : download http://***/installer.exe
both installer.exe are same file (install_flash_player .exe)
I observed that if I download something(using custom action) for one computer and then again I apply the same download command then it overwrites the previous file in sha1 directory . Is there any specific reason why it does that ? I mean why it overwrite previous file ,if it was already downloaded then it should have used already existing file ?
PS: here I have created a custom action and just written a download command for flash player
After completing a fixlet from patch management domain (for flash player) I found a file with name 58412bcc83e349be50cafe0e1c46e19088620866 ( sha1 of .exe file and same name as found under sha1 directory of BES server) in my client under C:\Program Files\BigFix Enterprise\BES Client__BESData__Global__Cache\Downloads folder… This file can be renamed to .exe file and it could be used for installing flash player …Could you tell me the reason and purpose of that , why to keep that file with SHA1 name after installing it on that end point(client) ??? I tried other fixlet as well , every time a file with sha1 name remains on my client.
The files need to be named something that doesn’t conflict names with other files. Using the hash as the file name is a simple way to do this. (Note that this is not related to security, the actual hash of the file is checked regardless of the name).
Yes. The download or prefetch commands tell the agent to get the file from the relay (using the agent’s download manager).
The file should start in the first location a) during the download and then move to location b) after the download completes and the action starts.
The folder is always cleared out after an action. The reason for this is that the action might have created other files in the folder or modified the file or all sorts of reasons. So for consistency, the folder is always cleared after each download. Note that there is a client cache and so the file isn’t necessarily re-downloaded if the client has it cached.
That is the client cache folder. The agent will always cache the previous file it downloaded. If the file is smaller than the agent cache size (default 20 MB but configurable), then the file will stay around indefinitely. If the file is larger than the cache size, the file will be cleared the next time the agent restarts or the next time the agent runs an action.
I have some more questions after reading your answers…
Question for answer 1:
I don’t think 2 files which BigFix download can have same names. If two files have same names then they must be same files(I mean same installer of file for same purpose) . Could you please give me an example to show which two files have same name … and it is downloaded by Bigfix ?
Question for answer :2
So when I write download in my action … then it actually downloads the file into BES server and also ask Relay’s download manager as well as client’s download manager and copy that file ? And Relay copies it first then client ?
Question for answer :3
I am not clear about when Sha1 is checked … This link was about how relay and server work … could you please help me ?
Question for answer :4
why this happens ? I mean , folder where installer gets downloaded ( (a) locaion) it can be installed from that locaion as well …
Question for answer :5
I was reffering to BES server folder where files are downloaded … Is this folder also gets cleared after an action ? In my BES server it is not happening actually … could you please confirm ?
Question for answer :6
Is there any specific reason for client to cache files after installation as well… ? If a .exe file is installed then it can be removed from end point …
Tell me exactly where you see this and I will answer your question. In general, you can have the same file name for 2 different files. If you are referring to the name we assign a file when you upload it with the software distribution wizard, a simple example is what if you upload a file, change the file and re-upload it with the same name?
Yes. The server and all relays cache the files along the way to the agent.
Every component checks the sha1 of each download when they get the file (server, relays, agents).
There is a specific reason for this that I will explain, but honestly, I am not sure why you are asking (of course, there are multiple implementation options). The basic reason we download to one location and then move it is to allow you to refer to a relative path “__Download” to access your files while allowing the agent to download multiple files at once.
The file in the sha1 folder on the server is not cleared… Can you tell me why you think that?
The agent keeps a cache so that if you run the same files repeatedly, then it doesn’t have to be re-download it in certain cases. The default cache size is 20 MB and if that is too much disk space for whatever reason, you can make the cache size 1 MB (which basically disables the cache).
I am ok with Q2 now … Lets discuss about others little more …
When I run a fixlet from BES console , which downloads a file , then first action command is :
“download http://****/installer.exe” . It downloads installer.exe inside “C:\Program Files\BigFix Enterprise\BES Server\wwwrootbes\bfmirror\downloads\sha1” directory of my BES server , right? This file name is SHA1 checksum . So my question is why this name is Sha1 checksum and not actuall file name ? And if you say that it is because of unique names then please tell me the example ,from where we can download 2 files with same name ,but different purpose ?
2-- done
I have a if statement in action tab :
continue if {(size of it = 24265736 and sha1 of it = “16a354a2207c4c8846b617cbc78f7b7c1856340e”) of file “dotnetfx.exe” of folder “__download”}
So where this statement gets executed ? on server or on relays or on clients OR on every component that gets this file.
PS : I am assuming after successful completetion of first action i.e download , the downloaded file is cached into relays and clients
I was just curious to know thats why I ask that… ok so you mean that agent can use a file , and download a different file simultaneously ? could you please explain more about relative path __Download
I am saying that because I have executed 3 fixlets 3 days back… and all three files with name as their SHA1 checksum resides inside “C:\Program Files\BigFix Enterprise\BES Server\wwwrootbes\bfmirror\downloads\sha1”
6 . only reason I can think for running the same installer again is when my installation fails first time because of some issue. Could you give more points ?