Cannot empty _Download directory

(imported topic written by smill59)

We have some distributions that have failed and in the logs it says “Cannot empty _Download directory”. Which directory needs to be emptied, and is that on the relay on the client? Also, what causes this?

(imported comment written by jr6591)

I have seen this error previously and how I got around it was to stop the BES client and then manual delete the _BESdata folder. In a few instances, the PC had to be rebooted (no need to delete the directory if you reboot). I have noticed this occuring when an action is either in an incomplete state or in a loop.

1 Like

(imported comment written by BenKus)

To add to this thread:

When the BES Agent runs the “download” command, it puts the files in the __Download folder of the Fixlet site. If a file is left open for any reason, you can’t delete the folder (similar to if you open a file/folder in a cmd window and then try to delete the folder).

The BES Agent will try to clear this folder when is restarted or when a new action is run.

Ben

(imported comment written by TommyG91)

This is a problem for us. I would like to know how you work around this. This happens to me a lot when I run the xdat using the “UPDATE: Outdated McAfee Virus Definition Detected - McAfee VirusScan 8i/8.5i/8.7i”. What happens is the xdat tries to install and it left open until it is killed. When I log on to the client, I can see the XXXxdat running in task manager.

I cannot push ANY more files to the client. All actions show, “pending downloads”. As soon as I kill the running xdat, the bes client is able to delete the file and push new files to the client.

How can I work around this problem? Should I try moving the file to another directory before running it? Any other suggestions?

(imported comment written by BenKus)

Hey TommyG,

It sounds like the dat update is hanging and the agent is waiting for it to finish (because the update is run with a “wait” command)… To fix this issue, we need to figure out why the dat update is hanging… does it do it all the time?

Ben

(imported comment written by TommyG91)

Nope, not all the time. But with windows, this is bound to happen now and then. I have also found the problem on a few computers I tried to patch. The windows patch exe was running in task manager. This is not really a “bigfix” problem, but what IS a bigfix problem is when I can’t push another file.

Thanks Ben!

After a painful process, I found that the folder was locked in run32.dll from the BigFix client. This was with the client stopped, so the process was orphaned and needed to be killed.

I hope this wasn’t stuck for 9 years :slight_smile:

In any case, rundll32 would have been triggered by whatever content was in the action you ran, to be clear this isn’t the BES client itself locking the folder.

To troubleshoot, the ‘handles.exe’ utility from Sysinternals (https://microsoft.com/sysinternals) is very “handy” for identifying which process has any given folder/file locked, and the same tool suite’s ‘pskill’ is handy for killing the offending process.

Per the release announcement for BigFix 9.5.11 earlier this week, there is now a native method for the BESClient to kill child processes after waiting for a time-out period. I’m excited to try out this feature, it’s a feature for which I’ve lobbied. RFE’s work!

4 Likes

Hi Team,

Just to update on this issue, we faced an issue where we had deployed a baseline but on few of our Windows server the download was stuck on pending downloads. Thus, to identify which process id running in the background and is creating an issue in our environment we had a policy where we cannot download third party tool (MS Process identifier). We got an alternative option of using the analysis which will show you the process which are utilizing _download folder of the client. We have successfully tested this analysis, where we were able to identify the process and kill it.

(name of it |“n/a”, process id of it as string |“n/a”, creation time of it as string|“n/a”, pathname of image file of it |“n/a”) of processes whose (pathname of image file of it starts with folder “__BESData” of parent folder of client as string)

You can get more details from the following KB -

2 Likes